我正在尝试构建自己的本地应用程序。由于snapcraft
缺乏qbs
支持,我正在尝试开发自己的对 qbs 的被动支持。
无论如何,只需按以下步骤操作,在 QtCreator 中,qbs 项目允许安装选项:
以下是我目前对 QBS 所做的事情:
$ tree ./bin
./bin
└── category-scraper
0 directories, 9 files
$ tree ./lib
./lib
├── libqconsoletoolkit.so
├── libqnetworktoolkit.so
├── libqparsingtoolkit.so
├── libqsnappytoolkit.so
└── libqunicodetoolkit.so
0 directories, 15 files
当我运行该应用程序时:
$ ./bin/category-scraper
./bin/category-scraper: error while loading shared libraries: libqnetworktoolkit.so: cannot open shared object file: No such file or directory
这是有道理的,因为ldd
:
$ ldd bin/category-scraper
linux-vdso.so.1 (0x00007ffe23b57000)
libQt5WebEngineWidgets.so.5 => /home/akiva/Programming/Qt/5.11.1/gcc_64/lib/libQt5WebEngineWidgets.so.5 (0x00007f843ca44000)
libQt5Widgets.so.5 => /home/akiva/Programming/Qt/5.11.1/gcc_64/lib/libQt5Widgets.so.5 (0x00007f843c200000)
libQt5Network.so.5 => /home/akiva/Programming/Qt/5.11.1/gcc_64/lib/libQt5Network.so.5 (0x00007f843be6b000)
libQt5Core.so.5 => /home/akiva/Programming/Qt/5.11.1/gcc_64/lib/libQt5Core.so.5 (0x00007f843b711000)
libqnetworktoolkit.so => not found
libqunicodetoolkit.so => not found
libqparsingtoolkit.so => not found
libqconsoletoolkit.so => not found
libqsnappytoolkit.so => not found
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f843b388000)
令我困惑的是:
$ echo $LD_LIBRARY_PATH
没有产生任何结果,并且环境变量甚至不存在,直到我尝试手动设置它......这也不起作用。
为什么这个环境变量是空的,ldd 没有这个变量如何链接,我该怎么做才能让它找到.so
我定义的文件?
谢谢。