Как правильно настроить googleTest на OS X помимо XCode
Как настроить gTest, чтобы я мог связать aganist с библиотекой? Я буду кодировать в vim, поэтому я просто хочу установить библиотеки, в отличие от настройка XCode. Цель состоит в том, чтобы связать проект с библиотекой, установив -lgtest
как флаг компоновщика и необязательно, если я не написал свою собственную тестовую mainroutine, явный -lgtest_main
флаг.
3 ответов
перед началом убедитесь, что вы прочитали и поняли это примечание от Google! Этот учебник упрощает использование gtest, но может ввести неприятные ошибки.
1. Получить googletest framework
$ wget https://github.com/google/googletest/archive/release-1.8.0.zip
или получить его стрелка. Я думаю, я не буду manitain это маленькое руководство, так что если вы наткнулись на него, и ссылки устарели, не стесняйтесь редактировать его.
2. Распакуйте и создайте google тест
$ unzip gtest-1.8.0.zip
$ cd gtest-1.8.0
$ ./configure
$ make
3. "Установить" заголовки и библиотеки в вашей системе.
$ sudo cp -a include/gtest /usr/include
$ sudo cp -a lib/.libs/* /usr/lib/
gTestframework теперь готов к использованию. Только не забудьте связать свой проект с библиотекой, установив -lgtest
как флаг компоновщика и необязательно, если вы не написали свою собственную тестовую mainroutine, явный -lgtest_main
флаг.
Отсюда вы можете пойти в Googles документация о рамках чтобы узнать, как это работает. Удачи в кодировании!
рекомендуется, чтобы вы связывали статически. Нет никакого секрета. Немного оффтоп, я использую CMake в мои проекты, которые я рекомендую, и здесь (https://github.com/oblitum/operations) у меня настройка очень простой скелет проекта, что ссылки на gmock и gtest (это также советовать Google, который вы используете тот же gtest с gmock, когда вы используете gmock). В external
в папке находятся внешние файлы CMake, которые фактически импортируют gtest и gmock через ExternalProject_Add
. В образце, я установка URL
как путь к файлу в моей системе, где загружаются gmock и gtest, но, если вы проверите CMake ExternalProject_Add
docs вы можете видеть, что URL-адреса Загрузки, URL-адреса онлайн-репозитория также доступны, что может позволить вашей сборке загружать gtest и gmock и кэшировать его автоматически.
Я думаю cmake это простой способ настройки и использования gtest на OSX. Он работает без ручного копирования файлов. Распакуйтеgooletest-релиз-1.8.0, потом
cd googletest-release-1.8.0
# create a build directory
mkdir build
cd build
# build configuration
cmake .. -DBUILD_GTEST=ON -DBUILD_SHARED_LIBS=ON
# build it
make
# installation
sudo make install
после этого вы можете легко включить gtest в свой проект с помощью команд cmake
# sets GTEST_INCLUDE_DIRS and GTEST_LIBRARIES
find_package( GTest REQUIRED )
# adds the gtest include directory
include_directories( ${GTEST_INCLUDE_DIRS} )
# links gtest
target_link_libraries( yourTestApp ${GTEST_LIBRARIES} )