I am trying to build pix_opencv on MinGW and I have everything
working, it builds and links against the opencv dlls, but I can't get
it to link against the Gem.dll. Anyone have any ideas about this?
Here's the linker errors:
g++ -DPD -O2 -funroll-loops -fomit-frame-pointer -ffast-math -Wall -
W -Wno-unused -Wno-parentheses -Wno-switch -DGEM_OPENCV_VERSION=\"0.1
\" -g -mms-bitfields -DMSW -DNT -I../../pd/src -I. -I../../Gem/src -
I../../pd/src -Iopencv/include/mingw/opencv -o pix_opencv_edge.o -c
pix_opencv_edge.cc
gcc -shared -o pix_opencv_edge.dll pix_opencv_edge.o -L../../pd/bin -
L../../pd/obj -lpd -lkernel32 -luser32 -lgdi32 -lm -L/c/progra~1/pd/
extra -lGem -Lopencv/bin -lmgwcv100 -lmgwcvaux100 -lmgwcxcore100
pix_opencv_edge.o: In function `ZN7GemBase10stoprenderEv':
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`__gxx_personality_sj0'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`GemPixObj::GemPixObj()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`GemBase::~GemBase()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`vtable for GemPixObj'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`imageStruct::~imageStruct()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`GemBase::~GemBase()'
pix_opencv_edge.o: In function `Z22create_pix_opencv_edgev':
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/pix_opencv/
pix_opencv_edge.cc:20: undefined reference to `__gxx_personality_sj0'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/pix_opencv/
pix_opencv_edge.cc:20: undefined reference to `operator new(unsigned
int, void*, void*)'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/pix_opencv/
pix_opencv_edge.cc:20: undefined reference to `CPPExtern::m_holder'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/pix_opencv/
pix_opencv_edge.cc:20: undefined reference to `CPPExtern::m_holdname'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/pix_opencv/
pix_opencv_edge.cc:20: undefined reference to `operator new(unsigned
int)'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/pix_opencv/
pix_opencv_edge.cc:20: undefined reference to `CPPExtern::m_holder'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/pix_opencv/
pix_opencv_edge.cc:20: undefined reference to `CPPExtern::m_holdname'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/pix_opencv/
pix_opencv_edge.cc:20: undefined reference to `operator delete(void*)'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/pix_opencv/
pix_opencv_edge.cc:20: undefined reference to `__cxa_begin_catch'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/pix_opencv/
pix_opencv_edge.cc:20: undefined reference to `vtable for GemException'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/pix_opencv/
pix_opencv_edge.cc:20: undefined reference to `GemException::report()
const'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/pix_opencv/
pix_opencv_edge.cc:20: undefined reference to
`GemException::~GemException()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/pix_opencv/
pix_opencv_edge.cc:20: undefined reference to `__cxa_end_catch'
pix_opencv_edge.o: In function `ZN15pix_opencv_edgeC2Ev':
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/pix_opencv/
pix_opencv_edge.cc:31: undefined reference to `__gxx_personality_sj0'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/pix_opencv/
pix_opencv_edge.cc:31: undefined reference to `GemPixObj::GemPixObj()'
pix_opencv_edge.o: In function `ZN15pix_opencv_edgeC2Ev':
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`GemBase::~GemBase()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`vtable for GemPixObj'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`imageStruct::~imageStruct()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`GemBase::~GemBase()'
pix_opencv_edge.o: In function `ZN15pix_opencv_edgeD2Ev':
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/pix_opencv/
pix_opencv_edge.cc:50: undefined reference to `__gxx_personality_sj0'
pix_opencv_edge.o: In function `ZN15pix_opencv_edgeD2Ev':
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`vtable for GemPixObj'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`imageStruct::~imageStruct()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`GemBase::~GemBase()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`GemBase::~GemBase()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`GemBase::~GemBase()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`vtable for GemPixObj'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`imageStruct::~imageStruct()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`GemBase::~GemBase()'
pix_opencv_edge.o: In function `ZN15pix_opencv_edgeD1Ev':
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/pix_opencv/
pix_opencv_edge.cc:50: undefined reference to `__gxx_personality_sj0'
pix_opencv_edge.o: In function `ZN15pix_opencv_edgeD1Ev':
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`vtable for GemPixObj'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`imageStruct::~imageStruct()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`GemBase::~GemBase()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`GemBase::~GemBase()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`GemBase::~GemBase()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`vtable for GemPixObj'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`imageStruct::~imageStruct()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`GemBase::~GemBase()'
pix_opencv_edge.o: In function `ZN15pix_opencv_edgeD0Ev':
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/pix_opencv/
pix_opencv_edge.cc:50: undefined reference to `__gxx_personality_sj0'
pix_opencv_edge.o: In function `ZN15pix_opencv_edgeD0Ev':
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`vtable for GemPixObj'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`imageStruct::~imageStruct()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`GemBase::~GemBase()'
pix_opencv_edge.o: In function `ZN15pix_opencv_edgeD0Ev':
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/pix_opencv/
pix_opencv_edge.cc:58: undefined reference to `operator delete(void*)'
pix_opencv_edge.o: In function `ZN15pix_opencv_edgeD0Ev':
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`GemBase::~GemBase()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`GemBase::~GemBase()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`vtable for GemPixObj'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`imageStruct::~imageStruct()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:46: undefined reference to
`GemBase::~GemBase()'
pix_opencv_edge.o: In function `pix_opencv_edge_setup':
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:106: undefined reference to
`GemBase::obj_setupCallback(_class*)'
pix_opencv_edge.o: In function `pix_opencv_edge_setup':
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemPixObj.h:113: undefined reference to
`GemPixObj::obj_setupCallback(_class*)'
pix_opencv_edge.o: In function `ZN7GemBase10stoprenderEv':
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`GemPixObj::render(GemState*)'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`GemPixObj::postrender(GemState*)'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`GemBase::setModified()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`GemBase::isRunnable()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`GemPixObj::processImage(imageStruct&)'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`GemPixObj::processRGBAMMX(imageStruct&)'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`GemPixObj::processRGBASSE2(imageStruct&)'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`GemPixObj::processRGBAAltivec(imageStruct&)'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`GemPixObj::processGrayMMX(imageStruct&)'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`GemPixObj::processGraySSE2(imageStruct&)'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`GemPixObj::processGrayAltivec(imageStruct&)'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`GemPixObj::processYUVMMX(imageStruct&)'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`GemPixObj::processYUVSSE2(imageStruct&)'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`GemPixObj::processYUVAltivec(imageStruct&)'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`vtable for __cxxabiv1::__si_class_type_info'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`vtable for __cxxabiv1::__si_class_type_info'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`vtable for __cxxabiv1::__si_class_type_info'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`vtable for __cxxabiv1::__class_type_info'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`GemBase::realStopRendering()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`GemPixObj::setPixModified()'
c:/msys/1.0/home/pd/auto-build/pd-main+libs/externals/
pix_opencv/../../Gem/src/Base/GemBase.h:62: undefined reference to
`vtable for __cxxabiv1::__class_type_info'
collect2: ld returned 1 exit status
make: *** [pix_opencv_edge.dll] Error 1
rm pix_opencv_edge.o
.hc
------------------------------------------------------------------------
----
Access to computers should be unlimited and total. - the hacker ethic