2010-06-06 4 views
29

dylib를 설치 한 후에 설치 경로를 변경하려고합니다. 현재 경로가 무엇인지 확인하려면 otool -L을 사용합니다.install_name_tool을 어떻게 사용합니까?

$ install_name_tool -change /my/current/path/libmine.dylib \ 
    /my/new/path/libmine.dylib libmine.dylib 

내가 오류가 발생하지 않습니다,하지만 아무것도 변하지 않는다 : 그리고 내가 할. 다시 경로를 확인하면 이전 경로가 아직 남아 있습니다. 또한 새로운 경로는 이전 경로보다 훨씬 짧기 때문에 문제는 없으며 lib가 파일 경로 공간을 늘리기 위해 여분의 플래그로 컴파일되었다고 생각합니다.

아이디어가 있으십니까?

+2

설치 이름 만 확인하려면'otool -D'를 사용하십시오. – JWWalker

답변

51

install_name_tool에 대한 설명서 페이지는 -change가 종속성을 나타냅니다. 라이브러리 자체의 이름을 변경하려고합니다.

방금 ​​실험 한 결과, dylib 자체에 나타나는 dylib의 이름을 변경할 수는 없지만 다른 종속성의 이름을 변경할 수 있음을 알았습니다.

더 많은 실험을 해본 결과 : install_name_tool -id newname file이 트릭을 수행합니다.

+1

감사합니다. 내가 찾은 모든 예제 코드가 종속성과 관련되어 있기 때문에 간과했습니다. –

관련 문제