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

5
我正在使用QtD绑定编写一个D语言开发的应用程序。我注意到我的应用程序在Qt 4.7.x中会崩溃,因此我需要改用Qt 4.6.2。但是,在我的系统中已经安装了Qt 4.7.2。遗憾的是,我无法使QtD与最新版本的Qt协同工作,也不能指望QtD开发人员能够帮忙解决问题。
唯一需要做的是让我的应用程序安装在系统Qt 4.6.2库中并使用它,而让所有其他应用程序仍然使用Qt 4.7.2。是否有可能实现这一点?如果可以,那么如何操作呢?

你可以安装任意数量的不同qt版本,只需要查看此链接 https://github.com/g-konst/qt_installer。 - Konstantin
2个回答

5
您的问题的答案是,Qt的版本取决于您使用的qmake生成Makefile。每个版本将使用相应目录中的库文件。以下是示例:

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

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


1

可以在一个系统中安装多个版本的库,所有软件包管理器(rpm、deb)都支持这一点。

这些库只是名称不同。例如,如果我执行

ls /usr/lib/ | grep libcurl

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

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

因此,同一库的不同版本可以愉快地共存。

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


我已经发现了更多的问题,所以我不得不终止我的项目。无论如何,感谢你的帮助... - user748659

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接