Error on execution -version `Qt_5' not found required by

版权声明:本文为博主原创文章,未经博主允许不得转载。转载请注明出处:http://blog.csdn.net/neuq_jtxw007 https://blog.csdn.net/neuq_jtxw007/article/details/78772483

在调试qt项目时遇到的问题

  这句error的意思是在/usr/lib/x86_64-linux-gnu/下找不到需要的这些库:libQt5Core.so.5、libQt5Widgets.so.5、libQt5X11Extras.so.5、libQt5Gui.so.5

解决方案

  可以在~/.bashrc 或者 ~/.bash_profile 或者 /etc/bashrc 或者 /etc/profile 这四个文件中任选一个添加如下声明即可,其中LD_LIBRARY_PATH是你提供上述缺少库的路径,不同路径之间用”:”隔开

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/your/dynamic/library/path/

  但是上述四个文件效果不一样,分别如下:

  1. /etc/profile:为系统的每个用户设置环境信息,当用户第一次登陆时,该文件被执行。如果你有对/etc/profile有修改的话必须得重启,你的修改才会生效,此修改对每个用户都生效

  2. /etc/bashrc: 为每一个运行bash shell的用户执行此文件。当bash shell被打开时,该文件被读取。如果你想对所有的使用bash的用户修改某个配置并在以后打开的bash都生效的话可以修改这个文件,修改这个文件不用重启,重新打开一个bash即可生效。

  3. ~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。此文件类似于/etc/profile,也是需要需要重启才会生效,/etc/profile对所有用户生效,~/.bash_profile 只对当前用户生效

  4. ~/.bashrc: 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该文件被读取。(每个用户都有一个.bashrc文件,在用户目录下)
    此文件类似于/etc/bashrc,不需要重启生效,重新打开一个bash即可生效,/etc/bashrc对所有用户新打开的bash都生效,但~/.bashrc只对当前用户新打开的bash生效。

      在登陆之前,系统处于开机启动的流程中,会自动的处执行一系列的脚本文件,以便设置好系统的环境参数,这个过程并不叫做启动完毕,真正的启动完毕是在出现登陆界面时候,在此之前只设置系统的参数,并不会去设置个人用户的参数,个人用户的参数要在用户输入用户名密码以及通过验证后才设置。
      单个用户——–局部———对于一些局部任务如果要它登陆后立即执行就放在~/.bash_profile脚本中。
      系统或者系统的所有用户———全局—–对于全局任务如果要所有用户中不管哪个用户登陆后立即执行就放在/etc/profile脚本中。

      另外,需要注意的是,如果配置缺少的动态库会用于开机(用户登陆之前),则需要将动态库配置到/etc/ld.so.conf中或者软链到/usr/lib/下。

      动态链接时、执行时搜索路径顺序:
      1.编译目标代码时使用-L指定的动态库搜索路径;
      2.环境变量LD_LIBRARY_PATH指定的动态库搜索路径;
      3.配置文件/etc/ld.so.conf中指定的动态库搜索路径(更新库配置ldconfig /usr/lib 查看库配置ldconfig -p | grep);
      4.默认的动态库搜索路径/lib;
      5.默认的动态库搜索路径/usr/lib。

猜你喜欢

转载自blog.csdn.net/neuq_jtxw007/article/details/78772483
今日推荐