我需要关于 如何从 makefile 调用外部程序以获取一些数据以及如何在编译时将这些数据出售给程序?
嗨朋友们。我需要我构建的每个应用程序都有自己唯一的 ID。 要求是:
我有一个 id.hpp 文件,其内容为:
const uint8_t ID[16] = UNIQUE_ID;
我有一个 python 程序“makeid.py”,它将为我生成一个 id。现在我需要
make
命令来调用我的“makeid.py”程序并将生成的字符串出售给该文件。
我知道如何在构建过程中使用 -D 开关将一些参数传递给程序,但我想编辑 makefile 以便自动完成,以便它从每个程序集的程序中提取一个新的 id。
我在哪里读过一次,但现在不记得了。你当然知道怎么做,Google没有给我任何建议,它只是指一些uuid和nodeid...
由于您实际上没有向我们展示您的 makefile 目前是如何工作的,我们无法根据您的实现为您提供答案。
所以,我只想说你可以做这样的事情:
CPPFLAGS += -DUNIQUE_ID="$$(makeid.py)"
这样就可以了,假设
makeid.py
程序将 ID 打印到 stdout 而没有任何“额外”文本,您正在构建 C++ 代码,并且您的编译规则以正常方式使用标准变量。