web-dev-qa-db-ja.com

Macターミナルでqmakeを実行できない

大学でC++コースのQtを学んでいます。私は最初の割り当てのために環境をセットアップしようとしていますが、それを正しく行うことができないようです。以前にターミナルでqmakeを実行したことがありますが、Qt CreatorでQt 5.2をインストールしたため、ターミナルでプロジェクトを作成できません。

コマンドが認識されず、その上で標準のC++ファイルをコンパイルしようとすると、

#include <QtGui>

コンパイラはそれを見つけません。私が使用しているg ++コンパイラでは、インポートしようとするQtライブラリが見つかりません。私はオンラインで見て、見つけた解決策はただ実行することでした

brew install qt

ターミナルでは、ターミナルがエラーをスローし、ダウンロードされるとインストールされませんが、それがうまくいくことを願っています。私は本当にこれを私の仕事のために機能させる必要があります。

どんな助けでも大歓迎です。前もって感謝します!

*編集*

さて、qmake binをPATH変数に追加しました。これはパスでした:

/Users/#####/Qt5.2.1/5.2.1/clang_64/bin

問題は、私のC++ソースファイルで何も認識されなくなったことです。 QString、QTextStream、QtGuiなどのインポートはありません。何が原因ですか?

11
Nick Corin

Qtへのパスで環境変数PATHを設定しましたか?

ターミナルで:echo $PATH/usr/local/Qt-5.x.x/bin:PATHのようなものを探します

インストールしたqtへのパスがない場合は、次のように設定します。

.profile(シェルがbashの場合)に、次の行を追加します。

PATH=/usr/local/Qt-5.0.2/bin:$PATH
export PATH

プロセスを支援するために、おそらくここで読みたいと思います: QT mac install

新しい質問への回答

コードを記述しても何も認識されないようであれば、includeディレクトリへのリンクを追加する必要があります。 includeディレクトリはすべてのヘッダーファイルがある場所なので、IDEはクラスメソッドなどについての提案を与えることができます...

16

Qtを使用するためだけに、システム(Mac、Unix、Windows)のPATHを変更する必要はありません。複数のQtバージョンが並行してインストールされている可能性があります(たとえば、macportsから4.8、5.2、git stableなど)。

UnixでQtプロジェクトを構築する方法は次のとおりです(セットアップに関連するパスを置き換えます)。

mkdir ~/build-dir
cd ~/build-dir
~/Qt5.2.1/5.2.1/clang_64/bin/qmake ~/src/myproject/myproject.pro
make -j2
# were N in -jN is the number of CPU cores on your system
4

プログラムを実行できないのは、使用しているシェルの$PATHにないためです。まず、それが置かれている場所を見つけてから、そのバイナリディレクトリのディレクトリを$PATH環境変数に追加します。それからあなたはあなたのターミナルでそれを実行することができるでしょう。

たとえば、ZSHを使用していて、プログラムが「/ opt/local/bin」にある場合は、次のコマンドを実行して、$PATHから使用できるようにします。

export PATH=$PATH:/opt/local/bin

この後、プログラムを実行できるようになります。これをShell RCファイルに追加する必要があります。

0

2020年4月9日作業set path echo 'export PATH = "/ usr/local/opt/qt/bin:$ PATH"' >>〜/ .bash_profile

0
Teenenggr

私には、qmake PATHをファイルに追加した後(echo 'export PATH="$(brew --prefix [email protected])/bin:$PATH"' >> ~/.bashrcを使用)、.bashrcファイルが新しいターミナルセッションで自動ロードされないことに気付きました。

だから私は単にsource ~/.bashrcとbamを実行します!動いた!

0
Ruto Collins

Qt SDKをインストールした場合、qmakeのパスは環境変数として自動的に含まれないため、手動で行う必要があります。これはウィンドウにも当てはまります。私はこの奇妙なものを見つけました。その背後に合理的な理由がない限り、それは自動的に含まれるべきです。

0
CroCo