Компиляция Google Test Framework с помощью компилятора Mingw - PullRequest
3 голосов
/ 26 января 2012

У меня есть проект Qt, и я хотел использовать каркас для тестирования Google GoogleTestFramework , чтобы выполнить тест Google.Фреймворк прекрасно скомпилирован в Linux.

Мне удалось скомпилировать библиотеки в Windows, используя советы, приведенные в следующей ссылке: Установка Gtest без pthreads

Следующий советне позволяйте мне компилировать библиотеки из-за ошибок из-за pthreads: Sackoverflow компилируется с MSYS

У меня есть:

  • GNU Make 3.81 для make.exe
  • GNU Make 3.82 для mingw32-make
  • CMake 2.8.7
  • QT 4.7.4
  • Qt MingW gcc v 4.4.0

Когда я пытаюсь скомпилировать мой тестовый проект, я получаю сообщение об ошибке: неопределенная ссылка на файл __chkstk_ms. Файл не найден: gtest-all.cc

Вот мой код проекта qmake (у меня естьрасшифровал код).

QT       += core gui

DEPENDPATH += . headers src ../FastTrans/headers ../FastTrans/src ../FastTrans/forms      C:/MinGW/msys/1.0/home/zakharan/gtest-1.6.0/include
INCLUDEPATH += . headers src ../FastTrans/headers ../FastTrans/src ../FastTrans/forms     C:/MinGW/msys/1.0/home/zakharan/gtest-1.6.0/include

TARGET = tstall
#CONFIG   += console
#CONFIG   -= app_bundle

TEMPLATE = app

HEADERS += ../FastTrans/headers/shortcutsactionsitem.h \
../FastTrans/headers/shortcutsactionsmodel.h \
../FastTrans/headers/isavesettings.h

SOURCES += ../FastTrans/src/shortcutsactionsitem.cpp \
../FastTrans/src/shortcutsactionsmodel.cpp \
../FastTrans/src/isavesettings.cpp \
src/tstshortcutsactionsitem.cpp \
src/tstshortcutsactionmodel.cpp

INCLUDEPATH += $$PWD/
DEPENDPATH += $$PWD/

win32: LIBS += C:/MinGW/msys/1.0/home/zakharan/gtest-1.6.0/mybuid/libgtest.a
win32: LIBS += C:/MinGW/msys/1.0/home/zakharan/gtest-1.6.0/mybuid/libgtest_main.a

1 Ответ

0 голосов
/ 12 апреля 2012

Google рекомендует следующее для компиляции в Windows :

### Windows Requirements ###

  * Microsoft Visual C++ 7.1 or newer

### Cygwin Requirements ###

  * Cygwin 1.5.25-14 or newer

Я слышал, что некоторые люди используют MingW для компиляции.Предположительно, компиляция с помощью MingW может быть немного быстрее, потому что нет необходимости в уровне сопоставимости между ОС и приложением.

Но, поскольку это только для целей тестирования разработчиков, Cygwin должно хватить.Просто скачайте версию, которую рекомендует Google.


См. Также:

Скомпилируйте проект Cygwin в Eclipse

Как Cygwin сравнивает с MingW для переноса приложений Linux на Windows

...