котором добавляется add_executable таргет. В нем добавляется через add_subdirectory Еще один исполняемый файл( тесты на базе GTest). В чем проблема- когда выставляю сборку релизной конфигурации и подтягиваю GTest из конана- конан подхватывает релизную конфигурацию библиотек GTest и первый бинарь собирается нормально, второй вылетает при сборке с ошибками:
gmock_main.lib(gtest-all.obj) : error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2' in buttons_driver_test.obj . Похоже, что тесты собираются в Debug-конфигурации, хотя CMakeLists рутовому проставлена сборка в Release. Как можно этот параметр прокинуть для subdirectory?
генератор у симейка какой? нинжа, мейкфайл, студийные проекты? а у конана?
Это запуск CMake+Conan: https://pastebin.com/s5h30HNe Это из github actions: - name : Get the latest CMake version uses: lukka/get-cmake@latest - name: Run CMakeLists generation for MSVC compiler uses: lukka/run-cmake@v2 with: cmakeGenerator: Ninja cmakeListsOrSettingsJson: CMakeListsTxtAdvanced cmakeListsTxtPath: ${{ github.workspace }}/Firmware/CMakeLists.txt cmakeBuildType: Release cmakeAppendedArgs: '-DPACKAGE_TESTS=ON -DTARGET_PLATFORM:STRING="FIRMWARE_SIMULATOR" -DCMAKE_BUILD_TYPE:STRING=Release' buildDirectory: ${{ env.buildDir }}
Обсуждают сегодня