Hi Marten,
I want to test the new rasp-branch on my mvp-box.
I get this error:
/usr/local/src/vomp/crosstool/gcc-3.4.5-glibc-2.2.5/powerpc-405-linux-gnu/bin/powerpc-405-linux-gnu-g++ -O3 -Wall -Wshadow -D_GNU_SOURCE -I../jpeg/jpeg-6b -DVOMP_PLATTFORM_MVP -c -o osdmvp.o osdmvp.cc
osdmvp.cc:39: error: `OsdMvp' has not been declared
osdmvp.cc: In function `Surface* createNewSurface()':
osdmvp.cc:41: error: expected primary-expression before '*' token
osdmvp.cc:41: error: expected primary-expression before ')' token
osdmvp.cc:41: error: expected `;' before "new"
osdmvp.cc:41: error: `SurfaceMvp' has not been declared
make: *** [osdmvp.o] Fehler 1
Any Ideas?
Walter
Add
#include "surfacemvp.h"
after the first include line.
Marten
still the same.
/usr/local/src/vomp/crosstool/gcc-3.4.5-glibc-2.2.5/powerpc-405-linux-gnu/bin/powerpc-405-linux-gnu-g++ -O3 -Wall -Wshadow -D_GNU_SOURCE -I../jpeg/jpeg-6b -DVOMP_PLATTFORM_MVP -c -o osdmvp.o osdmvp.cc
osdmvp.cc:40: error: `OsdMvp' has not been declared
osdmvp.cc:40: error: expected unqualified-id before '{' token
make: *** [osdmvp.o] Fehler 1
In surfacemvp.h I can see only the class SurfaceMVP.
Apply the attached patch. This patch is in no way intended nor reviewed to be going into master of the raspi branch but you will be able to build a dongle.
@sirwio
Can you tell me, why you had to exclude vmedialist.o vcolourtuner.o vmediaview.o vvideomedia.o mediafile.o ?
I like to fix this.
I only wanted to remove this stuff for windows and raspberry, until someone ports it also to the new devices.
Marten
I just removed them since I noticed they were not present in the vompclient.git project. Did not even try compiling with them so its possible there was no need to remove them.
Ok with sirwio patch I am one step further.
/usr/local/src/vomp/crosstool/gcc-3.4.5-glibc-2.2.5/powerpc-405-linux-gnu/bin/powerpc-405-linux-gnu-g++ -O3 -Wall -Wshadow -D_GNU_SOURCE -I../jpeg/jpeg-6b -DVOMP_PLATTFORM_MVP -c -o vmedialist.o vmedialist.cc
In file included from vmedialist.cc:60:
vmediaview.h:120: error: `class WJpeg::JpegControl' has not been declared
vmediaview.h:120: error: ISO C++ forbids declaration of `ctl' with no type
vmediaview.h:136: error: expected `;' before "rotate"
vmediaview.h:137: error: expected `;' before "cropmode"
vmediaview.h:144: error: expected `;' before "ctl"
vmediaview.h:145: error: expected `;' before "ctl2"
vmediaview.h:146: error: expected `;' before '*' token
make: *** [vmedialist.o] Fehler 1
That was likely the reason why I did exclude vmedialist.o vcolourtuner.o vmediaview.o vvideomedia.o mediafile.o from the makefile then...
That propably my fault, I remove some functionaly from Wjpeg to make it better portable....
Anyway, just replace on these errors WJpeg with WJpegComplex.
Marten
Thanks for your help, but there are too much errors for my skills. Now I am stumbling around this. I have no clue about c++, would be better in perl. ;-)
/usr/local/src/vomp/crosstool/gcc-3.4.5-glibc-2.2.5/powerpc-405-linux-gnu/bin/powerpc-405-linux-gnu-g++ -O3 -Wall -Wshadow -D_GNU_SOURCE -I../jpeg/jpeg-6b -DVOMP_PLATTFORM_MVP -c -o vmedialist.o vmedialist.cc
In file included from vmediaview.h:33,
from vmedialist.cc:60:
wjpegcomplex.h: In member function `void WJpegComplex::setDimensions(int, int)':
wjpegcomplex.h:67: error: `area' was not declared in this scope
wjpegcomplex.h: In static member function `static void WJpegComplex::drawPixel(Surface*, WJpegComplex::Rotation, int, int, int, int, int, int, Colour)':
surface.h:101: error: `virtual void Surface::drawPixel(int, int, Colour&, bool)' is protected
wjpegcomplex.h:186: error: within this context
make: *** [vmedialist.o] Fehler 1
Walter
Edit: Ok new updates on git, will try this.
Edit2: same error with latest git
Walter: I'm pretty sure you didn't apply my attached patch correctly. When you tried compiling it you show output compiling vmedialist.cc - That is one of the files excluded from the compile in the attached patch.
Also when Marten applied some of the changes to the head of the branch a small mistake slipped through in the osdmvp.cc file. The createNewSurface method shall read:
Surface * OsdMVP::createNewSurface()
{
return (Surface*)new SurfaceMVP();
}
@sirwio
As Marten mentioned before, it would be fine if I could exclude nothing.