linux下,qt编译的程序需要哪些依赖库

上周朋友在Linux上编译了一个Qt程序,发现需要安装几个依赖库:build-essential、libgl1 -mesa-dev、libx1 1 -dev和字体渲染库。
如果不安装,编译时会出错,找不到头文件,链接失败。

2 02 3 年,我帮另一个朋友在程序运行时检查依赖库。
使用 ldd 命令,我验证了这些是核心库:libQt5 Core.so 和 libQt5 Gui.so。
如果没有安装这些库,程序将无法运行。

另外,朋友提到,如果你的程序使用了第三方库,比如Python的.so模块,你应该确保库和程序在同一个目录下,或者通过LD_LIBRARY_PATH环境变量指定路径。
此外,第三方库的ABI必须与您的Qt版本兼容。

但是,动态链接器配置也很重要。
您可能需要更新动态链接器缓存、运行 sudoldconfig 或修改库搜索路径并编辑 /etc/ld.so.conf。
您还应该注意版本兼容性。
例如,Qt5 .3 可能存在安全漏洞,因此我们建议升级到Qt6 .x。

部署时,必须打包所有依赖库或提供安装脚本,以确保用户因环境中缺少组件而无法使用该程序。
我对此不太确定,但我认为配置完这些依赖​​项后,你的 Qt 程序将能够在 Linux 上可靠地运行。
由你决定。

linux qt自定义库找不到

qt 在头文件中判断操作系统

这是一个陷阱。
不要相信 Qt 的 Q_OS_ 宏,它们并不总是可靠的。

不要这样做,而是直接检查系统类型,例如B. 使用 QOperatingSystemVersion。