You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Qt Creator中用QMake/CMake链接.so文件报错求助

Qt链接.so库触发"file format not recognized"错误的解决

问题场景

在Qt Creator中尝试链接libWIC_SDK.so库时,无论是用QMake还是CMake配置构建脚本,都遇到了相同的链接错误。我原本的QMake配置代码如下:

INCLUDEPATH += "/opt/workswell/wic_sdk/include"
LIBS +=-L/opt/workswell/wic_sdk/lib
LIBS += -lWIC_SDK

之前用这套逻辑链接Windows下的.dll库完全正常,但换到Linux链接.so时,编译器抛出错误:

/opt/workswell/wic_sdk/lib/libWIC_SDK.so:-1: error: file not recognized: file format not recognized

查了不少资料都说.so和.dll的链接方式一致,当时完全搞不懂问题出在哪。

问题根源

后来才发现,这个.so库是64位的,但我当前使用的编译器是32位版本,架构不匹配导致链接器无法识别库文件,而错误提示的描述确实有误导性,没直接点明架构问题。

解决办法

  • 换成64位的编译器工具链,重新编译项目并链接库
  • 如果没办法更换编译器,就联系库的提供商要对应32位版本的.so库

内容的提问来源于stack exchange,提问作者James Rogers

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 03:31:06