|
|
Chyba v kompilaci - chybi libmpq
|
6.2.2007 14:38
Nes
|
Following error has occurred:
g++ -I../ -c huffman.cpp
g++ -I../ -c wave.cpp
g++ -I../ -c mpq.cpp
g++ -I../ -c parser.cpp
ar cru libmpq.a common.o explode.o extract.o huffman.o wave.o mpq.o
parser.o ../../../dep/src/zlib/adler32.o ../../../dep/src/zlib/compress.o
../../../dep/src/zlib/crc32.o ../../../dep/src/zlib/deflate.o
../../../dep/src/zlib/example.o ../../../dep/src/zlib/gzio.o
../../../dep/src/zlib/infback.o ../../../dep/src/zlib/inffast.o
../../../dep/src/zlib/inflate.o ../../../dep/src/zlib/inftrees.o
../../../dep/src/zlib/trees.o ../../../dep/src/zlib/uncompr.o
../../../dep/src/zlib/zutil.o
g++ -shared -o libmpq.so common.o explode.o extract.o huffman.o wave.o mpq.o
parser.o ../../../dep/src/zlib/adler32.o ../../../dep/src/zlib/compress.o
../../../dep/src/zlib/crc32.o ../../../dep/src/zlib/deflate.o
../../../dep/src/zlib/example.o ../../../dep/src/zlib/gzio.o
../../../dep/src/zlib/infback.o ../../../dep/src/zlib/inffast.o
../../../dep/src/zlib/inflate.o ../../../dep/src/zlib/inftrees.o
../../../dep/src/zlib/trees.o ../../../dep/src/zlib/uncompr.o
../../../dep/src/zlib/zutil.o
/usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../x86_64-suse-linux/bin/ld:
common.o: relocation R_X86_64_32 against `a local symbol' can not be used
when making a shared object; recompile with -fPIC
common.o: could not read symbols: Bad value
collect2: ld returned 1 exit status
make: *** [libmpq.so] Error 1
Following error has occurred:
then mv -f ".deps/adt.Tpo" ".deps/adt.Po"; else rm -f ".deps/adt.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I../.. -I. -g -O3 -MT dbcfile.o -MD -MP
-MF ".deps/dbcfile.Tpo" -c -o dbcfile.o dbcfile.cpp; \
then mv -f ".deps/dbcfile.Tpo" ".deps/dbcfile.Po";
else rm -f ".deps/dbcfile.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I../.. -I. -g -O3 -MT mpq_libmpq.o -MD -MP
-MF ".deps/mpq_libmpq.Tpo" -c -o mpq_libmpq.o mpq_libmpq.cpp; \
then mv -f ".deps/mpq_libmpq.Tpo" ".deps/mpq_libmpq.Po";
else rm -f ".deps/mpq_libmpq.Tpo"; exit 1; fi
/bin/sh ../../libtool --tag=CXX --mode=link g++ -g -O3
-o ad System.o adt.o dbcfile.o mpq_libmpq.o libmpq/libmpq.so -lz -lpthread
mkdir .libs
g++ -g -O3 -o ad System.o adt.o dbcfile.o mpq_libmpq.o libmpq/libmpq.so -lz -lpthread
g++: libmpq/libmpq.so: No such file or directory
make: *** [ad] Error 1Na google jsem v cestine nasel jen 2 odkazy na libmpq a z toho jsem to nasel jen na jednom -
http://portal.rommel-clan.net/viewpage.php?page_id=64
jenze moc tomu nechapu co s tim mam delat (zkompilovany program ale funguje, ovsem asi tam bude nejaka chyba - kompiloval mi to nejaky automaticky program - ja bych to zatim nezvladl)
Muzete nekdo prosim poradit - co bych mel udelat? Libmpq jsem hledal ve smartu a v yast2, ale ani jeden ho nemel... Diky !!!!
_____________
Open Suse 10.2 64 bit, anglicky moc neumi, absolutni novacek... dekuji za jednoduche rady, pokud mozno s nazornym prikladem |
|
|
Re: Chyba v kompilaci - chybi libmpq
|
6.2.2007 15:42
Ondřej Čečák
|
Neni to tak, ze vam chybi hlavickove soubory (typicky v balicku s priponou -dev nebo -devel) a kompilator C++ chybu odesel a protoze neni fatalni, dosel k spustitelnemu vysledku?
|
|
|
Re: Chyba v kompilaci - chybi libmpq
|
6.2.2007 15:57
Nes
|
ano, program spustit jde, ale ta chyba me stve :-( ja bych radsi bez chyb ... co vlastne ta chyba muze spusobit?
Prosi o reseni |
|
|
Re: Chyba v kompilaci - chybi libmpq
|
6.2.2007 16:22
Ondřej Čečák
|
co vlastne ta chyba muze spusobit?
Typicky nefunkcnost programu nebo nejake jeho casti.
Prosi o reseni
Reseni je dodat, jak uz bylo skoro receno, chybejici hlavickove soubory.
|
|
|
Re: Chyba v kompilaci - chybi libmpq
|
6.2.2007 18:58
Nes
|
tak jsem si projel google co mi rekne na hlavickove soubory - vubec tomu nechapu co to je -
Hlavičkový soubor může obsahovat rovněž potřebné globální deklarace (zejména deklarace tříd v C++), pomocí direktivy #ifndef
nebo
Konkrétně, hlavičkový soubor obsahuje rozhraní třídy (a případné deklarace
vazne nevim o cem je rec... Nevim co to ma byt za soubor, kde ho sehnat a kam ho dat :-(
Dekuji za pripadnou pomoc
Open Suse 10.2 64 bit, anglicky moc neumi, absolutni novacek... dekuji za jednoduche rady, pokud mozno s nazornym prikladem |
|
|
Re: Chyba v kompilaci - chybi libmpq
|
6.2.2007 19:09
Ondřej Čečák
|
Mozna neni dobry napad se do te kompilace vubec poustet ...
ak jsem si projel google co mi rekne na hlavickove soubory
Hlavickovy soubor je strucne soubor obsahujici jednu nebo vic deklaraci prostredku programovaciho jazyka. Asi ten google "projizdite" spatne.
vazne nevim o cem je rec... Nevim co to ma byt za soubor, kde ho sehnat a kam ho dat :-(
Ma to byt soubor (z) knihovny, ktera vam schazi, a mate ji dat tam, kde ji kompilovany program ocekava. ;)
|
|
|
Re: Chyba v kompilaci - chybi libmpq
|
6.2.2007 19:32
Nes
|
Na google jsem v cestine nasel jen 2 odkazy na libmpq (predpokladam ze to je ten Vami zminovany soubor z knihovny)a z toho jsem to nasel jen na jednom -
http://portal.rommel-clan.net/viewpage.php?page_id=64
pohuzel stahnout nejde a moc informaci tam take nevidim.
|
|
|
Re: Chyba v kompilaci - chybi libmpq
|
6.2.2007 19:34
Tomáš Kavalek
|
Clovece, moc nechapu, jak muzete kompilovat, kdyz ani netusite co je to hlavickovy soubor :-) |
|
|
Re: Chyba v kompilaci - chybi libmpq
|
6.2.2007 20:26
Nes
|
Hlavickovy soubor je strucne soubor obsahujici jednu nebo vic deklaraci prostredku programovaciho jazyka
jen nevim co to znamena :D
nicmene porad shanim odpoved na predchozi prispevek ;-) |
|
|
Re: Chyba v kompilaci - chybi libmpq
|
7.2.2007 01:03
Aleš Hakl
|
Pane kolego, nemate pravdu.
Linker prohlasil, ze z danych objektu neumi vyrobit sdileny objekt (libmpq.so), jelikoz pozaduji netrivialni relokace, coz pochopitelne ve sdilenem objektu nelze (a pokud nekdo chce tvrdit, ze windows to umi, tak at se zamysli nad tim, jak je to asi implementovano). Je to tim, ze vstupni objekty nejsou position independent code (to je ono -fPIC). Resenim je volat kompilator s -fPIC (tak jak chybova hlaska doporucuje) nebo se nesnazit vyrabet sdileny objekt a spokojit se se statickou knihovnou (a nebo prejit na platformu, ktera neumi ne-PIC kod).
Co to vlastne je PIC se dozvite napriklad v kapitole "8.2. Writing NetBSD/FreeBSD/OpenBSD and Linux/ELF Shared Libraries" manualu k Netwide assembleru nebo koneckoncu jen z popisu toho, co vlastne dela -fpic a -fPIC v manualu gcc. |
|
|
|
|
KOMENTARZE
|
Tylko zarejestrowani użytkownicy mogą dopisywać komentarze.
|
|
Szukanie oprogramowania
|
©Pavel Kysilka - 2003-2024 |
maillinuxsoft.cz | Design:
www.megadesign.cz
|