Articles of makefile

任务执行失败’:app:compileDebugNdk’无法运行此命令ndk-build.cmd

Error:Execution failed for task ‘:app:compileDebugNdk’. com.android.ide.common.internal.LoggedErrorException:无法运行命令:C:\ Program Files \ ADT \ sdk \ android-ndk \ ndk-build.cmd NDK_PROJECT_PATH = null Error Code: 1 这是我在android studio上运行make项目时获得的输出。 我在android studio 1.0 sdk构建工具24.0但是针对API 14 这是我的Android.mk文件的样子 LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := Main LOCAL_SRC_FILES := Main.cpp LOCAL_LDLIBS := -llog -ljnigraphics -lz -landroid LOCAL_SHARED_LIBRARIES := libavformat libavcodec libswscale libavutil include […]

如何将现有的make文件与Android NDK合并

所以我有一个庞大的现有C项目,我放在$PROJECT/jni目录中。 这个项目通常是通过运行一个configure脚本来创建的,该脚本创建了Makefile,然后允许通过make编译项目。 这个项目相当大,有许多包含源文件和头文件的目录。 我想我错过了对Android.mk应该如何工作的基本理解。 是否应该替换当前用于编译项目的configure和makefile? 或者我将生成的makefile从我的配置脚本合并到Android.mk ? 他们提供的示例相当简单,只有少量源文件。 我的jni目录看起来更像: jni/ folder1/subfolder1 folder1/subfolder2 folder1/source folder2/source ….. foldern/source configure/ configure/configure.sh Makefile Android.mk 生成的makefile非常广泛(配置量很大,每个目录中都有一个)所以我很少迷失如何处理它。 编辑: 主要问题是NDK附带的示例是微不足道的例子。 它们在顶级jni目录中有3-5个源文件。 我的问题是,这是一个庞大的项目,配置复杂,有4个顶级文件夹,每个文件夹都有许多子目录。 我不能简单地将源移动到jni文件夹并运行ndk编译器。

如何为NDK_MODULE_PATH指定目录

在过去的几个小时里,我遇到了这个简单任务的麻烦。 我在我的Android项目的根目录中有ndk-modules目录,我在我的Android.mk的jni文件夹中有以下内容 LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) NDK_MODULE_PATH := $(LOCAL_PATH)/../ndk-modules … $(call import-module,mymodule) 当我构建mk文件时,我得到了 Android NDK: /MyApp/jni/Android.mk: Cannot find module with tag ‘mymodule’ in import path Android NDK: Are you sure your NDK_MODULE_PATH variable is properly defined ? 我在这做错了什么? 如何正确指定路径? 更新: 规范是对的。 我在mymodule目录中遇到了问题。 对困惑感到抱歉。

Android NDK中的错误使程序无法find

我正在尝试使用此链接设置Android NDK。 我按照命令make -v开始设置进程,我得到了 $ make -v bash: make: command not found 然后我输入了上面链接中给出的以下命令 cd /cygwin/C/..path for my project /cygwin/C/..path of ndk installed path 此时我正在接受 ERROR: Cannot find ‘make’ program. Please install Cygwin make package or define the GNUMAKE variable to point to it. 注意,我检查了所有这种可能性错误链接: 链接-1 LINK-2 删除文件夹之间的空格。 检查一下:

Android.mk与Application.mk

关于Android.mk和Application.mk的使用,我有点模糊 我已经尝试在NDK附带的文档中阅读APPLICATION-MK.HTML和ANDROID-MK.HTML,但仍然对两个 makefile的目的感到困惑。 我真的很感激能帮助我理解这一点的人。

怎么办android mm干净?

我正在使用mm命令在Android源代码中构建自定义模块。 当我运行mm clean ,似乎整个项目都被清理干净了。 如何将清洁限制在当前模块中?

启用exceptionC ++

我正在尝试为Android制作APP原生代码。 Native代码在cplusplus中。 每当我尝试制作时,都会出现以下错误。 H236Plus.cpp:135:错误:禁用exception处理,使用-fexceptions启用 如何使用-fexceptions启用exception处理,以及在哪里使用它?

Android NDK:包括boost c ++库

我正在尝试使用NDK在我的Android应用程序中使用boost库。 我在这里和这里find了几个成功案例,但我不能对我说同样的话。 我特意尝试在此链接中使用库,以及boost线程库。 在下面的代码中,我只是尝试包含线程库,而不是数学库。 我用来构建boost库的过程与我附加的第一个链接几乎相同。 到目前为止,似乎我已经成功构建了boost库,但是当我运行ndk-build ,我收到以下错误: Prebuilt : libboost_thread.a <= /sources/ cp: omitting directory `path/to/ndk/sources/boost’ make: *** [obj/local/armeabi/libboost_thread.a] Error 1 显然cp: omitting directory…并不是一个错误。 但我唯一能得到的就是下一行,这并不是什么意思。 Error 1 这是我的Android.mk文件: LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_STATIC_LIBRARIES := boost_thread LOCAL_LDLIBS := lboost_system-gcc-md lboost_thread-gcc-md -lgnustl_static LOCAL_LDLIBS += lboost_system-gcc-md lboost_thread-gcc-md \ -L$(NDK_ROOT)/sources/cxx-stl/gnu-libstdc++/libs/armeabi \ -lgnustl_static LOCAL_SRC_FILES := #cpp_sources LOCAL_MODULE := […]

Android NDK:如何将Android.mk包含到另一个Android.mk(分层项目结构)中?

看起来有可能,但我的脚本会产生奇怪的结果: LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) include $(LOCAL_PATH)/libos/Android.mk include $(LOCAL_PATH)/libbase/Android.mk include $(LOCAL_PATH)/utils/Android.mk LOCAL_MODULE := native include $(BUILD_SHARED_LIBRARY) 只有第一个包被解析正常,其他Android.mk文件正在奇数路径上被查询。 建议? 更新:我打破了我的建筑环境……在办公室没问题,但在家里LOCAL_PATH:= $(调用my-dir)将LOCAL_PATH定义为NDK目录而不是项目目录。 这是我的建筑批次: set BASHPATH=K:\cygwin\bin\bash set PROJECTDIR=/cygdrive/h/Alex/Alex/Work/Android/remote-android set NDKDIR=/cygdrive/h/Alex/Programming_Docs/Android/android-ndk-r6/ndk-build set APP_BUILD_SCRIPT=/cygdrive/h/Alex/Alex/Work/Android/project/jni/Android.mk set DEV_ROOT=h:/Alex/Alex/Work/Android/project %BASHPATH% –login -c “cd %PROJECTDIR% && %NDKDIR%” 更新:我完全不明白这件事是如何构成路径的。 我收到路径错误,如“/cygdrive/d/project/jni//cygdrive/d/Soft/project/jni/libos/src/libos.cpp”。这是在我决定指定根目录中的所有文件之后Android.mk而不是包含子模块。 更新2:没有运气,这也不起作用: LOCAL_PATH:= $(call my-dir) # Include makefiles here. include $(LOCAL_PATH)/libos/Android.mk include $(LOCAL_PATH)/libbase/Android.mk include $(LOCAL_PATH)/utils/Android.mk […]

如何为Android编译GCC?

有没有办法为Android编译GCC? 基本上,在Android终端模拟器中可以访问GCC编译器,并且能够编译将在C或C ++源文件的android上运行的二进制文件。 我的意图是使用它并最终安装make。