0
엘 캐피 탄에서 Xcode 7.3.1을 사용 중입니다. 빌드 단계 -> 라이브러리와 바이너리 연결 설정에 포함될 모든 * .a 라이브러리가 포함되었습니다. 이들은 다음을 포함합니다 :이상한 Xcode 라이브러리 C++ 명시 적 설정
libev.a
libhiredis.a
내가 빌드 할 때, 내가 링크 과정에서주의 사항 :
-lev -lhiredis
어떻게 이러한 플래그가 I로 생성됩니다
Ld /Users/quantlabsnet/Library/Developer/Xcode/DerivedData
그것은 다음과 같은 플래그를 추가합니다 연결 옵션에 추가 플래그가 포함되어 있지 않음 :
Other librarian flags
Other linkers
마찬가지로이 두 옵션은 공백으로 남습니다. 어떻게 자동으로 추가 된 스위치를 억제합니까?
-lev -lhiredis
또는 어떻게하면 링크 명령에서 생성되지 않습니까? , 수정 라이브러리 빌드 페이즈 - 링크 바이너리 라이브러리를 ppecify하기
ld: library not found for -lev
감사
혼란스러워. 빌드 단계 설정에서 링크 할 라이브러리 두 개를 추가했는데 링커가 링크하려는 이유가 궁금한가요? -lev와 -lhiredis 플래그는 특히 링크 목록에 추가 한 .a 파일 (특히 libev.a와 libhiredis.a라는 이름이어야 함)을 가져 오기 위해 링커에게 알려줍니다. – qexyn
Xcode의 어딘가에는 자동으로 추가 된 라이브러리 플래그가 강제 설정되는 설정이 있어야 함을 이해합니다. -lev -lhiredis Xcode에서이 위치를 수동으로 추가하지 않습니다. –
링커는 그 라이브러리를 포함시키고 싶다는 것을 어떻게 알 수 있습니까? Xcode는 사용자가 지정한 입력을 사용하여 링크 명령을 생성합니다. 당신은 Xcode에게 몇 개의 라이브러리를 연결하도록 말했고, 그래서 그것을 링커에게 전달합니다. 대신에 어떤 행동을 기대합니까? – qexyn