0

わかりました...だから私はQtにとても慣れていません。Ubuntuディストリビューションにインストールしました。../helloworld/ ディレクトリにある次のファイル (helloworld.cpp) で動作するかどうかを確認するために、新しいテスト アプリケーションを作成しました。

/*  helloworld.cpp */
#include <QApplication>
#include <QWidget>

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);

    QWidget window;

    window.resize(250, 150);
    window.setWindowTitle("Simple example");
    window.show();

    return app.exec();
}

qmake -projecthelloworld.pro ファイルを生成するために実行しました。次にqmake、Makefile を生成するために実行しました。次にmake、コンパイルするために実行し、次の出力/エラーを取得しました。

g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG 
-DQT_GUI_LIB -DQT_CORE_LIB -I/usr/share/qt4/mkspecs/linux-g++-64 -I. 
-I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 
-I. -I. -o helloworld.o helloworld.cpp
helloworld.cpp:1:24: fatal error: QApplication: No such file or directory
compilation terminated.
make: *** [helloworld.o] Error 1

helloworld.o ファイルが見つからないということです...どうすれば修正できますか? 別の議論が言ったように追加しようとしQT += webkitました...そしてそれもうまくいきませんでした。

そこにいるコードモンキーは、これを修正する方法を知っていますか??? よろしくお願いします!

4

3 に答える 3

0
cpp:1:24: fatal error: QApplication: No such file or directory
compilation terminated.

実際のエラーは、ヘッダー ファイル (QApplication) が見つからないことです。これにより、コード (helloworld.cpp) がコンパイルされず、二次エラーが発生しました

make: *** [helloworld.o] Error 1

したがって、解決策は QApplication が見つかることを確認することです。これは通常Qt +=、.pro ファイル内のステートメントによって処理されます。

Qt += webkitは、Webkit (Web ブラウザー) アプリケーションを作成したいことを QMake に伝えます。この場合、それは必要ありません。

ビルドしようとしているのは GUI アプリケーションなので、.pro ファイルでそれが指定されていることを確認する必要があります。を指定することで実現できますQt += gui

Qt += gui coreさらに、ファイルの先頭にあることをお勧めします。これは、Qt のコア コンポーネントと GUI コンポーネントの両方を使用していることを QMake に伝えます。

于 2013-01-29T14:18:27.107 に答える
0

QApplicationパッケージ/usr/include/qt4/QtGuiをインストールしていれば、 の中にあるはずです。libqt4-devそのパッケージがインストールされていない場合、それがエラーの原因です: インストールするだけです:

sudo apt-get install libqt4-dev

于 2013-01-27T23:51:35.073 に答える