• 7139阅读
  • 4回复

哥哥们 帮帮小弟我吧 我已经整了两天了 没整出来 进来看看 [复制链接]

上一主题 下一主题
离线yesme
 
只看楼主 倒序阅读 楼主  发表于: 2008-11-02
— 本帖被 XChinux 执行加亮操作(2008-11-03) —
说不定对您来说 是小菜 但对我来说真的很困难
我的操作系统是Ubuntu8.04.1
Qt 环境变量设置如下:
  1  export QTDIR=/usr/local/Trolltech/Qt-4.3.2
      2  export PATH=$PATH:.:$QTDIR/bin
      3  export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
    是在 .bash_profile里设置的 source 过了

代码如下:
      1 #include <QtGui/QApplication>
            2 #include <QtGui/QWidget>
            3 #include <QtGui/QLabel>
            4 #include <QtCore/QTextCodec>
            5
            6 int main(int argc, char *argv[])
            7 {
            8        QApplication app(argc,argv);
            9        //QTextCodec::setCodecForTr(QTextCodec::codecForName(""));
            10        QWidget *pWidget = new QWidget;
            11        QLabel label(pWidget);
            12        label.setText(QObject::tr("one world,one dream"));
            13        pWidget->show();
            14        return app.exec();
            15
            16 }
qmake -project; qmake ; make ; hello
然后就会如下的错误:
caojian@caojian-laptop:~/mydir/hello$ hello
hello: symbol lookup error: /usr/lib/libQtGui.so.4: undefined symbol: _ZN14QObjectPrivate15checkWindowRoleEv(谁能帮帮我啊,小弟在此谢谢了)
caojian@caojian-laptop:~/mydir/hello$
离线XChinux

只看该作者 1楼 发表于: 2008-11-02
export PATH=$PATH:.:$QTDIR/bin
不能这样设置,$QTDIR/bin要放在前面,否则可能会调用成qt3的qmake及其它工具
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线yybruce
只看该作者 2楼 发表于: 2008-11-02
你的 qt是如何安装的,在unbuntu的wiki网站上有如何安装qt的,我按照上面的做就没问题。
http://wiki.ubuntu.org.cn/index.php?title=Gtk与Qt编译环境安装与配置&variant=zh-cn

我用的也是ubuntu 8.04.1
离线htyoung

只看该作者 3楼 发表于: 2008-11-02
引用楼主yesme于2008-11-02 14:59发表的 哥哥们 帮帮小弟我吧 我已经整了两天了 没整出来 进来看看 :
说不定对您来说 是小菜 但对我来说真的很困难
我的操作系统是Ubuntu8.04.1
Qt 环境变量设置如下:
   1   export QTDIR=/usr/local/Trolltech/Qt-4.3.2
      2   export PATH=$PATH:.:$QTDIR/bin
.......


你运行时调用了Ubuntu默认的QT lib
你的装在/usr/local/Trolltech/Qt-4.3.2,但是从错误里看来运行时调的是/usr/lib/libQtGui.so.4

也就是 /usr/lib/libQtGui.so.4的path路径在你的export PATH=$PATH:.:$QTDIR/bin前面,

先用which qmake看一下你的路径对吗?

用env看一下你的PATH路径和lib路径是不是对,

最简单的是在你的终端里敲下面的命令。然后用qmake
1  export QTDIR=/usr/local/Trolltech/Qt-4.3.2
      2  export PATH=$PATH:.:$QTDIR/bin
      3  export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH

希望有用,也可以将QTDIR加载 到bash_profile最前面
[ 此贴被htyoung在2008-11-02 23:32重新编辑 ]
***
QT5
***
离线yesme
只看该作者 4楼 发表于: 2008-11-03
      1  export QTDIR=/usr/local/Trolltech/Qt-4.3.2
      2  export PATH=$PATH:.:$QTDIR/bin
      3  export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
   
  我echo 过了 显示的是我设置的路径,今天下午不知道咱们搞的又运行成功了现在在.bash_profile里的就是以上三行,不过很奇怪的是当前目录系统不认了,我又再.bashrc里面加入了一个export PATH=$PATH:. 又认了
不知道怎么回事                         
恩 谢谢 你们 难怪这么这个论坛这么火 原来有这么多的好心人
我环境变量都是按着精通Qt4编程上说的设置的  现在可以了
我要开始我的Qt 之旅了 以后还请你们多多关照
最后 还是要感谢你们热心的帮助
快速回复
限100 字节
 
上一个 下一个