Подтвердить что ты не робот

Как правильно настроить googleTest на OS X в стороне от XCode

Как настроить gTest, чтобы связать аганиста с библиотекой? Я буду кодировать в vim, поэтому просто хочу установить библиотеки, в отличие от XCode setup. Цель состоит в том, чтобы иметь возможность связать проект с библиотекой, установив -lgtest в качестве флага компоновщика и, при желании, если я не написал свой собственный тег mainroutine, явный флаг -lgtest_main.

4b9b3361

Ответ 1

Прежде чем начать, убедитесь, что вы прочитали и поняли эта заметка от Google! Этот учебник позволяет использовать gtest легко, но может содержать неприятные ошибки.

1. Получить раму googletest

$ wget https://github.com/google/googletest/archive/release-1.8.0.zip

Или получить его рука. Думаю, я не буду манить этот маленький How-to, поэтому, если вы наткнулись на него, и ссылки устарели, не стесняйтесь его редактировать.

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 documentation о структуре, чтобы узнать, как она работает. Счастливое кодирование!

Ответ 2

Он советует вам статически ставить ссылку. Там нет секретов. Будучи немного оффтопическим, я использую 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-адреса, также доступны онлайн-адреса репозитория, который позволяет вашей сборке загружать gtest и gmock и автоматически кэшировать его.

Ответ 3

Я думаю, что cmake - это простой способ настройки и использования gtest на OSX. Он работает без ручного копирования файлов. Unzip gooletest-release-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} )