在Linux下使用QT编程,先来写一个简单的例子:
      1、新建文件夹:mkdir hello,在文件夹下创建文件: vi  hello.cpp
      2、在hello.cpp中输入代码:


  
  1. #include <QApplication>  
  2. #include <QLabel>  
  3.  
  4. int main(int argc,char *argv[])  
  5. {  
  6.     QApplication app(argc,argv);  
  7.     QLabel *label=new QLabel("Hello QT!");  
  8.     label->show();  
  9.     return app.exec();      

      3、在终端下输入命令:qmake -project ,生成工程文件。此时在hello文件夹下生成hello.pro文件。
      4、在终端下输入命令:qmake hello.pro,生成Makefile
      5、在终端下输入命令:make ,进行编译。生成hello可执行文件。
      6、在终端下输入命令:./hello ,运行程序。

可却不能运行,出现了错误:bash: ./hello:cannot execute binary file

       输入的命令以及操作顺序都没有出错,原因在哪呢?
       

        此时我们从上面的操作流程图中看到了:
        当执行make命令后:显示“-I/usr/local/Trolltech/QtEmbedded-4.6.2-arm/mkspecs/qws/linux-arm-g++”。
        -I<文件> :表示指定使用的配置文件。
         明白了原来是编译器的原因,刚刚我们用的是arm-linux-gcc交叉编译器,这样生成的hello是用于在ARM板子上运行的。其实我们从刚刚生成的makefile文件中也能发现这个问题,下面是makefile文件:

        为了解决问题,只需设置下PATH环境变量:
#export  PATH=/usr/local/Trolltech/Qt-4.6.2/bin:$PATH

        然后,我们重新执行下:
  
        

        此时则能正确执行。我们看到上面的make信息已改变了,再看下Makefile文件,也变了:


     至些完成!