linux下用QLibrary载入动态库

在win下用QLibrary 载入动态库并不难,代码如下

cpp 复制代码
QString strDll = "defineLib.dll";
QLibrary* pLibrary = new QLibrary(strDll);
if (pLibrary->load())
{
   ///成功
}
else
{
   ///失败
}

在做代码移植到Ubuntu上的时候把dll改成so,但是发现,动态库都不能载入了。代码如下。

cpp 复制代码
QString strDll = "libdefineLib.so";
QLibrary* pLibrary = new QLibrary(strDll);
if (pLibrary->load())
{
   ///成功
}
else
{
   ///失败
}

测试动态库也是用Qt Creator生成的,也放到运行路径下了。想不明白,只能用绝对路径了,但是代码增加了一些,总感觉不太好。

后来突然想起来,Linux下都是用"./a.out" 运行程序的。加上这个试试吧。没想到竟然成功了。

cpp 复制代码
QString strDll = "./libdefineLib.so";
QLibrary* pLibrary = new QLibrary(strDll);
if (pLibrary->load())
{
   ///成功
}
else
{
   ///失败
}

期间还犯了一个错误,代码里面的动态库名称大小写没写对,导致无法载入动态库,这个也是要注意的。

相关推荐
别动我齐刘海4 小时前
C++ 工程化学习
java·linux·前端·c++·学习·机器学习·机器人
玖石书6 小时前
Ubuntu 24.04 UFW 全命令攻略:从入门到端口开放实战
linux·运维·ubuntu
xiaoqiMikko6 小时前
Linux 实战(七):useradd、sudoers、umask、SGID、软链 —— 三台真机实测
linux·centos
沫璃染墨6 小时前
《Qt从零入门系列(十三):QSS样式表详解——从选择器与层叠规则到控件美化实战》
开发语言·css·c++·qt·ui·qt6.3·qss
拂拉氏8 小时前
【知识讲解】 Linux之动静态库的了解
linux·运维·服务器·动静态库
Fcy6488 小时前
Linux下 五种IO模型的认识与⾮阻塞IO的实现
linux·服务器·io
Mikko79 小时前
Linux 重启后日志没了?进程被 OOM 杀了去哪看?logrotate 之后日志还往旧文件写?三台真机实测日志与性能排查
linux·运维·centos
书生执笔画浮沉9 小时前
分享一个开源小工具CAdapt
linux·c·gnu·glibc·kernel·升级·灵感
mounter6259 小时前
Linux 内核热升级(Live Update)技术详解:PCI、VFIO 与 IOMMU 子系统的演进与实战解析引言
linux·linux kernel·kernel·iommu·vfio
砚凝霜10 小时前
【软考信息安全】第十九章 Unix/Linux安全分析与防护
linux·安全·unix