簡體   English   中英

arm-eabi-gcc:嘗試設置LiME時找不到命令

[英]arm-eabi-gcc :command not found when trying to set up LiME

我不知道了。 我覺得我已經正確地做了所有事情。 我正在嘗試使用LiME從android捕獲內存圖像。 如果我執行以下操作...

   $ cd $my_android_ndk_path/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/
   $ make ARCH=arm CROSS_COMPILE=arm-eabi- modules_prepare

它返回

    make: *** No rule to make target `modules_prepare'.  Stop.

如果我從內核源代碼(位於.config所在的位置)鍵入相同的命令,則$ make ARCH = arm CROSS_COMPILE = path / to / android_ndk / toolchains / arm-linux-androideabi-4.4.3 / prebuilt / linux-x86 / bin / arm-eabi- modules_prepare

它返回

    make: /path/to/android_ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-eabi-gcc: Command not found
    CHK     include/linux/version.h
    make[1]: `include/asm-arm/mach-types.h' is up to date.
    CHK     include/linux/utsrelease.h
    SYMLINK include/asm -> include/asm-arm
    CC      kernel/bounds.s

我確定我的目錄是正確的。 有誰知道我可能做錯了什么。 我沒有為ndk使用任何特定工具。 我只是分別解壓縮了ndk和sdk並安裝了JDK。 一切都應該工作,但不能。

您是否檢查了arm-eabi-gcc(命令:文件/ arm-eabi-gcc)編譯器與計算機(32位或64位)之間的兼容性? 如果您的arm-eabi-gcc與32位計算機兼容,為防止在64位計算機中出現諸如“ make:arm-eabi-gcc:Command not found”之類的錯誤,則必須安裝軟件包“ ia32-libs”(命令:sudo apt-get install ia32-libs)。

modules_prepare是內核准備例程。 其目的是確保存在足夠的頭文件,您可以隨后針對該內核源代碼樹構建內核模塊。 您會看到,內核具有一些自動生成的文件,並且如果至少不運行modules_prepare ,將無法進行內核模塊編譯。

為此,當您從內核樹運行modules_prepare時,這是正確的操作。 從交叉編譯器運行它是沒有意義的,因為它不了解您要執行的操作。

我建議您通過將交叉編譯器添加到PATH中來使您的生活更輕松:

PATH=$PATH:$my_android_ndk_path/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/
cd <kernel directory>
make ARCH=arm CROSS_COMPILE=arm-eabi- modules_prepare

因此,這就是說... modules_prepare只是准備構建模塊的第一步。 如果您要構建內核模塊 (LiME?我不知道這是什么), 那么您將需要遵循構建內核模塊的步驟

編輯:

現在,我知道您要構建的內核模塊(石灰法證),我可以看到其SVN源 Makefile期望您正在為本地計算機進行構建,而不是交叉編譯。

更改以下內容:

default:
        $(MAKE) -C /lib/modules/$(KVER)/build M=$(PWD) modules

default:
        $(MAKE) -C <your Android kernel> ARCH=arm CROSS_COMPILE=arm-eabi- M=$(PWD) modules

那可能會使您更進一步。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM