在Ubuntu 10.04 Lucid Lynx中运行Qt 4.7应用程序

时间:2011-02-15 20:25:43

标签: qt ubuntu qt4 ubuntu-10.04

我正在开发跨平台应用程序,并且正在使用最新的Qt库4.7版。问题是,其中一个用户试图在Ubuntu 10.04 Lucid Lynx上运行它,并且它与undefined symbol: _ZN9QListData11detach_growEPii崩溃了。 Ubuntu 10.04有Qt4.6.3,似乎是问题所在。

然而,似乎Ubuntu 10.04不支持4.7-仅Ubuntu 10.10,并且用户不希望升级他的Linux发行版,因为他是长期支持。在这种情况下我有什么选择?用户可以下载4.7框架并在他的PC上编译,但这意味着每个ubuntu 10.04用户都必须这样做。或者,我可以使用Qt 4.6进行额外的构建,但我找不到这些较旧的库。

有什么建议吗?是否有任何编译标志可以使它与4.6兼容?这可能是个错误吗?

谢谢!

编辑:我最终向他发送了我的Qt .so文件,并且它有效。但是,每个人的回答都是正确和恰当的 - 我希望我能接受所有这些。

4 个答案:

答案 0 :(得分:5)

查看上一篇文章 http://ubuntuforums.org/showthread.php?t=1552263

您需要将其添加到存储库来源:

deb http://ppa.launchpad.net/kubuntu-ppa/backports/ubuntu lucid main

答案 1 :(得分:3)

除了静态链接到Qt之外,您还可以简单地将Qt DLL / so文件与可执行文件一起分发。 Qt部署页面上的说明清晰http://doc.qt.io/archives/qt-4.7/deployment-x11.html

答案 2 :(得分:1)

相反,他需要QT 4.6.3。我认为他在10.10但需要从10.04开始的Qt。这需要

deb-src http://archive.ubuntu.com/ubuntu lucid main restricted universe multiverse

现在你可以

sudo apt-get build-dep libqt4-core libqt4-dev
sudo apt-get -b source -t lucid libqt4-core libqt4-dev

构建清晰版本(根据需要添加更多qt包)。

聚苯乙烯。你在错误的网站上,这更像是unix。*或超级用户。

答案 3 :(得分:1)

此外,您可以静态地针对Qt库构建您的应用程序。见http://doc.qt.io/archives/qt-4.7/deployment-x11.html#static-linking 因此,您可以在任何地方(Ubuntu 9. / 10。)分发您的应用,而无需在目标计算机上安装Qt SDK。