自动代码审查服务LGTM使用“围绕流行的构建工具(如 pkg-config、CMake 和 qmake)的包装脚本”来检测构建过程中丢失的文件并自动安装相应的包。
我的项目使用CMake
,但要从 Qt 获得一些路径,我需要qmake
在一个地方:
get_target_property(qt5_qmake Qt5::qmake IMPORTED_LOCATION)
execute_process(COMMAND ${qt5_qmake} -query QT_INSTALL_TRANSLATIONS OUTPUT_VARIABLE QT_QM_PATH)
这些行在我测试过的任何地方都可以正常工作,除了在 LGTM 环境中。在 LGTM 环境中,所需的信息不会放入QT_QM_PATH
,而是打印出来(在构建日志中可见)。
我强烈怀疑包装器会导致这种情况,因为其他命令按预期工作。
问题:我怎样才能阻止 LGTM 包装qmake
或如何欺骗cmake
捕获包装的输出qmake
?