type
status
date
slug
summary
tags
category
icon
password
我在 Explosion 游戏引擎项目中使用了 libclang 来做头文件解析,然后自动注册反射信息,在 macOS 上需要填入系统头文件目录来保证 libclang 处理头文件时编译通过从而正常解析。奈何苹果三天两头给我搞事情,动不动就改一下头文件目录,特别烦。
有个根治的方法,就是每次先使用系统自带的 Apple Clang++ 查询一下头文件目录,将其作为 libclang 的参数即可。
查询方法也很简单,直接随便写一个可以编译通过的 cpp 文件,然后直接使用 Apple Clang++ 进行编译,编译时带 -v 参数即可:
之后会输出一大串编译该文件时所使用到的宏、编译链接选项、目录等,我们直接找到下面这一段,这就是我们要的系统头文件目录:
最后需要的部分是:
- 作者:Kindem
- 链接:https://www.flyandnotdown.com/post/1458fb78-2f78-8075-8930-ff3116b0f6da
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。