直接使用别人编译好的qt库,省事,不用编译,但也会出现一些问题。
一、问题描述。
使用现成的qt库,进行编译,报错,qt没有正确安装,请运行make install进行安装。
:-1: error: The Qt version is invalid: Qt version is not properly installed,please run make install.”
二、问题分析。
1、qmake是通过qt安装编译生成的,在生成时里面内嵌了一些相关的绝对路径。直接拷贝过来使用,自己的路径与原来不同,就会出现此问题。
2、查看qmake文件。
使用16进制编译器或qtcreator直接打开qmake文件,进行搜索十六进制数“71 74 5f 70 72 66 78 70 61 74 68 3d”或ascii码“qt_prfxpath=”,此时可以看到qmake的编译安装路径为“/usr/local/arm/qt4.8.5”。
三、解决方案。
1、方案一:将qt库放置于与qmake编译安装相同的路径下。
2、方案二:直接修改qmake为自己的放置路径。修改时路径应当注意,新路径比原路径长,长出的部分,覆盖后面的00;新路径比原路径短,把多余的非00部分,改为00。不能改变原文件的大小。搜索十六进制数“2f 75 73 72 2f 6c 6f 63 61 6c 2f 61 72 6d 2f 71 74 34 2e 38 2e 35”或ascii码“/usr/local/arm/qt4.8.5”,可以发现有多处内嵌此路径,依次修改,保存。
3、方案三:使用qt.conf文件。在qmake同一文件夹下,创建一个qt.conf的文本文件。内容如下,/...为本机qmake所在的上一级绝对路径。文件要具有读写权限。
[paths]
Prefix = /...