我目前正在评估嵌入式项目的不同构建系统(例如:基于 FreeRTOS),我遇到了介子。我觉得很好,主要是有一个交叉构建定义文件来定义我的项目需要如何编译的想法。
不过,我确实对一些基本选项有疑问,例如:
- b_pch
- b_staticpic
也就是说,默认情况下,设置为true
。在我的项目中,这些选项会生成错误的二进制文件...
正如介子所提出的,目前的解决方案是:
meson debug --cross-file boards/SensGate/meson_config_stm32l4_gcc8.ini -Db_pch=false -Db_staticpic=false
cd debug && ninja hex
但不知何故,我觉得必须在交叉构建定义文件之外定义编译和链接器选项并不好......
我想知道是否有办法覆盖文件本身中的这些选项......
如果不是,你认为我应该在介子项目中创建一张票来请求这个功能吗?
我希望是这样的:
[binaries]
c = 'arm-none-eabi-gcc'
[buildin_option] # New section?
b_pch = false
b_staticpic = false
[properties]
objcopy = 'arm-none-eabi-objcopy'
objcopy_args = [
...]
c_args = [
...]
c_link_args = [
...]
[host_machine]
...