4

MinGW-w64で動作するように、win764ビットでNetBeansを構成しようとしています。
そこで、%PATH%変数にコンパイラの次のパスを入れました:
C:\ mingw-w64-bin_i686 \ mingw \ bin
C:\ minGw-MSYS \ msys \ bin
C:\ mingw-w64-bin_i686 \ libexec \ gcc \ x86_64-w64-mingw32 \ 4.7.0

次に、NetBeansを開き、これを構成しました。

NetBeansでの設定

小さなテストプログラムをコンパイルしようとしましたが、次のエラーが発生しました。

g ++。exe:致命的なエラー:-fuse-linker-pluginですが、liblto_plugin-0.dllが見つかりませんでしたコンパイルが終了しました。make [2]:* [dist / Debug / MinGW-Windows/test.exe]エラー1make1[.build-conf]エラー2make: **[.build-impl]エラー2

ビルドに失敗しました(終了値2、合計時間:1秒)

このファイルはC:\ mingw-w64-bin_i686 \ libexec \ gcc \ x86_64-w64-mingw32\4.7.0にあります

私は何が欠けていますか?

4

3 に答える 3

16

そうです、これを何ヶ月も延期した後、私はついに座ってそれをやりました. 私のブログできれいな写真を掲載した詳細な投稿を行う予定ですが、ここにあるのは、あなた (および他のすべての人) が使い始めるのに十分な、トリミングされた SO バージョンです。

前提条件

MinGW、MSYS、および CMake があり、それらを失う余裕がある場合は削除します (MinGW (obv.) と MSYS を再インストールしますが、CMake は不要と思われるため、再インストールしません)。

  • Netbeans またはその他の適切な IDE
  • 64 ビット Windows。
  • EnvMan (オプションですが、Windows 環境変数の管理に便利です。)

インストール

MinGW-W64 C コンパイラと MSYS

  • MinGW-W64 をダウンロードしてインストールする
    • http://mingw-w64.sourceforge.net/ (リンクは左側のメニューにあり、「WIN64 ダウンロード」というハイパーリンクがあります。)
    • 少し複雑なバージョンがたくさんあります。mingw-w64-bin_i686-mingw_20111220 を使用します (最後の数字は異なる場合があります)。これは基本的に、Windows バイナリを含むバージョンが必要であることを示しています。
    • ダウンロードが完了したら (約 300 MB で 10 分程度)、C:\MinGW-W64 などに展開します。パスにスペースが含まれていないことを確認してください。
  • MinGW-W64 の MSYS をダウンロード

設定

  • 「C:\MinGW-W64\bin」を Windows PATH 変数に追加します。
  • 「C:\MSys\msys\bin」を Windows PATH 変数に追加します。
  • Netbeans を起動し、[ツール] -> [オプション] -> [C/C++] に移動します。
    • 「ツール コレクション」の下の「追加」をクリックし、MinGW-W64 のベース ディレクトリ (C:\MinGW-W64\bin) を選択します。
    • 自動検出されない場合は、「Tool Collection Family」から「MinGW」を選択し、「OK」をクリックします。
    • 'C コンパイラを C:\MinGW-W64\bin\x86_64-w64-mingw32-gcc.exe に設定します。
    • C++ コンパイラを C:\MinGW-W64\bin\x86_64-w64-mingw32-g++.exe に設定します。
    • 「Make コマンド」を C:\MSys\msys\bin\make.exe に設定します。

そして、それだけです!

システムを使用して、JNI 経由で使用するライブラリ ファイルをコンパイルしていることに注意してください。そのため、ここでは必要がなかったため、見逃していた追加の手順がいくつかあります。しかし、簡単な「Hello World」プログラムを作成したところ、コンパイルして問題なく動作しました。

ハッピーコーディング!

于 2012-11-23T13:57:26.670 に答える
0

最新の自動ビルドをダウンロードして解凍し、メインの bin ディレクトリをパスに追加して、次を実行しました。

x86_64-w64-mingw32-gcc test.cpp -o test.exe

x86_64-w64-mingw32-gcc -fuse-linker-plugin test.cpp -o test.exe

そしてそれは動作します。i686 バリアントについても同じです。あなたのIDEは何か間違っています。または、ファイルを台無しにするべきではありませんでした。または、接頭辞を削除すべきではありませんでした。真剣に。

PS: メインの「bin」ディレクトリを PATH に追加するだけでよく、残りはすべて間違っています。

于 2011-12-12T19:18:00.583 に答える
0

お気に入りのインターネット検索エンジンで検索した結果、MinGW-x64 を Windows 64 ビット システムにすばやく追加するためのより良い方法を見つけました。Sourceforge サイトにはMSYS2があります。

インストールの指示に従い、最新のパッケージを入手している間、Sourceforge のプライマリ ミラー サイトでタイムアウトが発生する場合があります。その場合は、ミラー サイトの更新指示に従い、それぞれの MSYS2 ディレクトリ (例: /etc/pacman.d) にある 3 つの pacman テキスト ファイルを更新します。次に、MSYS2 のインストール手順に従ってパッケージの更新を完了します。

MSYS2 パッケージ内には、gcc、llvm、make、dmake などがあります。GNU make ユーティリティをインストールするために MSYS2 コマンド ライン シェル (bash など) から使用されるコマンドは次のとおりです。

$ pacman -S msys/make

配置される実行可能な場所は/usr/bin、MSYS2 コマンド シェル内です。make.exe が配置されている場所の Netbeans を構成する限り、Windows パスは次のとおりです。

MSYS2 installation directory\usr\bin\make.exe

(例C:\msys64\usr\bin\make.exe)。

Netbeans で C++ をうまくビルドするために、GNU make パッケージ (例: msys/make) を使用しました。次に、Netbeans が管理するデフォルトの make ファイルを使用し、Windows インストール内の他の C++ コンパイラ (Visual Studio、Intel、Visual Studio の CLang など) に干渉しないようにするために、MinGW-x64 コマンド シェルから Netbeans を実行します。 MSYS2 によって提供されます。このようにして、環境変数やその他のものが次のようになります。

ls
rm
mkdir

は、Netbeans 内部ターミナル ウィンドウ内で実行とコンパイルが成功したことを示します。MSYS2 のインストールからインストールされたショートカットに移動して、MinGW-w64 Win64 シェルを開きました。次に、MinGW-x64 シェル コマンド ラインに、Netbeans Windows デスクトップ ショートカットの Target プロパティ値を貼り付けます。

$ "C:\Program Files (x86)\NetBeans 7.4\bin\netbeans.exe"

そして、最終的にそれぞれのデバッグおよびリリース オブジェクトと実行可能ファイルを作成できます。また、Netbeans プロジェクトの出力が MSYS2 ディレクトリ構造内になるように変更しました。次に、MSYS2 MinGW-x64 シェル内で実行可能ファイルを実行します。Netbeans IDE から実行すると、次のエラー メッセージが表示されます。

pty プロセスを開始できません: アプリケーションは終了コード -1073741515 (0xc0000135) で失敗しました。

MSYS2 パスがコンピュータ システムの PATH 環境変数にある場合、おそらくこのエラーは発生しません。

于 2015-07-26T20:34:20.797 に答える