0

Linux x86 マシンでrtl8192cu ドライバーを ARM マシン用にクロスコンパイルしようとしています。Realtek の Web サイトからドライバーをダウンロードしました。コンパイル ガイドでは、Makefile の編集について次のように言及しています。

  1. $PATH 変数に、モジュールのクロスコンパイルに使用するツールチェーンの場所が含まれていることを確認してください。このディレクトリの場所については、セットアップ手順を参照してください。

  2. KSRC 環境変数を Beagleboard のカーネル ソースの場所に設定します (このディレクトリ パスについては、クロスコンパイル環境のセットアップ手順を参照してください)。

  3. KVER 環境変数をビーグルボードのカーネル バージョンに設定します。

この理由で、私は編集しました:

KVER := 2.6.32(2.6.32.はBBのカーネルバージョン)

KSRC ?= /home/demetres/linux-2.6.32.61(コンパイルされたカーネル ソース、BB から取得、保存されているhome/demetres/linux-2.6.32.61場所)

私の質問は:

Makefile のフィールドで何を編集する必要がありますCROSS_COMPILE:か? パスを編集しまし/home/demetres/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_GNU_Linux/binたが make、次のエラーで失敗します:

make ARCH=arm CROSS_COMPILE=/home/demetres/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_GNU_Linux/bin -C /home/demetres/linux-2.6.32.61 M=/home/demetres/Downloads/rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911  modules
make[1]: /home/demetres/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_GNU_Linux/bingcc: Command not found
make[1]: Entering directory `/home/demetres/linux-2.6.32.61'
  CC [M]  /home/demetres/Downloads/rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911/core/rtw_cmd.o
/bin/sh: /home/demetres/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_GNU_Linux/bingcc: No such file or directory
make[2]: *** [/home/demetres/Downloads/rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911/core/rtw_cmd.o] Error 1
make[1]: *** [_module_/home/demetres/Downloads/rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911] Error 2
make[1]: Leaving directory `/home/demetres/linux-2.6.32.61'
make: *** [modules] Error 2

情報: x86 マシンのクロスツールチェーンは CodeSourcery からのものです。arm-none-linux-gnueabi-gcc helloworld.c –o helloworld場所で を実行して、BB 用の helloworld.c をクロスコンパイルしましたCodeSourcery/Sourcery_CodeBench_Lite_for_ARM_GNU_Linux/bin

4

1 に答える 1

3

_CodeBench_Lite_for_ARM_GNU_Linux/bingcc: Command not found

このエラーは、正しいパラメーターを渡していないことが原因です

合格arm-none-linux-gnueabi-

{CROSS_COMPILE}gcc{CROSS_COMPILE}ld ...などを見つける場所

これはarm-none-linux-gnueabi-gcc arm-none-linux-gnueabi-ld

編集

make ARCH=arm CROSS_COMPILE=/home/demetres/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_GNU_Linux/bin/ arm-none-linux-gnueabi--C /home/demetres/linux-2.6.32.61 M=/home/demetres/Downloads/rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911 モジュール

クロスツールチェーンがエクスポートされた場合は、これを試してください

make ARCH=arm CROSS_COMPILE= arm-none-linux-gnueabi--C /home/demetres/linux-2.6.32.61 M=/home/demetres/Downloads/rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911 モジュール

于 2014-03-21T03:49:48.753 に答える