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.)
- 1746 megtekintés
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.
- A hozzászóláshoz be kell jelentkezni
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.
- A hozzászóláshoz be kell jelentkezni
+1 :) Gondolom az MSDN felrakás sem _az MSDN_ felrakást jelenti.
--
A gyors gondolat többet ér, mint a gyors mozdulat.
- A hozzászóláshoz be kell jelentkezni
DevC++ esetében halál mindegy a Platform SDK, nem használja.
Illetve addig jó míg nem használja, mert a gcc nem eszi meg a header fájlok nagyrészét...
"...handing C++ to the average programmer seems roughly comparable to handing a loaded .45 to a chimpanzee."
-- Ted Ts'o
- A hozzászóláshoz be kell jelentkezni
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.
- A hozzászóláshoz be kell jelentkezni
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
- A hozzászóláshoz be kell jelentkezni
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.
- A hozzászóláshoz be kell jelentkezni
Akkor ahogy fentebb már mondták: winmm.lib-et hozzá kell venni a projecthez.
"...handing C++ to the average programmer seems roughly comparable to handing a loaded .45 to a chimpanzee."
-- Ted Ts'o
- A hozzászóláshoz be kell jelentkezni
Remélem ez a winmm.lib segít.
Egyelőre köszönöm a segítségeteket!
- A hozzászóláshoz be kell jelentkezni
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.libg++.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?
- A hozzászóláshoz be kell jelentkezni
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.
- A hozzászóláshoz be kell jelentkezni
Erre gondolsz?
- A hozzászóláshoz be kell jelentkezni
Erre.
Mielőtt azonban nekiestek még 1 próba: DevC++ -> Project -> Project options -> Parameters ->
Linker oszlopba: "-lwinmm" idézőjelek nélkül. Aztán próba fordítás.
--
A gyors gondolat többet ér, mint a gyors mozdulat.
- A hozzászóláshoz be kell jelentkezni
OK!
Kösz!
Én nem esek nekei. Megírom neki, hogy állítsa be az általad javasolt módon a lib-et. És remélem sikerül valaha elérnünk, hogy forduljon!
- A hozzászóláshoz be kell jelentkezni
Hm jah, belenéztem, Dev-Cpp/lib/libwinmm.a, ebben van hivatkozás a fenti
függvényre. Szóval mennie KELL! \o/
--
A gyors gondolat többet ér, mint a gyors mozdulat.
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
Csak azt nem értem, hogy az alábbi Microsoft dokumentációból, hogyan lehetett volna rájönni, hogy nem az MSDN kell, hanem a Platform SDK?
- A hozzászóláshoz be kell jelentkezni
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.
- A hozzászóláshoz be kell jelentkezni