2016-03-01 3 views
0

Я загрузил, скомпилировал проект с помощью gtest. Затем я положил gtest.framework в /Library/Frameworks. Так, IDE код выделить правильно: code screenshotXcode не компилируется с использованием gtest framework, но видит его

Но при компиляции этой ошибки появляется:

ld: library not found for -lgtest_main

clang: error: linker command failed with exit code 1 (use -v to see invocation)

Ld /Users/Me/Library/Developer/Xcode/DerivedData/gtests-fgfrckirrlestcgfahvvtwdhgndr/Build/Products/Debug/gtests normal x86_64 cd /Users/Me/Desktop/Study/Projects/gtests export MACOSX_DEPLOYMENT_TARGET=10.10 /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk -L/Users/Me/Library/Developer/Xcode/DerivedData/gtests-fgfrckirrlestcgfahvvtwdhgndr/Build/Products/Debug -F/Users/Me/Library/Developer/Xcode/DerivedData/gtests-fgfrckirrlestcgfahvvtwdhgndr/Build/Products/Debug -F/Library/Frameworks -filelist /Users/Me/Library/Developer/Xcode/DerivedData/gtests-fgfrckirrlestcgfahvvtwdhgndr/Build/Intermediates/gtests.build/Debug/gtests.build/Objects-normal/x86_64/gtests.LinkFileList -mmacosx-version-min=10.10 -stdlib=libc++ -lgtest_main -framework gtest -lgtest -Xlinker -dependency_info -Xlinker /Users/Me/Library/Developer/Xcode/DerivedData/gtests-fgfrckirrlestcgfahvvtwdhgndr/Build/Intermediates/gtests.build/Debug/gtests.build/Objects-normal/x86_64/gtests_dependency_info.dat -o /Users/Me/Library/Developer/Xcode/DerivedData/gtests-fgfrckirrlestcgfahvvtwdhgndr/Build/Products/Debug/gtests

Я думаю, структура действительно содержит только заголовки файлов, и я также должен добавить libgtest_main.a и libgtest .a в какой-то каталог, но я не нашел подходящую папку. Что мне нужно сделать?

ответ

0

Вам необходимо установить пути поиска компоновщика проекта для обеих отладочных и релизных сборок.

Вы можете установить, чтобы быть что-то вроде: $(PROJECT_DIR)/Library/Frameworks

$(PROJECT_DIR) Используйте для выравнивания поиска путей, а не просто в том числе статический путь.

+0

У меня его нет. В моем каталоге проектов нет библиотеки/рамок. В любом случае я просто написал эти заметки в LinkerSearchPath, сделал эти папки, добавил .framework и .a-файлы там. Таким образом, я получил еще одну ошибку: Неопределенные символы для архитектуры x86_64: "testing :: internal :: EqFailure (char const * ... td :: __ 1 :: allocator > const &, bool)", на которые ссылаются: тестирование :: AssertionResult ... в main.o ld: символ (-ы) не найден для архитектуры x86_64 clang: ошибка: команда компоновщика не удалась с кодом выхода 1 (используйте -v, чтобы увидеть вызов) –