当前位置: 首页 > news >正文

医药公司网站备案华为云免费服务器

医药公司网站备案,华为云免费服务器,cnnic可信网站必须做吗,网站admin目录名怎么改简介 linux系统下可执行程序运行时会加载一些动态库so,有一些是Qt的库,Qt的库会加载其他更基础的库。最后出包的时候需要把依赖的包整理到一个文件夹,来制作安装包。近期遇到已经将依赖的so文件拷贝至程序目录下,但还是调系统路径…

在这里插入图片描述

简介

  linux系统下可执行程序运行时会加载一些动态库so,有一些是Qt的库,Qt的库会加载其他更基础的库。最后出包的时候需要把依赖的包整理到一个文件夹,来制作安装包。近期遇到已经将依赖的so文件拷贝至程序目录下,但还是调系统路径下的动态库的问题。对问题排查过程中的技术手段进行整理备忘。

排查用到的命令工具

(1)ldd 命令

对一个Qt 窗口程序testDependSo进行ldd查看依赖的库,发现会依赖到系统路径/lib/usr/lib/,也会依赖到Qt安装路径下的库 /home/myb/Qt5.6.3/5.6.3/gcc_64/lib/0x00007f52b9427000 这个十六进制数字是 ldd 输出中各动态库的加载的基地址。

myb@myb-kylinV10:~/build-testDependSo-Desktop_Qt_5_6_3_GCC_64bit-Debug$ ldd testDependSo linux-vdso.so.1 =>  (0x00007fff635d8000)libQt5Widgets.so.5 => /home/myb/Qt5.6.3/5.6.3/gcc_64/lib/libQt5Widgets.so.5 (0x00007f857069b000)libQt5Core.so.5 => /home/myb/Qt5.6.3/5.6.3/gcc_64/lib/libQt5Core.so.5 (0x00007f856ff81000)libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f856fbff000)libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f856f9e9000)libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f856f61f000)libQt5Gui.so.5 => /home/myb/Qt5.6.3/5.6.3/gcc_64/lib/libQt5Gui.so.5 (0x00007f856ee2a000)libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f856ec0d000)libgobject-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007f856e9ba000)libgthread-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgthread-2.0.so.0 (0x00007f856e7b8000)librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f856e5b0000)libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007f856e29f000)libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007f856e08d000)libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f856dd53000)libGL.so.1 => /usr/lib/x86_64-linux-gnu/libGL.so.1 (0x00007f856dadf000)libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f856d7d6000)libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f856d5bc000)libicui18n.so.56 => /home/myb/Qt5.6.3/5.6.3/gcc_64/lib/libicui18n.so.56 (0x00007f856d122000)libicuuc.so.56 => /home/myb/Qt5.6.3/5.6.3/gcc_64/lib/libicuuc.so.56 (0x00007f856cd6a000)libicudata.so.56 => /home/myb/Qt5.6.3/5.6.3/gcc_64/lib/libicudata.so.56 (0x00007f856b387000)libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f856b183000)/lib64/ld-linux-x86-64.so.2 (0x00007f8570f15000)libffi.so.6 => /usr/lib/x86_64-linux-gnu/libffi.so.6 (0x00007f856af7b000)libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007f856ad0b000)libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f856aae9000)libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007f856a8c0000)libxcb-dri3.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0 (0x00007f856a6bd000)libxcb-present.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-present.so.0 (0x00007f856a4ba000)libxcb-sync.so.1 => /usr/lib/x86_64-linux-gnu/libxcb-sync.so.1 (0x00007f856a2b3000)libxshmfence.so.1 => /usr/lib/x86_64-linux-gnu/libxshmfence.so.1 (0x00007f856a0b1000)libglapi.so.0 => /usr/lib/x86_64-linux-gnu/libglapi.so.0 (0x00007f8569e80000)libXdamage.so.1 => /usr/lib/x86_64-linux-gnu/libXdamage.so.1 (0x00007f8569c7d000)libXfixes.so.3 => /usr/lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007f8569a77000)libX11-xcb.so.1 => /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x00007f8569875000)libxcb-glx.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-glx.so.0 (0x00007f856965c000)libxcb-dri2.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0 (0x00007f8569457000)libXxf86vm.so.1 => /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1 (0x00007f8569251000)libdrm.so.2 => /usr/lib/x86_64-linux-gnu/libdrm.so.2 (0x00007f8569040000)libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007f8568e3c000)libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f8568c36000)

(2)chrpath -c application,这个命令是查看程序的RPATHRPATH就是指定程序运行时从哪个路径加载依赖的动态库。如下代表程序依赖的库是在Qt的安装目录。

myb@myb-kylinV10:~/build-testDependSo-Desktop_Qt_5_6_3_GCC_64bit-Debug$ chrpath -c testDependSo 
testDependSo: RPATH converted to RUNPATH
testDependSo: RUNPATH=/home/myb/Qt5.6.3/5.6.3/gcc_64/lib

(3) chrpath(change run path),改变运行库的查找位置。下面的命令将运行库的查找位置改为可执行程序目录下的lib目录。

myb@myb-kylinV10:~/build-testDependSo-Desktop_Qt_5_6_3_GCC_64bit-Debug$ chrpath -r $ORIGIN/lib

linuxdeployqt 工具(个性化修改针对安装多个版本的QT版本)

(1)找到自己的qmake程序的安装路径,将路径写到linuxdeployqt目录下的qmakePath.txt文件中。

(2)执行命令:

./linuxdeployqt MyApp -appimage

KylinV10 X86版本的工具已上传至资源

http://www.yayakq.cn/news/330997/

相关文章:

  • 广州网站建设广州网络推广公司好最受欢迎的十大培训课程
  • 郎溪县建设局网站google关键词工具
  • cms免费企业网站wordpress设置专栏
  • 如何做购物网站推广做国外进口衣服的网站好
  • 公司建设网站需要注意什么网站效果检测
  • 宣传类的网站有哪些内容软件开发工程师前景
  • 公司做网站能够带来的好处wordpress cdn缓存配置
  • 网站上怎么做企业推广免费1级做看网站
  • 移动网站垂直电商网站如何做内容运营
  • 河间市网站建设公司如何在手机上学编程
  • 个人网站开发赚钱方向python的基本语法
  • 百度找不到 网站怎么注册一个电商平台
  • 爱站官网中国建设银行东营分行网站
  • 个人网站做淘宝客容易封吗医院如何做网站策划?
  • 做视频网站怎么对接云盘古诗网页设计素材
  • 工业设计的网站深圳网站建设及推广服务公司
  • 做英文网站可以申请补贴吗民制作网站哪家便宜
  • 深圳企业网站建设服务公司怎么对一个产品进行网络营销
  • 小说网站开发流程具体wordpress后台404
  • 哪里 教做网站带维护宁夏找人做网站多少钱
  • 网站建设傲京东购物网站怎么做
  • 设计企业网站步骤域名购买服务商
  • 怎样建设国外网站安全的响应式网站建设
  • 百度云建设网站廊坊网站制作服务
  • 学生网站模板义务 网站建设
  • 公司建设网站制作微网站开发哪家好
  • 免费制作二维码的网站网站页面链接怎么做
  • 电子商务网站的建设方法二手车网站源码下载
  • 铁岭免费移动网站建设网站后台账号密码忘记了
  • 上海专业网站建设机构网站开发干啥的