Linuxで実行するには、Cプログラムをどの形式でエクスポートする必要がありますか?

Linuxで実行するには、Cプログラムをどの形式でエクスポートする必要がありますか?

Windowsはアプリケーションを公開します。。 exe形式があるので、Cプログラムがあり、Linux用のアプリケーションを公開したいと思います。どのような形式で、どのように公開する必要がありますか?

ベストアンサー1

Linuxで使用される主なバイナリ形式は次のとおりです。非常に低い周波数、もともとUnix用に開発されました。ldこのプログラムは(協会)オブジェクトファイルから。 Linuxはまた、様々な実行可能ファイル形式をサポートすることができます。 Windowsの「exe」(移植可能な実行可能ファイル)ファイルをロードして実行するためのカスタムローダーを作成できます。

ちなみに「.exe」はフォーマットではなくファイル拡張子です。以前は、マイクロソフトが少なくとも2つの形式で提供していました。古いDOS "MZ"形式そして最新Windows PE形式。 PE形式は、「exe」ファイルだけでなく、「dll」(動的ライブラリ)も他の多くのファイルと同様に、原則として同じ構造を持っています。同様に、Linuxでは、呼び出されたバイナリファイルはELF形式であるだけでなく、共有動的ライブラリもELF形式ですが、通常、これらのライブラリの拡張子は「.so」または「.so.1.3.4」(バージョン)です。形式、数字はバージョンを表します)ライブラリ)。通常、呼び出すバイナリには拡張子はありません。実行可能プログラムの属性はファイルシステム属性「executable」から派生し、ファイル名(拡張子)から推論されません。

しかし、問題は非常に広範囲です。バイナリ実行可能ファイルを作成するプロセスが何であるかを理解するには、「linux cプログラミングチュートリアル」を検索して、より具体的な質問をします。

おすすめ記事