Ubuntu Oracle Virtual Box からホストマシン (Windows 7) に exe ファイルを転送する

Ubuntu Oracle Virtual Box からホストマシン (Windows 7) に exe ファイルを転送する

Ubuntu から Windows に実行可能ファイルを転送したいです。Ubuntu がインストールされている VM の共有フォルダー経由で試してみました。うまくいきましたが、Windows で実行可能ファイルを開くと、ファイルが定義されていません (exe ファイルではありません)。

実行ファイル(sphinx3_align)はパッケージの一部ですsphinx3 ツール実行後sphinx3 ツールsphinx3_alignから共有フォルダーにコピーしました/usr/local/binが、Windows で開くと、ファイルが定義されていないというメッセージが表示されます。

出力file sphinx3_align:

sphinx3_align: ELF 32-bit LSB  executable, Intel 80386, version 1 (SYSV),
  dynamically linked (uses shared libs), for GNU/Linux 2.6.24,
  BuildID[sha1]=d4584be6f1adc0b0a8471cd8e774a79c53b1f7f3, not stripped 

このファイルを Windows システムに転送するにはどうすればいいですか?

答え1

このファイルを Windows システムで実行することはできません。絶対に無理です。

の出力を見るとわかるようにfile、 と表示されますELF 32-bit LSB executable, [...] for GNU/Linux 2.6.24。ELF は Linux が使用するコンパイル済みバイナリ実行可能ファイルの形式で、このプログラムが Linux カーネル 2.6.24 用に記述されていることもわかります (これはかなり古いようですし、CPU アーキテクチャもわかりますが... - これは重要ではありません)。

対照的に、Windows はコンパイルされたバイナリ実行可能ファイル (ファイルと呼ばれる) に PE 形式を使用します*.exe。また、.exeUbuntu/Linux で Windows ファイルをネイティブに実行できないだけでなく、Windows で Ubuntu 実行可能バイナリを実行することもできません。

Linux 上で Windows アプリケーションを実行する方法もありますがwine(すべてのソフトウェアで動作するわけではなく、一部のプログラムでのみ動作します)、Windows 上で Linux プログラムを実行するエミュレーターについてはまだ聞いたことがありません。Ubuntu VM 内でそのプログラムを使用するか、インターネットで Windows と互換性のあるダウンロードを検索する必要があります。

関連情報