1
CMake
프로젝트에서 과 함께 gold
링커를 사용하려고합니다. 나는 단순히Clang ++과`-fuse-ld = gold`는 사용되지 않은 옵션 경고를 많이 낳습니다.
add_definitions(-fuse-ld=gold)
를 할 경우 나는 형태로 경고의 톤을 얻을 :
clang: warning: argument unused during compilation: '-fuse-ld=gold'
- 이 옵션은 실제로 작동합니까?
- 장소에 경고가 나타나지 않도록하려면
CMake
스크립트에 어디에서 추가해야합니까? 옵션으로
컴파일러가 링커를 호출하지 않습니까? 링커를 * 선택 *하는 옵션이 있습니다. 링커는 전달되지 않습니다. 'clang ++ -fuse-ld = gold -Wl, --version'은'gold' 버전을 정확하게보고하고'clang ++ -Wl, -fuse-ld = gold -Wl, -version'은'ld'를보고합니다. 'clang ++ '는'gold'를 호출하지 않았다는 것을 의미합니다. – Svalorzen
예, CMake (기본값)는 ** 링크 단계 **에서 컴파일러를 호출합니다. 그러나 * 링커는 컴파일 단계에서 관련이 없습니다 *. 그리고 여러분이 가지고있는 경고 메시지는 컴파일 링을 할 때 링커 옵션이 무시된다는 것을 의미합니다. '-Wl, --version'을 사용하여 버전을 요청하면 링커 * 버전이 생깁니다. 물론'-fuse-ld = gold'의 유무는 그 의미가 있습니다. – Tsyvarev