2009-09-03 4 views
1

と64ビットのLinuxカーネルをコンパイル:のgccを使用して64ビットのLinuxカーネルをコンパイルしようとしますが、私は 次のエラーが表示されるgccの

カーネル/ bounds.c:1:エラー:コードモデル「カーネル」ではありません32 ビットモードでサポート
カーネル/ bounds.c:1:申し訳ありませんが、実装されていない:64ビットモードを

でコンパイルされていないがこれは何であるかはgcc -vレポート:
使用ビルトイン仕様。
対象:i586-redhat-linux
設定済み:../configure --prefix =/usr --mandir =/usr/share/man - infodir =/usr/share/info --with-bugurl = http://bugzilla.redhat.com/ bugzilla - enable-bootstrap --enable-shared --enable-threads = posix - enable-checking = release --with-system-zlib --enable -__ cxa_atexit - disable-libunwind-exceptions - -enable-言語= C、C++、にObjC、にObjC + +、Javaの、FORTRAN、ADA --enable-javaの-AWT = gtkの--disable-DSSI --enable- プラグイン--with-javaの自宅= /usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre - イネーブルlibgcj-、マルチ--enable-Javaに保守モードを--with-ECJ-ジャー=/ USR /シェア/java/eclipse-ecj.jar --disable-libjava-multilib --with-pp L - と-cloog --with調整=ジェネリック--withアーチ= i586の--build =のi586-redhat- のLinux
スレッドモデル:POSIX
GCCバージョン4.4.1 20090725(レッドハット4.4。 1-2)(GCC)は

私は、カーネルのmakeコマンドラインで何かが足りないのですか? または、システム上に存在するgccは、64ビット のコンパイルをサポートしていませんか?

答えて

5

コンパイラは32ビットです。

+0

どこで64ビットgccが見つかりますか?または、どのようにgccをコンパイルして64ビットコンパイルをサポートしますか? – vivekian2

+0

x86_64ビットをサポートするコンパイラをビルドした後、カーネルビルドに失敗しました。 kernel-devel-x86_64にfedora core rpmをインストールしようとしました。これも失敗しました。これは、おそらく64ビットをサポートしていない初期のP4 CPUであった根本原因でした。 – vivekian2

+0

OSの32ビットアーキテクチャを64ビットに変更したい場合は、システムを完全に再インストールする必要があります。しかし、ほとんどの64ビットプロセッサでは、すべて32ビットが動作し続けます。 –

4

どのシステムを実行していますか?

あなたはホストシステムが32ビットモードで実行されている場合は、クロスコンパイラのターゲットx86_64版を構築する必要があります。お使いのシステムが64ビットシステムの場合、ベンダーは64ビット実行可能ファイルをビルドすることができるシステムコンパイラを提供する必要があります。

"uname -a"はあなたのシステムで何を言いますか?

+0

私は32ビットモードで動作していると確信しています。 uname -a Linux host.vivekian.com 2.6.29.4-167.fc11.i586#1 SMP Wed May 27 17:14:37 EDT 2009 i686 i686 i386 GNU/Linux x86- 64? – vivekian2

関連する問題