Hebang
(usa Arch Linux)
Enviado em 30/11/2010 - 12:20h
Mslomp!
É exatamente isso que estava procurando!
Olhe o que fiz:
1) Compilei o código de forma dinâmica e dei um ldd para ver as libs que ele linka;
2) Copiei essas libs para um diretório meu chamado libs/
3) g++ -nostdlib -o meu_exe codigo_fonte.cpp libs/lib1.so.1 libs/lib5.so.6 .............. (traduzindo, coloquei o caminho relativo de todas as libs no final da linha de compilação)
Porém, quando compilo desse forma, ocorre o seguinte erro:
/usr/bin/ld: warning: cannot find entry symbol _start; defaulting to 000000000804b168
/tmp/ccwGFI2K.o: In function `__static_initialization_and_destruction_0(int, int)':
codigo_fonte.cpp:(.text+0x34f2e): undefined reference to `__dso_handle'
codigo_fonte.cpp.cpp:(.text+0x34f7c): undefined reference to `__dso_handle'
codigo_fonte.cpp.cpp:(.text+0x34fe7): undefined reference to `__dso_handle'
codigo_fonte.cpp.cpp:(.text+0x3504c): undefined reference to `__dso_handle'
codigo_fonte.cpp.cpp:(.text+0x350ce): undefined reference to `__dso_handle'
/tmp/ccwGFI2K.o:codigo_fonte.cpp.cpp:(.text+0x35150): more undefined references to `__dso_handle' follow
collect2: ld returned 1 exit status
make: *** [all] Error 1
Será que é alguma lib que eu esqueci de linkar??
Desde já, muitíssimo obrigado pela ajuda de todos!