2017-08-04 51 views
1
でWindows上でLinux用のC++アプリケーション

は私がEclipseのを使用してWindows上のLinux OSためC++アプリケーションをコーディングすることはできますか?クロスコンパイルのEclipse

可能であれば、私はEclipseで何をする必要がありますか?

ありがとうございます。

+2

あなたが探しているキーワードは「クロスコンパイル」です。私はこれを設定してからしばらくしています(私は通常、Linux仮想マシンを起動するため)、おそらく今は違うかもしれません。まず、必要なコンパイラを追跡してインストールします。 EclipseにはGCCのプラグインがあるので、それに固執することができます。そして、新しいC++プロジェクトを作成するときは、Cross GCCを選択してください。なぜ...なぜ、私はこれをコメントに書いていますか?答えと写真で数分後に戻る。 – user4581301

答えて

0

C++コンパイラは、LinuxとWindowsの両方で使用できるため、「Linux用C++アプリケーション」はありません。標準のC++で書くだけで、プラットフォーム固有の機能(winapi呼び出しなど)を使わず、Linuxや他のターゲットプラットフォームで構築できないライブラリを使用しないでください。

上記を踏まえれば、Linux上のプログラム(最初はWindows環境で作成されたもの)をコンパイルするだけで、同じ方法で実行する必要があります。最新の言語機能(C++ 17および/またはexpeirmental)を使用すると、コンパイルエラーが発生する可能性があります。これは簡単に修正できます。 #ifdef _WIN32のようなものは、それらを扱う際の最後の手段です。

確かに、特別な設定は必要ありません。唯一のアドバイスは、クロスプラットフォーム構築システムを使用することです。たとえば、CMakeはライオンの汚い仕事のシェアを奪うことができ、まったく別のプラットフォームのビルド設定を書くことができます。if(MSVC) ... endif()ブロック。

1

まず、コンパイラを見つけてください。私はこれを手伝ってはいけませんが、WindowsからLinuxへのクロスコンパイラGCCのウェブ検索が役に立ちます。ここSo should browsing cygwin.

良好なカバレッジ:私たちは、私はあなたがすでに実行する方法を知っていると仮定しています新しいプロジェクトをビルドするためにEclipseに送信C++ cross-compiler from Windows to Linux

。ここにつながる

enter image description here

を:そのパネルに表示する

enter image description here

何も、その次の

enter image description here

には、中塗り、ここであなたを取得しない 2つのテキストボックスをクリックして終了をクリックします。パスは明白です。Eclipseはコンパイラやツールを見つける場所で、もう1つはちょっと変です。一旦あなたがこの道を辿ると、多くのコンパイラがある傾向があります。混乱を避けるために、別の名前を付けなければなりません。つまり、linux-mips32-g ++とlinux-i386-g ++とqnx-arm-g ++を同じマシン上に持つことができます。 Eclipseはg ++やその他のツールの前で何を叩くべきかを知りたい。

遠隔デバッグの設定はもっと面白いでしょうが、それは別の質問です。

関連する問題