ああ、私はGCCとMACとMakefileの初心者です。今日はMAC OS XおよびGCC 4.4.2を使用してlibにダイナミックに構築するものではなく、.oファイルをリンクする際、コンパイラーは次のように文句を言う:"___emutls_get_address"シンボルとは何ですか?
Undefined symbols:
"___emutls_get_address", referenced from:
_malloc in michael.o
_malloc in michael.o
ld: symbol(s) not found
私はこの情報をグーグルが、私は理解できません結果はうまく、私はシンボルが何を意味するのだろうか、なぜ多くのプログラムにこのリンクエラーがあるのだろうかと思います。私もこのエラーの原因であるのだろうか、リンクコマンドは次のとおりです。
g++ -Dx86 -D_GNU_SOURCE -D_REENTRANT -Wall -m32 \
-fno-strict-aliasing -fno-pic -O3 -ggdb \
michael.o malloc_new.o -o libmichael.so \
-lpthread -lm -lstdc++ -shared
'-lstdC++'と明示的にリンクする必要はありません。g ++は、正しいものを選択する必要があります。それを削除してみてください。 – Mat