• 8075阅读
  • 9回复

【提问】QT/E下应用程序的移植问题 [复制链接]

上一主题 下一主题
离线yunfeitian
 

只看楼主 倒序阅读 楼主  发表于: 2005-11-01
【提问】QT/E下应用程序的移植问题
我在linux上编译了QT/E,demo程序可以运行。

有一个应用程序是基于Xwindows+QT 3.2的,需要的是系统的 libqt-mt.so.3这个动态库。和一些X11的库。

我现在想用 QT/E + framebuffer 来取代上面的组合,以减小体积。

系统原来的QT库文件叫 libqt-mt.so.3

但是 QT/E 3.2 编译出来的库文件是 libqte.so.3.2.0

我尝试把 libqt-mt.so.3 链接向 libqte.so.3.2.0

但是运行应用程序时,报错:

Symbol `_ZTV6QFrame' has different size in shared object, consider re-linking
relocation error:: undefined symbol: _ZN12QPaintDevice12x_appdisplayE

请各位指教我的做法是不是有问题。

把基于QT的软件移植到QT/E时,是否一定要修改软件本身???

因为想移植的软件不是开源的,所以,我不能重新编译它本身

按道理既然 QT 和 QT/E的API是一样的,那似乎可以直接替换库的。

我想我的想法可能是大有谬误,还请诸位指点迷津!

多谢了
[ 此贴被yunfeitian在2005-11-02 14:10重新编辑 ]
离线yunfeitian

只看该作者 1楼 发表于: 2005-11-01
有劳 XChinux 前辈为小弟解释一下概念,

多谢
离线XChinux

只看该作者 2楼 发表于: 2005-11-01
我不懂得 qte,呵呵,帮不上忙了。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线youngki
只看该作者 3楼 发表于: 2005-11-01
为什么不重新编译一下呢?

-----不太懂
知识和财富,只在流通中产生价值
离线yunfeitian

只看该作者 4楼 发表于: 2005-11-02
因为我想移植的软件是基于QT 和Xwindows

它不是开源的,

所以,我不能重新编译的。

诸位认为这可能移植吗
离线youngki
只看该作者 5楼 发表于: 2005-11-02
我觉得不行,道理很简单,一个Qt下的Hello小程序都需要重新编译才能在Qt/e下运行阿
知识和财富,只在流通中产生价值
离线angusliu

只看该作者 6楼 发表于: 2005-11-02
不可以的,不说两个库文件会不同,即使你在PC机上能运行,但在目标板上也不能运行啊,因为两者所有的编译器是不同的
离线yunfeitian

只看该作者 7楼 发表于: 2005-11-02
我也觉得不行了,

QT公司今天给我的mail里是这样说的:

Qt/E will help you somewhat but you will still have a performance problem.
Qt/E 3.x is really slow and big. What you need is Qt/E 2.3.12 instead which
is highly optimized for embedded products.

I don’t know how far you have come with your development but I seriously
recommend to port back to Qt/E 2 and that you would need to do some
modifications on the source code. But a recompile would probably help much
and then some minor modifications.

他们的意思是要做些小修改。
离线huales

只看该作者 8楼 发表于: 2005-11-17
哪里可以找到Qt/E 2.3.12?
怎么都只有2.3.10吧?
离线huales

只看该作者 9楼 发表于: 2005-11-17
而且编译运行它的Demo结果鼠标不能用,不知道怎么回事
快速回复
限100 字节
 
上一个 下一个