Windows: linkelési probléma

Fórumok

Sziasztok!

Távoli ismerősöm próbálkozik egy program fordításával. E-mailben levelezgetünk róla. Sajnos Windows XP-t használ, és most nem tudok már további tanácsot adni, hogy mit tegyen.

Erről a programról van szó:
http://sourceforge.net/project/showfiles.php?group_id=200880

Az MSDN-t feltelepítette, mert már az első próbálkozáskor a következő hibát dobta fordításkor:
RWAudio_win.o(.text+0xfa1):RWAudio_win.cpp: undefined reference to `waveInOpen@24'

Ekkor ezen web oldal alapján, arra gondoltam, hogy fel kell telepíteni az MSDN-t:
http://msdn.microsoft.com/en-us/library/ms713735(VS.85).aspx

Fel is telepítette, de most meg linkeléskor kap hibát:
RWAudio_win.obj : error LNK2019: unresolved external symbol __imp__waveInOpen@24 referenced in function "public: int __thiscall RWAudio::RecOpen(void)"

(Persze ennél több ugyanilyen jellegű hiba van linkeléskor!) Tehát lényegében, ugyanarra a waveInOpen() függvényről van szó, csak most már a linkelési fázisban akad el a fordító.

Mit javasoltok a probléma megoldására? (Ha jól tudom, Dev-C++ programot használ az ismerősöm a fordításhoz.)

Hozzászólások

Próbálja meg beállítani, hogy a winmm.lib fájlt hozzálinkelje a linker
fordítás után.

Szerk.: Project Options->Parameters->Linker->Add Library or Object
vagy a Directories tabon a megfelelő könyvtárak megadása
--
A gyors gondolat többet ér, mint a gyors mozdulat.

Eloszor is kezdjuk ott, hogy illene felrakni a gepre az oprendszernek megfelelo Platform SDK-t. Aztan be kell allitani a megfelelo inculde-okat, es lib-eket, hogy megtalalja oket a linker. Altalaba mellekelnek egy cmd file-t (a Platform sdk parancssor linkbol lehet kilesni) ami szepen beallitgatja az ezen konyvtarakat.
--


()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.

Megadtam az ismerősömnek ennek a topicnak a címét. Remélem elboldogul vele, mert én így távolból nem tudok segíteni neki. Főleg, hogy a Window-os IDE-ket nem ismerem.

Állítólag, nem Dev-C++ -szal fordított utoljára, hanem VisualC++ 2008 Express-szel. Tehát a linkelési probléma, már abban jelentkezett.

Tudom, hogy tök jó szórakozás, de miért nem használja a binárist?

Egyébként ahogy nézem ennek gcc kell. Azaz Mingw (talán DevC++ is jó, ahhoz nem értek).

Plusz wxWidgets 2.6.x.

Semmi Platform SDK...
(Egyébként ezzel a programmal már indítottál egy topikot nem?)

Persze VS-sel is mehet, talán ahhoz is elég egy wxWidgets...

"...handing C++ to the average programmer seems roughly comparable to handing a loaded .45 to a chimpanzee."
-- Ted Ts'o

Valóban indítottam topicot, de most leredukáltuk a programot csak RWAudio_win-re és egy main.cpp-re. Ezáltal kihagytuk belőle a wxWidgets-et, mert a grafikus részre nincs szükségünk, csak az érdemi hangkártya kezelésre.

És ezen egyszerűsített programnál jönnek a linkelési hibák.

Remélem ez a winmm.lib segít.

Egyelőre köszönöm a segítségeteket!

Sziasztok!

Az ismerősöm, most újra a Dev-C++ -val próbálkozik. Készített egy projektet, aminek a fordításakor ezeket az üzeneteket kapja:

Compiler: Default compiler
Building Makefile: "D:\Pelz\Harmadik\Makefile.win"
Finding dependencies for file: D:\Pelz\Harmadik\main.cpp
Finding dependencies for file: D:\Pelz\Harmadik\RWAudio_win.cpp
Executing make...
make.exe -f "D:\Pelz\Harmadik\Makefile.win" all
g++.exe main.o RWAudio_win.o -o "Harmadik.exe" -L"C:/Dev-Cpp/lib" winmm.lib

g++.exe: winmm.lib: No such file or directory

make.exe: *** [Harmadik.exe] Error 1

Execution terminated

Nem ismerem ezt a Dev-C++ fordítót, így nem tudok neki segíteni. Az sejtem, hogy valami biztos rosszul van beállítva a projektjében. Másrészt azt állítja, hogy nem találja a "winmm.lib"-et a merevlemezén, pedig az MSDN-t feltelepítette.

Van valakinek tapasztalata, hogyan lehet leellenőrizni: a "winmm.lib" valóban létezik-e vagy sem nála. És hogyan lehet a Dev-C++ számára láthatóvá tenni a "winmm.lib" könyvtárt?

Felejtse már el ezt az MSDN dolgot. Az MSDN egy más tészta.
Platform SDK-t keressen a saját oprendszeréhez, azt töltse le,
telepítse fel és ott megtalálja a fájlt.

Szerk.: ja, olvastam vissza is.. libwinmm.la? mingw\lib könyvtárban?
--
A gyors gondolat többet ér, mint a gyors mozdulat.

intuíció :D

Welcome to the MSDN Library, an essential source of information for developers using Microsoft® tools, products, technologies and services. The MSDN Library includes how-to and reference documentation, sample code, technical articles, and more.

--
A gyors gondolat többet ér, mint a gyors mozdulat.