私は次のシグネチャ持っている(32ビット)NASMに多くの機能を実装したいと思います:私は、オブジェクトファイルを作成し、静的にリンクできるようにしたいその後nasmでスタティックライブラリを作成してgccとリンクするにはどうしたらいいですか?
int function1();
int function2();
など
をgccでコンパイルされたC++プログラム。私はintを返す関数の実装例を探しています。シンボルをエクスポートするのに必要な追加コードと、NASMが静的にリンクできる.aファイルを生成するコマンドラインを探しています。前もって感謝します。
NASMは.aファイルを生成しませんが、arを使って.oファイルを.oファイルから簡単に作ることはできます。そして、必ずしも.aファイルをリンクする必要はありません。 .oファイルを直接リンクすることができます。ですから、アセンブリ関数をgcc呼び出し規約と互換性を持たせる方法を知っておく必要があると思います。おそらく 'extern" C "'をプロトタイプに書いておきましょう。 http://wiki.osdev.org/C%2B%2B_to_ASM_linkage_in_GCC –