我正在做一个cmake C/C++嵌入式项目。我有一个跨平台的应用程序。它将在基于PC的模拟器以及嵌入式(STM32)目标上运行。一个通用的硬件抽象层允许这样做。我遇到的问题是STM32的HAL库包含STM32的启动代码(asm)。构建并链接HAL库后,启动代码将消失。STM32 library else if PC ...)可能是我缺乏如何使用子文件夹的cmake知识,这让我很难做到这一点,或者是糟糕的项目结构!我非常希望得到一些建议或反馈,告诉我如何组织这段代码,让特定于<
我面临的第一个问题是何时运行cmake,我不想经常这样做,因为这需要一些时间。在阅读之后,我清楚地知道它只需要运行一次,所以我添加了一个条件来检查Makefile是否已经存在。如果是的话,就不会(直接)调用cmake。
第二个问题,以及这个问题所涉及的问题,是如何保持CMakeCache.txt变量的更新。我认为cmake必须提供一些命令来只更新变量,但是我找不到这样的命令。据我所知,推荐的方法是使用cmake来更改CMakeCache.txt变量。if Makefile does no
我想在我们大学的HCP服务器上编译我的程序,我把它作为一个CMake项目创建在我的笔记本电脑上,但是服务器没有安装CMake,而且我不能安装它(有限的存储空间)。如何在不使用CMake的情况下编译服务器上的项目而只编译makemake: /usr/local/bin/cmake: Command not