g 정적 링크가 Pthread일 때 분할 오류 발생: 설명 및 해결 방법
문제:
pthread 라이브러리에 연결하기 위해 g 및 -pthread 플래그를 사용하여 C 프로그램을 컴파일할 때 정적으로(-static) 프로그램에서 세그먼트화 오류가 발생합니다.
설명:
약한 기호:
동적 연결과 정적 연결:
불완전한 링크 해결:
해결책:
To 링커가 정적으로 링크된 프로그램에서 pthread 라이브러리의 모든 기호를 보도록 강제하려면 다음을 사용하세요.
g++ -o one one.cpp -Wall -std=c++11 -O3 -static -pthread \ -Wl,--whole-archive -lpthread -Wl,--no-whole-archive
추가 참고 사항:
WL_WHOLE_ARCHIVE_HACK="-Wl,--whole-archive" WL_NO_WHOLE_ARCHIVE_HACK="-Wl,--no-whole-archive" AC_SUBST(WL_WHOLE_ARCHIVE_HACK) AC_SUBST(WL_NO_WHOLE_ARCHIVE_HACK) mytarget_LDADD = @WL_WHOLE_ARCHIVE_HACK@ -lpthread @WL_NO_WHOLE_ARCHIVE_HACK@
위 내용은 정적 링크 및 Pthread를 사용하는 내 C 프로그램에서 분할 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!