[Dev-C++] Linking errors with winmme and dsound libraries.
Open Source C & C++ IDE for Windows
Brought to you by:
claplace
|
From: Gabriel M. <g.m...@in...> - 2003-07-15 09:44:30
|
Hi all, I'm completely new to Dev-C++, but an old user of MSVC 6. Excuse me for the length of this message. I'm attempting to convert my MSVC projects to devcpp, but I'm blocked by persistent linking errors. The error messages are the following: ================================================= Compiler: Default compiler Building Makefile: "C:\LibroBoulanger\maldonado\codeDEV++\applications\hellotableRT\Makefile.win" Executing make... make.exe -f "C:\LibroBoulanger\maldonado\codeDEV++\applications\hellotableRT\Makefile.win" all g++.exe devcpp/hellotable.o -o "devcpp\hellotableRT.exe" -L"C:/Dev-Cpp/lib" -L"../../Libraries/tinyAudioLib/Release" -L"../../Libraries/PortaudioMSVC/pablioLIB_mme___Win32_Release" -L"../../Libraries/tinyAudioLib/Release" -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 -lwinmm -ldsound -lpablioLIB_mme -ltinyAudioLib ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x165):C:\LibroBoulanger\: variable '_iob' can't be auto-imported. Please read the documentation for ld's --enable-auto-import for details. ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x3a7):C:\LibroBoulanger\: variable '_iob' can't be auto-imported. Please read the documentation for ld's --enable-auto-import for details. ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0xc9):C:\LibroBoulanger\: variable '_iob' can't be auto-imported. Please read the documentation for ld's --enable-auto-import for details. ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x10a):C:\LibroBoulanger\: variable '_iob' can't be auto-imported. Please read the documentation for ld's --enable-auto-import for details. ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x88):C:\LibroBoulanger\: variable '_iob' can't be auto-imported. Please read the documentation for ld's --enable-auto-import for details. ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x83):C:\LibroBoulanger\: undefined reference to `_imp__waveInGetDevCapsA@12' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x1df):C:\LibroBoulanger\: undefined reference to `_imp__waveInOpen@24' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x2a9):C:\LibroBoulanger\: undefined reference to `_imp__waveOutGetDevCapsA@12' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x41a):C:\LibroBoulanger\: undefined reference to `_imp__waveOutOpen@24' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x2):C:\LibroBoulanger\: undefined reference to `_imp__waveInGetNumDevs@0' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x2d):C:\LibroBoulanger\: undefined reference to `_imp__waveOutGetNumDevs@0' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0xb4):C:\LibroBoulanger\: undefined reference to `_imp__waveInOpen@24' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x116):C:\LibroBoulanger\: undefined reference to `_imp__waveInPrepareHeader@12' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0xf5):C:\LibroBoulanger\: undefined reference to `_imp__waveOutOpen@24' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x197):C:\LibroBoulanger\: undefined reference to `_imp__waveOutPrepareHeader@12' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x3a):C:\LibroBoulanger\: undefined reference to `_imp__waveOutPause@4' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x76):C:\LibroBoulanger\: undefined reference to `_imp__waveOutWrite@12' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0xa1):C:\LibroBoulanger\: undefined reference to `_imp__waveOutRestart@4' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x37):C:\LibroBoulanger\: undefined reference to `_imp__waveInAddBuffer@12' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x65):C:\LibroBoulanger\: undefined reference to `_imp__waveInStart@4' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_wiInfo: resolving __iob by linking to __imp___iob (auto-import) n_wmme.obj)(.text+0x144):C:\LibroBoulanger\: undefined reference to `_imp__waveInAddBuffer@12' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x17c):C:\LibroBoulanger\: undefined reference to `_imp__waveOutWrite@12' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x1a):C:\LibroBoulanger\: undefined reference to `_imp__waveInReset@4' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x1b):C:\LibroBoulanger\: undefined reference to `_imp__waveOutReset@4' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x40):C:\LibroBoulanger\: undefined reference to `_imp__waveOutUnprepareHeader@12' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x80):C:\LibroBoulanger\: undefined reference to `_imp__waveOutClose@4' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x9b):C:\LibroBoulanger\: undefined reference to `_imp__waveInUnprepareHeader@12' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0xd9):C:\LibroBoulanger\: undefined reference to `_imp__waveInClose@4' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x21):C:\LibroBoulanger\: undefined reference to `_imp__waveOutGetPosition@12' ../../Libraries/tinyAudioLib/Release\tinyAudioLib.lib(./pablioLIB_mme___Win32_Release/pa_win_wmme.obj)(.text+0x31):C:\LibroBoulanger\: undefined reference to `_imp__waveInGetPosition@12' make.exe: *** [devcpp/hellotableRT.exe] Error 1 Execution terminated ================================================= I have to say that the project compiles OK under MSVC. Under MSVC I've set the runtime library as 'multithreaded DLL'. Notice that I'm attempting to link libraries compiled by myself with MSVC with the same 'multithreaded DLL' runtime lib compilation (the libraries are tinyAudioLib and pablioLIB_mme that use winmm and dsound calls). Is it possible to link libraries pre-compiled with MSVC in devcpp? Do I have to re-compile such libraries with devcpp? (I hope I don't have). However I recompiled the two libraries 'tinyAudioLib' and 'pablioLIB_mme' with devcpp, but when I linked my program with them (precisely with their new devcpp builds) I got the following errors: =========================== Compiler: Default compiler Building Makefile: "C:\LibroBoulanger\maldonado\codeDEV++\applications\hellotableRT\Makefile.win" Executing make clean rm -f devcpp/hellotable.o devcpp/hellotableRT.exe gcc.exe -c ../hellotable/hellotable.c -o devcpp/hellotable.o -I"C:/Dev-Cpp/include" -I"c:/MY_DOCS/VISUAL_C/OPENGL/GLUT-3.7.2/INCLUDE" -I"C:/MY_DOCS/VISUAL_C/FLTK/FLTK-1.1.4RC1" -I"C:/My_Docs/Visual_C/paintlib/otherlib/libjpeg" -I"C:/My_Docs/Visual_C/paintlib/otherlib/libpng" -I"C:/My_Docs/Visual_C/paintlib/otherlib/zlib" -I"C:/My_Docs/Visual_C/paintlib/src/common" -I"C:/MY_DOCS/VISUAL_C/OPENGL/GLE-3.0.7/SRC" -I"C:/My_Docs/Visual_C/Python-2.2.1c2/Include" -I"c:/MY_DOCS/VISUAL_C/OTHERLIBS/INCLUDE" -I"C:/Dev-Cpp/include/c++/backward" -I"../../Libraries/tinyAudioLib" -D__GNUWIN32__ -W -DWIN32 -DNDEBUG -D_CONSOLE -D_MBCS -DREALTIME ../hellotable/hellotable.c: In function `main': ../hellotable/hellotable.c:115: warning: return type of `main' is not `int' g++.exe devcpp/hellotable.o -o "devcpp\hellotableRT.exe" -L"C:/Dev-Cpp/lib" -L"../../Libraries/tinyAudioLib/devcpp" -L"../../Libraries/PortaudioMSVC/devcpp" -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 -lwinmm -ldsound -lpablioLIB_mme -ltinyAudioLib ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0x52):tinyAudioLib.c: undefined reference to `CloseAudioStream' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0x90):tinyAudioLib.c: undefined reference to `Pa_GetErrorText' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0x187):tinyAudioLib.c: undefined reference to `Pa_GetErrorText' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0x327):tinyAudioLib.c: undefined reference to `ReadAudioStream' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0x3ec):tinyAudioLib.c: undefined reference to `WriteAudioStream' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0x41e):tinyAudioLib.c: undefined reference to `ReadAudioStream' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0x4ff):tinyAudioLib.c: undefined reference to `WriteAudioStream' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0x52c):tinyAudioLib.c: undefined reference to `WriteAudioStream' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0x55a):tinyAudioLib.c: undefined reference to `ReadAudioStream' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0x5a4):tinyAudioLib.c: undefined reference to `WriteAudioStream' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0x5d2):tinyAudioLib.c: undefined reference to `ReadAudioStream' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0x612):tinyAudioLib.c: undefined reference to `WriteAudioStream' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0x765):tinyAudioLib.c: undefined reference to `Pa_GetDeviceInfo' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0x8a2):tinyAudioLib.c: undefined reference to `Pa_CountDevices' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0x8bd):tinyAudioLib.c: undefined reference to `Pa_GetDeviceInfo' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0x9fc):tinyAudioLib.c: undefined reference to `Pa_GetDeviceInfo' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0xa35):tinyAudioLib.c: undefined reference to `Pa_GetDefaultOutputDeviceID' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0xadb):tinyAudioLib.c: undefined reference to `Pa_GetDeviceInfo' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0xc18):tinyAudioLib.c: undefined reference to `Pa_CountDevices' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0xc33):tinyAudioLib.c: undefined reference to `Pa_GetDeviceInfo' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0xd72):tinyAudioLib.c: undefined reference to `Pa_GetDeviceInfo' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0xdab):tinyAudioLib.c: undefined reference to `Pa_GetDefaultInputDeviceID' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0xe38):tinyAudioLib.c: undefined reference to `RingBuffer_Write' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0xe56):tinyAudioLib.c: undefined reference to `RingBuffer_Read' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0xf1e):tinyAudioLib.c: undefined reference to `RingBuffer_Init' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0xf89):tinyAudioLib.c: undefined reference to `Pa_GetSampleSize' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0xfde):tinyAudioLib.c: undefined reference to `Pa_Initialize' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0xfff):tinyAudioLib.c: undefined reference to `Pa_GetMinNumBuffers' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0x10d2):tinyAudioLib.c: undefined reference to `RingBuffer_GetWriteAvailable' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0x10ea):tinyAudioLib.c: undefined reference to `RingBuffer_AdvanceWriteIndex' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0x1186):tinyAudioLib.c: undefined reference to `Pa_OpenStream' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0x11a2):tinyAudioLib.c: undefined reference to `Pa_StartStream' ../../Libraries/tinyAudioLib/devcpp\tinyAudioLib.lib(tinyAudioLib.o.b)(.text+0x11cc):tinyAudioLib.c: undefined reference to `CloseAudioStream' make.exe: *** [devcpp/hellotableRT.exe] Error 1 Execution terminated =========================== All the functions that the linker says to be 'undefined reference', are actually defined in the 'pablioLIB_mme' library that is included in the project. I'm asking why they result undefined. Thanks in advance -- Gabriel Maldonado http://csounds.com/maldonado/home2.htm -- |