Android arm eabi gcc:尝试设置时未找到命令

Android arm eabi gcc:尝试设置时未找到命令,android,compilation,Android,Compilation,我不知道该怎么办。我觉得我做的每件事都是对的。我正在尝试使用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 targ

我不知道该怎么办。我觉得我做的每件事都是对的。我正在尝试使用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.
    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
如果我从内核源代码(my.config所在的位置)键入相同的命令 $make ARCH=arm CROSS\u COMPILE=path/to/android\u ndk/toolschains/arm-linux-androideabi-4.4.3/prebuild/linux-x86/bin/arm-eabi-模块

它回来了

    make: *** No rule to make target `modules_prepare'.  Stop.
    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。所有东西都应该工作,但它不工作。

modules\u prepare是一个内核准备例程。它的目的是确保有足够的头文件存在,以便随后可以根据该内核源代码树构建内核模块。你看,内核有一些自动生成的文件,如果不运行至少
modules\u prepare
,就不可能编译内核模块

为此,当您从内核树运行模块时,这是一个正确的操作。从交叉编译器运行它没有任何意义,因为它不理解您要做什么

我建议您将交叉编译器添加到路径中,从而使您的生活更轻松:

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

默认值:
$(MAKE)-C ARCH=arm CROSS\u COMPILE=arm eabi-M=$(PWD)模块

这可能会让您更进一步。

您是否检查了arm eabi gcc(命令:file/arm eabi gcc)编译器与计算机(32位或64位)之间的兼容性?
如果您的arm eabi gcc与32位计算机兼容,为了防止在64位计算机中出现诸如“make:arm eabi gcc:Command not found”之类的错误,您必须安装包“ia32 libs”(Command:sudo apt get install ia32 libs)。

顺便说一下。。。很明显,我实际上并没有输入“/path/to/android\u ndk/”。。。这只是为了帮助你的眼睛你会考虑改变问题标题吗?它似乎并没有特别描述这个问题。是的。。。。一旦我能在你的问题的底部,在你的用户ID框的左边,找到一个“编辑”链接,我就接受了你的建议,把它添加到我的路径中。你是对的。那容易多了。然而,我仍然被我的问题所困扰。我正在一步一步地安装pdf,但仍然没有找到“make:arm-eabi-gcc:Command”“错误。pdf在这里。如果有人有时间查看,安装页面的长度为1页。现在内核模块已经确定,我用更多的信息更新了答案。谢谢。当需要编译LiME时,这确实会帮助我,但编译LiME并不是我的错误所在。如果不阅读pdf教程,很难解释。我会继续努力找出答案。谢谢你的帮助。