Я пытаюсь создать модульный тест googletest для проверки концепции в качестве новой среды модульного тестирования, которую мы могли бы использовать.В googletest есть два способа написания модульного теста: с основным или без основного.Если вы не определили main, вы можете создать ссылку в библиотеке gtest_main, которая включает в себя функцию main (), что экономит ваше время.В моей среде мы используем Jam для создания бинарных файлов.Я получил двоичный файл для компиляции с main () в моем коде и с использованием библиотеки libgtest, но я ищу, как собрать его в Jam без основного.
Базовый случай (с main ()функция):
Я могу построить двоичный файл с этим:
Main MyUnitTestBinary : MyClass.cpp ;
LinkLibraries MyUnitTestBinary : libgtest ;
Library libgtest : $(GTEST_DIR)/src/gtest-all.cc ;
Разбитый регистр (без функции main ()):
Я не могупостроить двоичный файл с этим.Я вижу много ошибок при попытке связать объекты:
Main sample1_unittest : sample1.cc sample1_unittest.cc ;
LinkLibraries sample1_unittest : gtest_main ;
Library gtest_main : $(GTEST_DIR)/src/gtest_main.cc ;
Я получаю много ошибок компоновщика, связанных с неопределенной ссылкой на бла.Похоже, что неопределенная ссылка исходит из пространства имен testing :: internal, которое не является частью моего кода.
Есть какие-нибудь мысли о том, как я могу на это напасть, или поищите дополнительные подсказки по проблеме?