对我来说,修改构建代码的复杂makefile嵌套不是一个选项,在不同的地方,它们构建了到非常特定的编译器的绝对路径,例如/home/arm2gcc/gcc-arm-none-eabi-8-2018-q4-major/bin/arm-none-eabi-gcc
这使得很难将ccache用作前缀或将其放在路径的第一位。
因此,我想知道是否将我个人机器上的编译器安装转移到例如/home/arm2gcc-real
,并在/home/arm2gcc
中放入重定向到真正编译器的伪脚本。
有人能建议怎么做吗?或者有更好的方法吗?
免责声明:我对Ccache和CMake的经验有限
你能试着在根CMakeLists.txt文件中添加这个吗:
find_program(CCACHE ccache)
if(CCACHE)
set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE ${CCACHE})
endif()
如果这不起作用,我想我们可能需要更多关于如何在CMakeLists.txt文件中准确设置编译器的信息。
我建议:
mv .../bin/arm-none-eabi-gcc .../bin/arm-none-eabi-gcc.real
然后,创建一个脚本,用以下内容替换.../bin/arm-none-eabi-gcc
:
#!/bin/sh
exec ccache ${0}.real "$@"