Russian Qt Forum
Сентябрь 30, 2024, 12:27 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Google Test Framework 1.6.0 и Qt Creator в Windows  (Прочитано 5206 раз)
kaktus999
Гость
« : Сентябрь 15, 2011, 15:22 »

Здравствуйте. Если создал тему не в том разделе, прошу модераторов переместить.
Сам долго мучился с этим вопросом, нашел решение и теперь нужно срочно поделиться.
Мне очень нравиться Google Test Framework и Google Mock Framework, и я предпочитаю использовать их вместо qtest (тем более в последнем нет инструментов для mock), а также мне очень нравиться Qt. Вся проблема заключалась в том, чтобы подключить gtest к Qt Creator в Windows. После долгих поисков я таки нашел решение, и поскольку в русскоязычном пространстве нет никакой информации на эту тему, решил поделиться:

0. Скачиваем Google Test Framework
1. Скачиваем и устанавливаем Cygwin
2. Скачиваем и устанавливаем MinGW
3. Копируем файлы из {MinGW}\ в {Cygwin}\
4. Скачиваем и устанавливаем CMake
5. Скачиваем и устанавливаем Python(не уверен, что нужно)
6. Запускаем MSYS из папки {Cygwin}\msys\1.0\msys.bat
7. Выполняем cd {gtest}
8. Выполняем ./configure или cmake -G "MSYS Makefiles" с параметром --with-pthreads=no
9. Выполняем make
10. Теперь библиотеки лежат в lib/
11. Добавить в .pro или make файл:
LIBS += {gtest}/lib/.libs/*.a
INCLUDEPATH += {gtest}/include
Аналогично для gmock

Все, теперь можно спокойно пользоваться.
Инструкция по gtest: http://code.google.com/p/googletest-translations/wiki/GoogleTestPrimerRussian
Инструкция по gmock: http://code.google.com/p/googletest-translations/wiki/GoogleMockForDummiesRussian

P.S.
{gtest} - директория, где распакован gtest
{Cygwin} - директория Cygwin и т.д.
P.P.S.
Хочу обратить внимание, что этот способ работает, только если используемый компилятор - MinGW. Если же используется компилятор MSVS2008, то и сборка библиотек gtest и gmock должна происходить в нем.
« Последнее редактирование: Сентябрь 18, 2011, 11:25 от kaktus999 » Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.044 секунд. Запросов: 20.