1

Windows 7、64ビットでCygwinを使用しています。4.8.3 をダウンロードしました。source を開き、ここの指示に従い<qtdir>/bin、選択したコンパイラへのパスとともに PATH を入力します。構成はすぐに失敗します。

$ ./configure

qmake を作成しています。お待ちください... g++ -c -o makefile.o -pipe -DQMAKE_OPENSOURCE_EDITION -g -I. -Igenerators -Igenerators/unix -Igenerators/win32 -Igenerators/mac -Igenerators/symbian -Igenerators/integrity -I/cygdrive/c/Qt/4.8.3/include -I/cygdrive/c/Qt/4.8.3/include /QtCore -I/cygdrive/c/Qt/4.8.3/src/corelib/global -I/cygdrive/c/Qt/4.8.3/src/corelib/xml -I/cygdrive/c/Qt/4.8.3 /tools/shared -DQT_NO_PCRE -DQT_BUILD_QMAKE -DQT_BOOTSTRAPPED -DQLIBRARYINFO_EPOCROOT -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_NO_COMPONENT -DQT_NO_STL -DQT_NO_COMPRESS -I/cygdrive/c/Qt/4.8.3/mkspecs/cygwin-g++ -DHAVE_QCONFIG_CPP -DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -DQT_NO_DEPRECATED generators/makefile.cpp

./option.h:45:0 から、generators/makefile.h:45 から、generators/makefile.cpp:42 からインクルードされたファイル: ./project.h:45:25: 致命的なエラー: qstringlist.h: いいえそのようなファイルまたはディレクトリのコンパイルは終了しました。make: *** [makefile.o] エラー 1

ここここでの議論は、問題が Perl にあることを示しています。しかし、Perl は私のシステムとパスにあります。確かに、ActivePerlをダウンロードしてインストールした後Perl64/bin、パスに追加しました。同じ結果です。これについて何か助けていただければ幸いです。

完全を期すために、次のように編集します。

$ whereis perl

perl: /bin/perl.exe /usr/bin/perl.exe /usr/share/perl /cygdrive/c/Perl64/bin/perl.exe /cygdrive/c/Perl64/bin/perl516.dll

$ エコー $PATH

/cygdrive/c/Perl64/bin:/cygdrive/c/gcc/bin:/bin: ... /cygdrive/c/Qt/4.8.3/bin

編集:失敗する行は次のとおりです。

#include <qstringlist.h>

絶対パスに置き換えると、この特定のエラーはなくなります。(もちろん、他の多くのエラーが発生します。)

$whereis qstringlist.h

qstringlist: /cygdrive/c/Qt/4.8.3/include/QtCore/qstringlist.h

これは g++ コマンドに明示的に-I含まれており、FWIW

$echo $PATH

... /cygdrive/c/Qt/4.8.3/include/QtCore

編集:-I/cygdrive/c/Qt/4.8.3/include/QtCore明示的なオプションとして追加しても何もし./configureません。真剣に、ここで何が起こっているのか...

更新: この質問は現在、事実上 250 担当者の価値があります。こちらを参照してください。

4

2 に答える 2

1

サポートされているプラ​​ットフォームをご覧ください。サポートされているコンパイラに関する指示があり、問題のヒントが得られる可能性があります。

私が読んだ限りでは、最近のウィンドウでは MSVC が必要ですが、cygwin については何も表示されません。

于 2012-11-08T12:20:12.693 に答える
0

使用している正確な構成行は何ですか? これを試して:

./configure -I/cygdrive/c/Qt/4.8.3/include/

それでもヘッダーが見つからないという不満がある場合、それは確かに奇妙です。あなたが試すことができる別のオプションは次のとおりです。

INCLUDE_PATH=/cygdrive/c/Qt/4.8.3/include/ ./configure
于 2012-11-14T12:18:27.720 に答える