2011-02-15 106 views
3

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

但是,看起来Ubuntu 10.04不支持4.7 - 只有Ubuntu 10.10才支持,并且用户不想升级他的Linux发行版,因为他的长期支持。在这种情况下我有什么选择?用户可能会下载4.7框架并在他的PC上进行编译,但这意味着每个Ubuntu 10.04用户都必须这样做。另外,我可以使用Qt 4.6进行额外的构建,但是我找不到这些较旧的库。

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

谢谢!

编辑:我最终发送了他我的Qt .so文件,它的工作。但是,这里所有人的回答都是正确和恰当的 - 我希望我能接受他们。

回答

5

见最后发表的文章 http://ubuntuforums.org/showthread.php?t=1552263

您需要将它添加到你的资料库来源:

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

通过添加包含更新库的新源代码库,小巧的apt-get更新&& apt-get dist-upgrade会将Qt更新为新版本。 (就像我提到的,你需要向下滚动到我链接到的帖子中的最新答案),但正如chx指出的,这可能更多是一个超级用户的问题.. – Xavier 2011-02-15 20:47:01

+0

谢谢你的解释泽维尔! – 2011-02-15 21:00:08

+0

用户没有设法获取backport,因为它只要求“签名的东西”。我最终把他的.so文件发送给他。谢谢! – 2011-02-16 17:05:32

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包)。

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

相关问题