53

非常に大きなプロジェクト (数千行) を作成しているため、Notepad++ は使用したくありません。IDE を使用すると、作業がはるかに簡単になります。Microsoft Visual Studio の経験があり、気に入っています。Microsoft Visual Studio 内から Cygwin の GCC を使用する簡単な方法はありますか?

あるいは、NetBeans と Eclipse 以外に、GCC に適した Windows IDE はありますか? (私は情熱を持って両方とも嫌いです。)

4

3 に答える 3

40

ここに行くにはいくつかの方法があります:

オプション 1: カスタム ビルド ツールを作成する

Visual Studio 2005 以降では、カスタム ビルド ツールを登録できます.cppこれらは、ある形式 (ファイルなど) のファイルを別の形式 (ファイルなど)に変換する方法を IDE に指示し.objます。

私の知る限り、GCCでこれを行った人はまだいません。また、自分でそれを行うには、COM コードを作成する必要があります。これは、1 つのプロジェクトだけに飛び込むには深すぎる可能性があります。このプロジェクトを引き受けるには、説得力のある理由が必要です。

.cpp次に、Visual C++ が既に認識しているファイル名拡張子 (おそらく) を使用しているため、各プロジェクトを手動で調整して、既定ではなくカスタム ビルド ツールを使用するように指示する必要があります。複数のモジュールからビルドされた単一の実行可能ファイルに対して VC++ コンパイラと g++ コンパイラを混在させようとすると、問題が発生します。

プラス面としては、オープンソース プロジェクトを開始しようとしている場合、これは良いプロジェクトのように思えます。私はあなたがすぐに大きなユーザーベースを集めることを期待しています.

オプション 2: Makefile プロジェクト

  1. Visual Studio を起動し、[ファイル] > [新しいプロジェクト] と言います。

  2. Visual C++ セクションで、[Makefile プロジェクト] を選択します。

  3. Makefile プロジェクト ウィザードに入力します。

    • ビルド コマンド ライン: make
    • クリーン コマンド:クリーンにする
    • コマンドラインの再構築: make clean all

プロジェクト名に基づいて実行可能ファイルに名前を付け、Visual Studio がそれを見つけると予想する場所に配置する場合は、[出力 (デバッグ用)]フィールドをそのままにしておくことができます。

残りのフィールドは、それらが何であるか、およびなぜそれらを変更する必要があるかを理解していない限り、そのままにしておきます。たとえば、プリプロセッサ定義-D行にフラグを渡して、個別のデバッグ出力とリリース出力を取得することを選択できます。これが必要だとわかっている場合は、設定方法を知っているので、説明するためにこの長い答えをこれ以上長くするつもりはありません.

リリース ビルドについても同じ一連の質問が表示されます。デバッグ ビルドとリリース ビルドを別々に使いたい場合は、ここで変更を加えます。

これをすべて行った後も、 を作成しMakefile、 を に追加する必要がありmake.exeますPATH。デバッグとリリースの質問と同様に、そのレベルの詳細に入ると、この回答はトピックから外れます。

これは見栄えが悪いですが、カスタム ビルド ツールを作成するよりも簡単です。さらに、あなたは最終的に Unix に移植する必要があると言っているので、Makefileとにかくそれが必要になるでしょう。

オプション 3: クロスプラットフォーム開発

あなたはこのプログラムをいつか Unix に移植したいと言っていますが、それは Windows で GCC を使わなければならないという意味ではありません。Windows では Visual C++ でビルドし、*ix システムでは GCC/Makefile でビルドするようにプログラムを作成することは十分に可能です。

これを簡単にするツールがいくつかあります。非常に人気のあるオプションの 1 つはCMakeです。これは、新しいバージョンの Visual Studio でインストール時のオプションとして利用できます。SConsBakefileなど、多くの代替手段があります。

于 2013-02-11T19:30:39.860 に答える
4

クラン

Visual Studio で Clang コンパイラを使用して、Android、iOS、および Windows をターゲットにすることができます。

Android をターゲットにしている場合は、Android NDK とツールチェーンに同梱されている Clang/LLVM コンパイラを使用してプロジェクトをビルドできます。同様に、Visual Studio は Mac 上で実行されている Clang を使用して、iOS をターゲットとするプロジェクトを構築できます。Android と iOS のサポートは、「C++ を使用したモバイル開発」ワークロードに含まれています。Android または iOS をターゲットにする方法の詳細については、「Android」および「iOS」というキーワードでタグ付けされた投稿をご覧ください。

Windows をターゲットにしている場合は、いくつかのオプションがあります。

  1. Clang/LLVMを使用します。「Clang for Windows」には、Clang/LLVM をプラットフォーム ツールセットとして Visual Studio にインストールする手順が含まれています。
  2. Clang を使用して、Clang/C2 (Microsoft コード生成による Clang フロントエンド) で Windows をターゲットにします。 ここに画像の説明を入力

GCC

プロジェクトが Linux または Android をターゲットにしている場合は、GCC の使用を検討できます。Visual Studio の C++ Android 開発では、Clang の場合と同様に、Android NDK に同梱されている GCC を使用したプロジェクトのビルドがネイティブにサポートされています。また、GCCを使用して、リモートまたはローカルでWindows Subsystem for Linux を使用して Linux をターゲットにすることもできます。

ここに画像の説明を入力

Visual Studio を使用して GCC で Linux をターゲットにする方法の詳細については、 Visual C++ for Linux Developmentに関する投稿をご覧ください。WSL をローカルでターゲットにすることに特に関心がある場合は、Visual Studio から WSL をターゲットにする を確認してください。

ソース: https://devblogs.microsoft.com/cppblog/use-any-c-compiler-with-visual-studio/

于 2020-10-27T21:52:47.567 に答える