Linux Mint下Code::Blocks编译X-Plane 11 SDK时出现fPIC链接报错
编译报错解决方法
核心错误原因
你将-fPIC参数添加到了链接器选项,位置错误。-fPIC是编译阶段参数,需要在生成.o目标文件的编译过程中生效,你当前的编译日志里,第一行编译源码的g++命令没有携带-fPIC,生成的目标文件不符合共享库的重定位要求,所以链接阶段会报错。
正确配置步骤
- 打开Code::Blocks对应项目的构建选项,选中你正在使用的构建目标(如Release,也可以直接选中顶层项目名让配置全局生效)
- 切换到编译器设置标签页,不要选链接器设置页
- 在
其他编译器选项输入框中添加-fPIC参数,确认保存 - 链接器选项里已添加的
-fPIC可以保留,不影响编译结果
附加警告修复
你日志里的字符串常量转char*警告,是X-Plane SDK的API参数类型兼容问题,把代码第108行的"Hello world!"修改为(char*)"Hello world!"即可消除警告。
验证操作
配置完成后,先执行项目的清理操作删除旧的目标文件,再重新执行完整构建即可解决报错。
内容的提问来源于stack exchange,提问作者SchneiH2
相关产品推荐
相关产品推荐

