1

我是 CMake 初学者。这是一个我无法弄清楚的问题。我有一个看起来像这样的项目结构:

root
| common/
|   include/
|      public.h
|   src/
|      file-1.c
|      file-2.c
| win-exec/
|    main.c
| pico-exec/
|    main.c

win-exec是一个 Windows 可执行二进制文件,它依赖于common/. 它还依赖于 GLFW 和其他一些特定于 Windows 的库。

pico-exec是 Raspberry Pi Pico 的另一个可执行二进制文件,它依赖于common/. 这也依赖于 Pico SDK。

所以基本上我想要不同平台的不同可执行文件。

您将如何将其构建为 CMake 项目?可执行文件都需要编译公共代码,因为可执行文件需要为不同的体系结构构建。

是否可以定义不同的目标(使用单独的工具链)以某种方式重新编译过程中的公共代码?或者我应该在 CMake 之外使用批处理文件来解决这个问题?

4

0 回答 0