2017-06-28 8 views
0

以前はMacを使ったことがありませんでしたが、Qt 5.6.2でMacOS 10.12.5上にいくつかのQtアプリケーションを構築しています。私はQtの創造主からアプリケーションを実行したとき、私はエラーました:Qt MacOS - 作業ディレクトリを修正しますか?

Failed to start program. Path or permissions wrong? 

をそして、私はデバッグしようとした場合、私はエラーだ:私は問題がであるように思われたいくつかの調査の後

Unable to start LLDB "/Applications/Xcode.app/Contents/Developer/usr/bin/lldb": No such file or directory 

をQt Creatorプロジェクト設定の作業ディレクトリ。あなたは、ディレクトリを構築する場合である:私はあなたが作業ディレクトリを変更した場合は、そのまま(ビルドディレクトリと同じにすることがわかった

/Users/username/dev/build-MyApp-Desktop_Qt_5_6_2_clang_64bit-Debug/MyApp.app/Contents/MacOS 

/Users/username/dev/build-MyApp-Desktop_Qt_5_6_2_clang_64bit-Debug 

のQt Creatorは作業ディレクトリを設定しますこれにより、問題が解決され、プログラムは問題なく実行され、デバッグされます。しかし、私はMacには新しいので、これは間違ったことであり、テストのために不適切な環境を作り出すかもしれないと心配しています。

作業ディレクトリをビルドディレクトリと同じにすることがこの問題の最適な解決方法ですか、それともより良い解決策ですか?

Qt Creatorがアプリケーションを実行させないときに、作業ディレクトリに/MyApp.app/Contents/MacOSを追加するのはなぜですか?

+0

私はQt Creatorに精通していませんが、アプリケーションの作業ディレクトリは、特にMac上の特定の値であるとは決して考えるべきではありません。バンドル相対パスが必要な場合は、NSBundle APIを使用します。 – Ssswift

答えて

0

問題の原因はわかりましたが、作業ディレクトリとは関係ありませんでしたが、変更した設定に関連していました。他の誰かがこの問題を抱えることはまずありませんが、私は説明します。これは愚かに思えた

[Build-Directory]-debug/debug - debug build goes here 
[Build-Directory]-debug/release - always empty 
[Build-Directory]-release/debug - always empty 
[Build-Directory]-release/release - release build goes here 

ので、私はより賢明なディレクトリ構造を作っデフォルトのビルドディレクトリから-%{CurrentBuild:Name}を削除:デフォルトのQt Creatorは、このディレクトリ構造を使用することにより構築するため

[Build-Directory]/debug - debug build goes here 
[Build-Directory]/release - release build goes here 

オンLinuxのデバッグとリリースのサブディレクトリはデフォルトでは作成されないので、同じビルドディレクトリ構造を使用するには、以下の行を.proファイルに追加する必要がありました。

CONFIG += debug_and_release debug_and_release_target 

Macでビルドすると、これらの設定が問題を引き起こしたようです。プログラムの実行とデバッグが機能せず、アイコンが設定されていませんでした(ICON = myicon.icnsは機能しませんでした)。デフォルトのビルドディレクトリ(末尾に-%{CurrentBuild:Name})に戻し、私の.proファイルからその行を削除すると、Mac上の問題が解決されました。

私の自閉症は本当に私に多くの時間を要しました。私はちょうど完全に冗長で常に空だった-debug/releaseと-release/debugディレクトリがあったという事実を立証できませんでした。残念ながら、設定を変更すると状況が悪化しました。私はチョコレートのために外出しています...

関連する問題