web-dev-qa-db-ja.com

UbuntuでWindows用にプログラムする方法は?

とにかく、UbuntuのIDE(Anjutaなど)内に(C++またはC#)Windowsコンソールアプリケーションを作成し、Windows用にコンパイルする方法はありますか?

24
Behzadsh

クロスコンパイルを行いたい。これは、特にプロセッサが完全に異なる場合に、自分のプラットフォーム以外のプラットフォーム用のコードをコンパイルする方法です。基本的に、ターゲット(つまり、windows)のすべてのヘッダーをインストールしてから、コンパイラーにクロスコンパイルを指示する必要があります。これにより、システムチェックの一部を行わず、代わりに非標準のディレクトリをポイントします。

言語に応じて、具体的に検索や質問を行うと便利な場合があります。または、基本的なcを行う場合は、 MinGW ツールとgccを使用する同じ種類のLinuxベースのコンパイルツールを使用できます。

Sudo apt-get install gcc-mingw32

MinGWツールを使用したqt/win32クロスコンパイルの良いガイド があります。

MingW をご覧ください。 Windows用のgcc互換コンパイラーを提供します。

LinuxからWindowsバイナリを生成するために使用できるクロスプラットフォームバージョンがあります。 synapticでインストールするか、次を実行してインストールできます。

Sudo apt-get install gcc-mingw32

それに基づいて、通常の「make」コマンドを使用して、Windows用のプログラムを作成できます。

次に、makeとgccを使用できるIDEがこのコンパイラを使用できるようにします。たとえば、 これはCode :: Blocks IDEから行う方法です

12
Little Jawa

他の答えは、C/C++コードに対して正しいです。クロスコンパイラを取得する必要があります。

C#コードの場合は、 MonodevelopInstall Monodevelop 。Monoのコンパイラは.NETコンパイラと同じタイプのバイトコードと実行可能形式を生成します(逆も同様です)。 Monoで構築したアプリは、標準の.NET Base Class Libraries内にあるか、アプリで使用する追加のライブラリをバンドルしている限り、Windowsマシン上で変更なしで実行されます。

7
RAOF

Qt CreatorでQtを試してみたいと思うかもしれません。 GUI、コンソールアプリケーション用の優れたフレームワーク。Windows、Linux、OS X向けにコンパイルできます。

http://qt.nokia.com/

5
SiliconChaos

このページ から:

Sudo apt-get install wine mingw32 mingw32-binutils mingw32-runtime

基本的なクロスコンパイルに必要なのはこれだけです。やってみよう:

#include <windows.h>

int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
    LPSTR lpCmdLine, int nCmdShow)
{
  MessageBox(NULL,
    "Cette fenêtre prouve que le cross-compilateur est fonctionnel !",
    "Hello World", MB_OK);
  return 0;
}

これをコンパイルするには:

i586-mingw32msvc-g++ -o essai.exe essai.cpp

実行するには、mingwライブラリが必要です:mingwm10.dll:

gunzip -c /usr/share/doc/mingw32-runtime/mingwm10.dll.gz > mingwm10.dll

その後、起動できます:

wine essai.exe

ダイアログボックスのテキストはフランス語のアクセント付きで、gvimでそれを行うには、ソースを windows code page 1252<ESC>:e ++enc=cp1252に変換します

より強力な別の解決策はUTF-8を使用することですが、これには文字列の処理方法を変更する必要があります。

2
Aubin

WindowsアプリケーションLinux(ubuntu)をプログラムする最も一般的な方法は、mingwツールを使用することです。

http://www.mingw.org/

すぐにインストールできるmingw用のubuntuパッケージがあります。

2
joke