2009-09-03 2 views
2

내재 된 대상에 대한 응용 프로그램을 연결하는 데 문제가 있습니다. 나는 Linux에서 실행되는 ARM9 타겟을 위해 Min-GW를 사용하는 윈도우 박스에서 개발 중이다.
실제로 정적 링크에서 메모리 공간을 절약하기 위해 .so-libraries와 동적 연결로 전환 중입니다.
은 내가 lib 디렉토리에 대한 모든 소스를 확인링커 오류 "정의되지 않은 참조"의 경우 심볼에 대한 호출 루틴을 어떻게 찾을 수 있습니까?

 
libT3Printer.so: undefined reference to `__ASSERT' 

오류 메시지를 얻을 나는이 함수가 호출 할 수있는 아무 생각이 없습니다. 누락 된 기능을 호출 한 사람이 누구인지 (소스 파일 또는 기능)는 어떤 가능성이 있습니까?

+0

에 내 Mac에서 링커가 "정의되지 않은 참조"오류 메시지 아래 발신자 목록을 인쇄합니다. 어쩌면 당신은 다른 링커를 시도 할 수 있습니다. –

답변

4

참조가 매크로에 의해 숨겨져있을 수 있습니다. 선행 작업 출력을 생성하기 위해 -E 옵션을 사용하여 컴파일러를 실행하는 경우 추적을 수행 할 가능성이 더 높습니다.

+0

매우 간단하고 아주 좋은 조언, 많이 감사합니다! – chrmue

0

정의 추가 시도 NDEBUG.

gcc -DNDEBUG foo.c어설()- 모든 통화를 비활성화하고이 동작은 C++에서와 동일합니다 : NDEBUG 컴파일 C에서

는 정의

g++ -DNDEBUG foo.cpp

관련 문제