本文主要参考了《Qt如何使用lib库封装界面》中提到的《Qt如何使用lib库封装界面》,虽然原文中说的是在Windows下的封装操作,但是经过我个人测试,只需要经过些许的改动,即可在Linux下实现封装界面到动态库中。
具体步骤,请参照上面文章中的建立过程,这里我直接给出源代码:
https://autumoon.lanzoui.com/iik78pw4qre
那么需要注意的地方就是库的调用方式:
这里给出Linux下测试过的调用范例:
#author:autumoon
#联系QQ:4589968
#日期:2021-06-16
#LIBS += /home/autumoon/QTProject/build-Tester-Desktop_Qt_5_13_2_GCC_64bit-Debug/libTester.so.1.0.0
INCLUDEPATH += /home/autumoon/QTProject/Tester
LIBS += -L/home/autumoon/QTProject/build-Tester-Desktop_Qt_5_13_2_GCC_64bit-Debug -lTester
可以看到,上面注释掉的调用方法不能正常调用,出现找不到库的错误,而下面的调用方法才能正确调用!
这与我之前写的一篇文章,调用Libcurl是相反的,在那篇文章当中,调用方法必须使用上面注释掉的方法,而使用下面的方法无法正常调用,个人猜测跟库的导出方式有关!
不过这个测试起来也简答,一种调用方式不行就尝试另外一种调用方式就好了,不过如果是QtCreator导出的库,直接使用上面非注释的调用方式即可!