我们正在为嵌入式 ARM/Linux 设备编写应用程序。使用交叉编译器、Eclipse 和 Ninja 在 Windows PC 上进行开发。CMake 目前可以创建适合预期目的的构建脚本。
一旦项目被推送(通过 Git)到服务器,我们就会在连接到网络的嵌入式设备上运行单元测试。
在我们在设备上尝试之前,我们正在尝试实现可以在 PC 上运行的单元测试。这意味着使用 MinGW GCC 本地构建——当然我们不能在 PC 上启动 ARM Linux 可执行文件。
即使我们切换工具链,启动 CMake 为 Ninja 重建规则集,或者创建两个构建目录,一个用于 PC,一个用于 ARM,问题仍然是 CMake 将尝试运行测试可执行文件,然后在构建期间进行单元测试将在 ARM 版本上尝试。
我们如何配置构建(通过 CMake)来创建两者 - 而不是尝试在 PC 上运行交叉编译的构建?