如何安装两个版本的Qt并告诉应用程序使用哪个?

Mit*_*itu 5 qt versions d

我正在Qt中开发一个应用程序,但是使用D语言(使用QtD绑定).我注意到我的应用程序崩溃了Qt 4.7.x,所以我需要使用Qt 4.6.2.但是在我的系统中安装了Qt 4.7.2.不幸的是,我既没有让QtD使用最新的Qt版本,也没有(我担心)依靠QtD开发人员......

我需要将我的应用程序安装在系统Qt 4.6.2库中并使用它,但让所有其他应用程序仍然使用Qt 4.7.2.可能吗?如果是,那该怎么办呢?

Jad*_*aMD 5

你的问题的答案是Qt的版本由你用来生成Makefile的qmake决定.

/opt/QtSDK/Qt-4.6.2/bin/qmake

/opt/QtSDK/Qt-4.7.3/bin/qmake

每个人都将使用目录中的库.


wee*_*ens 1

可以将库的多个版本安装到一个系统中,并且所有包管理器(rpm、deb)都支持这种开箱即用的方式。

这些库只是名称不同。例如,如果 id 做

ls /usr/lib/ | grep libcurl
Run Code Online (Sandbox Code Playgroud)

在我的系统上,我会得到:

libcurl-gnutls.so.3
libcurl-gnutls.so.4
libcurl-gnutls.so.4.2.0
libcurl.so.3
libcurl.so.4
libcurl.so.4.2.0
Run Code Online (Sandbox Code Playgroud)

,于是,同一个库的不同版本就愉快地生活在一起了。

您所需要做的就是链接所需版本的 QT 库。您需要在链接器选项中指定它(不记得确切的选项)。