2013-09-25 1 views
1

내 Xcode 작업 영역에 재귀 자식 모듈에 문제가 있습니다. 나는 llvm이 잘못된 .m 파일을 선택하고 있다고 생각한다..o 파일 기호 쿼리

개체 바이너리에서 사용할 수있는 방법을 보여줌으로써이를 확인하고 싶습니다.

ar -t myarchive.a을 사용하여 정적 라이브러리에 .o 개의 파일을 표시 할 수 있습니다. 좀 더 자세히 드릴 다운하고 특정 .o에서 사용할 수있는 메서드 심볼을 표시하는 방법이 있습니까?

답변

1

명령을 사용하여 .o 또는 .a 파일 내에 기호를 표시 할 수 있습니다. 자세한 내용은 nmmanpage을 참조하십시오.

$ nm build/IoEvent.o 

다음 그 심볼 이름을 디맹 글링하는 c++filt을 사용할 수 있습니다 당신은 C를 사용하는 경우 ++

---------------- T __ZN9ChessCore18ChessCoreExceptionC1EPKcz 
---------------- T __ZN9ChessCore18ChessCoreExceptionD0Ev 
---------------- T __ZN9ChessCore18ChessCoreExceptionD1Ev 
---------------- D __ZN9ChessCore7IoEvent11m_classnameE 
---------------- T __ZN9ChessCore7IoEvent3setEv 
---------------- T __ZN9ChessCore7IoEvent5resetEv 
---------------- T __ZN9ChessCore7IoEventC1Ei 
---------------- T __ZN9ChessCore7IoEventC1Ev 
---------------- T __ZN9ChessCore7IoEventC2Ei 
---------------- T __ZN9ChessCore7IoEventC2Ev 
---------------- T __ZN9ChessCore7IoEventD0Ev 
---------------- T __ZN9ChessCore7IoEventD1Ev 
---------------- T __ZN9ChessCore7IoEventD2Ev 
---------------- T __ZNK9ChessCore18ChessCoreException4whatEv 

(클립) (난 당신이 아니에요 알고) :

$ c++filt __ZN9ChessCore7IoEvent5resetEv 
ChessCore::IoEvent::reset() 
+0

뛰어난 덕분에 이것을 위해서! –