konstruktory statickych trid a gnu c na linuxu

Stanislav Meduna stano na trillian.eunet.sk
Sobota Červen 5 09:43:32 CEST 1999


On 4 Jun 1999 17:07:24 +0200, Linux wrote:

: Takze timto makefile jsem prekladal jednoduchy priklad pokus.cpp (podobny 
: byl napsany v predchozim priklade) a takto prelozeny program automaticky
: nespoustel konstruktory statickych instanci trid. Ted uz vim, ze chyba je
: nekde v makefile a ne v implementaci gnu c v Linuxu,

Mate nejaky dovod starat sa sam o linkovanie a pouzivat
ld namiesto toho, aby vsetko za Vas urobil g++?

: Asi mam prilinkovane spatne knihovny, i kdyz linker
: zadne chyby nehlasi.

Ak si skusite linkovanie cez g++ s flagom -v, uvidite,
ako je linker volany. U mna napr. (g++ -v *.o z minuleho
prikladu, pgcc a egcs nech Vas nepletu - v tychto veciach
je to klasicke gcc):

Reading specs from /opt/pgcc/lib/gcc-lib/i686-pc-linux-gnu/pgcc-2.91.60/specs
gcc version pgcc-2.91.60 19981201 (egcs-1.1.1 release)
 ld -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 /usr/lib/crt1.o
/usr/lib/crti.o /opt/pgcc/lib/gcc-lib/i686-pc-linux-gnu/pgcc-2.91.60/crtbegin.o
-L/opt/pgcc/lib/gcc-lib/i686-pc-linux-gnu/pgcc-2.91.60
-L/opt/pgcc/i686-pc-linux-gnu/lib -L/opt/pgcc/lib bar.o
foo.o main.o -lstdc++ -lm -lgcc -lc -lgcc
/opt/pgcc/lib/gcc-lib/i686-pc-linux-gnu/pgcc-2.91.60/crtend.o
/usr/lib/crtn.o

Zdravi
-- 
				Stano



Další informace o konferenci Linux