편의를 위해 아래 관련 맨 페이지를 추가했습니다.-Wl, -rpath -Wl,
내 (잘못) 이해 첫째 : 나는 그것이 -rpath
옵션에 대한 인수 의미 ,
전에 오기 때문에 두 번째 -Wl
다른 옵션이 아닌 것을 의미, ,
으로 옵션을 구분해야하는 경우.
나는 이 -Wl,.
인수를 가질 수있는 방법을 모르겠다! 내 마음의 감각을 만들 것입니다 무엇
이 될 것입니다 :
-Wl,-rpath .
이 현재 디렉토리 인수 -rpath 링커 옵션을 호출해야합니다.
남자 GCC :
-Wl, 옵션 링커 옵션으로
패스 옵션을 선택합니다. 옵션에 쉼표가 포함되어 있으면 은 쉼표로 여러 옵션으로 분할됩니다. 이 구문을 사용하여 옵션에 인수를 전달할 수 있습니다. 의 경우,
-Wl,-Map,output.map
은-Map output.map
을 링커에 전달합니다. GNU 링커를 사용하면 도 `-Wl, -Map = output.map '과 동일한 효과를 얻을 수 있습니다.
남자 LD :
-rpath =이 디렉토리
가 런타임 라이브러리 검색 경로에 디렉토리를 추가합니다. ELF 실행 파일 을 공유 객체에 연결할 때 사용되는 입니다. 모든 -rpath 인수는 연결되어 으로 런타임 링커에 전달되며 런타임 링커는 을 사용하여 런타임에 공유 객체를 찾습니다. 공유 객체가 인 공유 객체를 명시 적으로 찾을 때 -rpath 옵션을 사용하면 공유 객체에 명시 적으로 이 포함됩니다.
아, 지금은 링커에 물건을 전달하는 동안 옵션이나 인수 사이에 차별이 없다는 것을 이해합니다. 단지 문자열 일뿐입니다. 따라서 두 번째 -Wl은 중복됩니다! 감사합니다 :) – Blub
@Blub : 중복되지 않습니다! 그것은 대체 형식입니다. 여러분은'-Wl, -rpath, .' * 또는 * -Wl, -rpath -Wl, .'라고 말합니다. 정확히 두 가지 중 하나, 당신은 아무것도 생략 할 수 없습니다. –