web-dev-qa-db-ja.com

64ビットRHELでの32ビットバイナリのコンパイル

64ビットのRHEL5.3サーバーがあります。 32ビットとしてコンパイルするとメモリ効率が高くなるサーバーソフトウェアがあります。 GCCに32ビットをターゲットにするように指示する方法はありますか?

特定のソフトウェアを32ビットにしたいだけですが、それ以外はすべて64ビットのままにする必要があります。

このソフトウェアはyumリポジトリにパッケージ化されていないため、「yum install32bit-version」を実行することはできません。

2
Hongli Lai

自分でコンパイルするのが難しい場合、gccは-m32オプションを受け入れます。これは、コンパイラに32ビットオブジェクト/実行可能ファイルを生成するように指示する必要があります。 (ただし、gekkzが提案するルートに進むことができる場合は、それを実行してください)。

3

Joergensenが言ったように、-m32フラグを使用できます。これは、コンパイラおよびリンカの両方に渡す必要があります。

また、適切な32ビット開発パッケージがあることを確認してください。

1
Rich Homolka

yumを使用している場合は、おそらくinstall my_software-1.2.2-1.i386。これはパッケージがどのように見えるかの例であることに注意してください。実際のパッケージ名をバージョンとともに提供し、i386を追加する必要があるためです。

1
gekkz