在mac os x上编译QT4的感触

1,QT是什么东西
    http://en.wikipedia.org/wiki/Qt_(toolkit)

2,我为什么要编译QT?
    肇始于qmake,qt包里的一个小工具而已

3,过程
    1)下载qt包,我用的版本是“qt-mac-opensource-src-4.5.0.tar.gz”,我是用macport下载的,命令port install qt-mac(其实本可以直接这样安装,一来慢,二来我想自己试试,;));
    2)解压缩到/目录,cd到目录/qt-mac-opensource-src-4.5.0/,执行./configure(大约5~6分钟),执行make(漫长的等待,一个通宵吧,反正它在哪里安装,我睡觉,也不知道什么时候装完的 ;));
    3)make之后,基本上都装完了(目前,我认为是),文档说,该qt库默认安装在/usr/local/Trolltech/Qt-4.5.0下,很遗 憾,我的不是(基本上在mac上安装软件没有一次成功的,尤其是mac os x,那个烦啊!),浏览目录之后,发现在安装文件(也就是编译库的root目录)目录下,有个bin目录,用我那点仅存的linux知识,知道这里应该实 用程序所在地了,有点高兴,然后,将这个目录放在了bash的profile文件中的path变量中,然后回到terminal测试qmake,好,认出 来了,然后……
    4)进入我要编译的一个开源包目录,cd进去之后,看到一个.pro文件(其实这才知道这是qmake的输入文件,惭愧啊),键入qmake,晕,又是错误:MAKESPEC has not been set, so configuration cannot be deduced.
    5)唉,我以无比的毅力,发誓一定要解决这个问题(为什么?因为这不是第一次被mac欺负了!!),google it……
    6)半个小时过去之后,有一个靠谱的回答:

        
   “ Try running 'assistant' before posing such a simple question.
    Depending on your shell, you need to do something like
    export QMAKESPEC=freebsd-g++ ”
    
    说咱蠢一点都不假,最基本的东西都不会,最基本的解决问题的方式都不会,唉,可悲啊
    
    不过,好在咱会google,一笑,好了,就尝试一下这个方法了
    
    将语句:export QMAKESPEC=acx-g++ 加入到profile中之后……
  
   7)问题又来了:
    “ Could not find mkspecs for your QMAKESPEC(macx-g++) after trying:
    /usr/local/Trolltech/Qt-4.5.0/mkspecs ”

   8)看来不是咱蠢,是因为咱知识积累不够,解决方法不正确,也就是说我根本没有理解什么是qt,怎样用qmake,唉,不管了,都到
   这一步了,就硬着头皮上吧!
  
看到这一句话,我就想到了是不是qmake内部要求的这个默认目录呢?好,试试,将刚才编译好的文件目录,也就是:
“qt-mac-opensource-src-4.5.0”下的所有文件都拷贝到目录      "/usr/local/Trolltech/Qt-4.5.0/"下,命令也是现学的(:)),
" cp -R /qt-mac-opensource-src-4.5.0/* /usr/local/Trolltech/Qt-4.5.0/"
    
   9)嘿嘿,结果呢,你能猜到的,哈哈,成了……
    
   10)回顾以上过程,绝对不是一个正确的解决问题的过程,但是在较短的时间内(半天),要获得自己想要的东西(qmake),
也许只能这样走了,以后有时间可能会理解一下这些东西是干啥的!自勉。


posted @ 2009-04-16 10:53  学问  阅读(4085)  评论(1编辑  收藏  举报