ArToolKit mit MinGW kompilieren



  • Hallo und erfolgreiches 2007,

    meine bisherigen Versuche, die "ArToolKit Library"
    in Dev-C++ oder Codeblocks über MinGW zu kompilieren, scheitern.

    hier ein Auszug meiner genau 501 Fehler.

    Compiler: Default compiler
    Building Makefile: "C:\ARToolKit\examples\exview\Makefile.win"
    Führt  make... aus
    make.exe -f "C:\ARToolKit\examples\exview\Makefile.win" all
    g++.exe draw_object.o exview.o  -o "exview.exe" -L"C:/Dev-Cpp/lib" -L"C:/ARToolKit/lib" -L"../../lib" -llibAR -llibARvideo -llibARgsub -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 
    
    Warning: .drectve `/DEFAULTLIB:"uuid.lib" /DEFAULTLIB:"uuid.lib" /DEFAULTLIB:"winmm.lib" /DEFAULTLIB:"opengl32.lib" /DEFAULTLIB:"glu32.lib" /DEFAULTLIB:"glut32.lib" /DEFAULTLIB:"LIBCMTD" /DEFAULTLIB:"OLDNAMES" ' unrecognized
    draw_object.o(.text+0x1c):draw_object.c: undefined reference to `__glutInitWithExit@12'
    draw_object.o(.text+0x3c):draw_object.c: undefined reference to `__glutCreateWindowWithExit@8'
    
    ...
    
    exview.o(.text+0x2e9):exview.c: undefined reference to `glDisable@4'
    exview.o(.text+0x8de):exview.c: undefined reference to `glClearColor@16'
    exview.o(.text+0x8ed):exview.c: undefined reference to `glClear@4'
    
    ...
    
    C:/ARToolKit/lib\libARgsub.lib(./Debug/gsub.obj)(.text+0x230):c:\artoolkit\lib\s:34: undefined reference to `_RTC_CheckEsp'
    C:/ARToolKit/lib\libARgsub.lib(./Debug/gsub.obj)(.text+0x247): In function `argInit2':
    c:\artoolkit\lib\s: undefined reference to `glutInitDisplayMode@4'
    C:/ARToolKit/lib\libARgsub.lib(./Debug/gsub.obj)(.text+0x250):c:\artoolkit\lib\s:1: undefined reference to `glutInitWindowPosition@8'
    
    C:/ARToolKit/lib\libARgsub.lib(./Debug/gsub.obj)(.text+0x262):c:\artoolkit\lib\s:2: undefined reference to `glutInitWindowSize@8'
    

    in VisualStudio.net funktioniert es.
    Unser Projekt muss jedoch mit einem OpenSource-Compiler erstellt werden.
    Wir machen damit unsere Masterthesis in Interaction Design und benötigen ein ArToolKit-PlugIn, das Daten über OpenSoundControl sendet.

    Vielleicht kann irgendwer helfen und mit mir Kontakt aufnehmen.

    Links:
    http://www.hitl.washington.edu/artoolkit/documentation/usersetup.htm
    http://www.hitlabnz.org/forum/archive/index.php/t-51.html

    vielen Dank!

    Norbert Riedelsheimer



  • und soweit bin ich mittlerweile in Codeblocks mit manueller MinGW Installation,
    nachdem GLUT und MinGW hier beachtet habe:
    http://mingw.org/MinGWiki/index.php/Glut?PHPSESSID=0f64793ea275571e93bc90ea4e0c67db

    kann jemand helfen?

    -------------- Build: Debug|Win32 in libARvideo ---------------
    Linking dynamic library: ..\..\..\bin\libARvideod.dll
    Creating library file: ..\..\..\bin\libARvideod.a
    Debug\videoWin32DirectShow.o: In function `ar2VideoOpen':
    C:/ARToolKit/lib/SRC/VIDEOWIN32DIRECTSHOW/videoWin32DirectShow.cpp:154: undefined reference to `CoInitialize@4'
    C:/ARToolKit/lib/SRC/VIDEOWIN32DIRECTSHOW/videoWin32DirectShow.cpp:156: undefined reference to `_imp___ZN16DSVL_VideoSourceC1Ev'
    C:/ARToolKit/lib/SRC/VIDEOWIN32DIRECTSHOW/videoWin32DirectShow.cpp:158: undefined reference to `_imp___ZN16DSVL_VideoSource23BuildGraphFromXMLStringEPc'
    C:/ARToolKit/lib/SRC/VIDEOWIN32DIRECTSHOW/videoWin32DirectShow.cpp:161: undefined reference to `_imp___ZN16DSVL_VideoSource23BuildGraphFromXMLStringEPc'
    C:/ARToolKit/lib/SRC/VIDEOWIN32DIRECTSHOW/videoWin32DirectShow.cpp:163: undefined reference to `_imp___ZN16DSVL_VideoSource21BuildGraphFromXMLFileEPc'
    C:/ARToolKit/lib/SRC/VIDEOWIN32DIRECTSHOW/videoWin32DirectShow.cpp:166: undefined reference to `_imp___ZN16DSVL_VideoSource18EnableMemoryBufferEjj'
    Debug\videoWin32DirectShow.o: In function `ar2VideoClose':
    C:/ARToolKit/lib/SRC/VIDEOWIN32DIRECTSHOW/videoWin32DirectShow.cpp:181: undefined reference to `_imp___ZN16DSVL_VideoSource19CheckinMemoryBufferE18MemoryBufferHandleb'
    C:/ARToolKit/lib/SRC/VIDEOWIN32DIRECTSHOW/videoWin32DirectShow.cpp:183: undefined reference to `_imp___ZN16DSVL_VideoSource4StopEb'
    C:/ARToolKit/lib/SRC/VIDEOWIN32DIRECTSHOW/videoWin32DirectShow.cpp:184: undefined reference to `_imp___ZN16DSVL_VideoSourceD1Ev'
    C:/ARToolKit/lib/SRC/VIDEOWIN32DIRECTSHOW/videoWin32DirectShow.cpp:196: undefined reference to `CoUninitialize@0'
    Debug\videoWin32DirectShow.o: In function `ar2VideoGetImage':
    C:/ARToolKit/lib/SRC/VIDEOWIN32DIRECTSHOW/videoWin32DirectShow.cpp:210: undefined reference to `_imp___ZN16DSVL_VideoSource19CheckinMemoryBufferE18MemoryBufferHandleb'
    C:/ARToolKit/lib/SRC/VIDEOWIN32DIRECTSHOW/videoWin32DirectShow.cpp:213: undefined reference to `_imp___ZN16DSVL_VideoSource17WaitForNextSampleEl'
    C:/ARToolKit/lib/SRC/VIDEOWIN32DIRECTSHOW/videoWin32DirectShow.cpp:215: undefined reference to `_imp___ZN16DSVL_VideoSource20CheckoutMemoryBufferEP18MemoryBufferHandlePPhPjS4_P12_PIXELFORMATPx'
    Debug\videoWin32DirectShow.o: In function `ar2VideoCapStart':
    C:/ARToolKit/lib/SRC/VIDEOWIN32DIRECTSHOW/videoWin32DirectShow.cpp:228: undefined reference to `_imp___ZN16DSVL_VideoSource3RunEv'
    Debug\videoWin32DirectShow.o: In function `ar2VideoCapStop':
    C:/ARToolKit/lib/SRC/VIDEOWIN32DIRECTSHOW/videoWin32DirectShow.cpp:238: undefined reference to `_imp___ZN16DSVL_VideoSource19CheckinMemoryBufferE18MemoryBufferHandleb'
    Debug\videoWin32DirectShow.o: In function `ar2VideoCapNext':
    C:/ARToolKit/lib/SRC/VIDEOWIN32DIRECTSHOW/videoWin32DirectShow.cpp:256: undefined reference to `_imp___ZN16DSVL_VideoSource19CheckinMemoryBufferE18MemoryBufferHandleb'
    Debug\videoWin32DirectShow.o: In function `ar2VideoInqSize':
    C:/ARToolKit/lib/SRC/VIDEOWIN32DIRECTSHOW/videoWin32DirectShow.cpp:271: undefined reference to `_imp___ZN16DSVL_VideoSource21GetCurrentMediaFormatEPlS0_PdP12_PIXELFORMAT'
    Debug\videoWin32DirectShow.o: In function `ar2VideoInqFreq':
    C:/ARToolKit/lib/SRC/VIDEOWIN32DIRECTSHOW/videoWin32DirectShow.cpp:300: undefined reference to `_imp___ZN16DSVL_VideoSource21GetCurrentMediaFormatEPlS0_PdP12_PIXELFORMAT'
    Debug\videoWin32DirectShow.o: In function `ar2VideoLockBuffer':
    C:/ARToolKit/lib/SRC/VIDEOWIN32DIRECTSHOW/videoWin32DirectShow.cpp:315: undefined reference to `_imp___ZN16DSVL_VideoSource20CheckoutMemoryBufferEP18MemoryBufferHandlePPhPjS4_P12_PIXELFORMATPx'
    Debug\videoWin32DirectShow.o: In function `ar2VideoUnlockBuffer':
    C:/ARToolKit/lib/SRC/VIDEOWIN32DIRECTSHOW/videoWin32DirectShow.cpp:326: undefined reference to `_imp___ZN16DSVL_VideoSource19CheckinMemoryBufferE18MemoryBufferHandleb'
    collect2: ld returned 1 exit status
    Process terminated with status 1 (0 minutes, 0 seconds)
    20 errors, 0 warnings
    


  • um den thread an dieser stelle zu schließen:

    http://www.hitlabnz.org/forum/showthread.php?p=1364#post1364

    To cut this long story short: there is no support yet for MinGW or Cygwin to compile ARToolkit into a usable state. There will be a version with a new video capturing library written in C but there is no ETA. You might want to have a look at uARToolkit which compiles fine with MinGW and comes with a CodeBlocks workspace. But its utterly uncomplete, has a different API and I didn't had time to fix various problems.

    http://hartmut-seichter.com/svn/uARToolkit/trunk/

    Cheers,
    Hartmut


Anmelden zum Antworten