问题标签 [android-make]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 无法在 Android Ndk 中构建本地共享库
我想为版本 4.0.3 构建库 .so 但我无法这样做。我觉得这些问题是由于我的 .mk 文件没有与库链接而引起的。
Android.mk 文件
该文件为我构建静态即 .a 文件,但在构建共享库时显示以下错误。
我使用 LOCAL_CFLAGS += -DHAVE_PTHREADS 修复了上述错误
但是现在,在生成库时,我得到了大量的错误列表。
任何帮助将不胜感激。
opencv - OpenCV/NDK - android makefile 中的 zlib 编译问题
我一直在尝试编译包含 OpenCV 库的共享库。我的示例 android make 文件如下:
但是,它不断抛出以下错误:
我尝试了如下几个选项。
但没有任何帮助。有人知道我该如何解决这个问题吗?
编辑:忘记添加,当我添加包括'-lz'在内的上述两个选项时,它会抛出一个错误,提示“未找到本机编译库,本机编译是否成功完成!”。
android - LOCAL_LDLIBS 不起作用,但 LOCAL_LDFLAGS 起作用。为什么?
我试图在我的应用程序中包含 liblog 以使用 android 日志打印。
我试着把它包括在LOCAL_LDLIBS
它不起作用。我收到以下错误:
我看到很少有应用程序使用它LOCAL_LDFLAGS
。我试过了,它奏效了。为什么?也LOCAL_SHARED_LIBRARIES
可以。
c - Android 4.4,未定义对 __printf_chk 的引用
我正在将一些库从 Android 4.3 移动到 Android 4.4
以前在 Android 4.3 中编译的项目现在在使用 Android 4.4 源编译时会出现以下错误
/home/vishallocal/TI/android/kitkat/prebuilts/gcc/linux-x86/host/i686-linux-glibc2.7-4.6/sysroot/usr/include/bits/stdio2.h:105:错误:未定义引用'__printf_chk' /home/vishallocal/TI/android/kitkat/prebuilts/gcc/linux-x86/host/i686-linux-glibc2.7-4.6/sysroot/usr/include/bits/stdio2.h:105:错误:未定义对“__printf_chk”/home/vishallocal/TI/android/kitkat/prebuilts/gcc/linux-x86/host/i686-linux-glibc2.7-4.6/sysroot/usr/include/bits/stdio2.h:105 的引用: 错误:未定义对“__printf_chk”/home/vishallocal/TI/android/kitkat/prebuilts/gcc/linux-x86/host/i686-linux-glibc2.7-4.6/sysroot/usr/include/bits/stdio2 的引用。 h:105:错误:未定义对“__printf_chk”的引用 collect2:错误:ld 返回 1 退出状态
有关解决此问题的任何指示?
android - 在 Android.mk 中包含 Python 库
假设我有一个像这样的文件结构:
并在 top_lib/Android.mk 和 another_lib/Android/mk 和 middle_lib/Android.mk 中定义了一个 make 函数
在每个 sub_lib/Android.mk 我有以下内容:
在另一个库中,如果我这样做,一切都很好。甚至在 middle_lib 或 top_lib 中。但是如果我在树的顶端,说运行 m job_stuff,最终我遇到了一个错误:
我想我明白发生了什么。它在 MODULE.TARGET.ETC 中暂存文件,并且具有相同名称的文件会引发错误。但我不知道如何解决它。我尝试更改LOCAL_MODULE := $(1)
为 LOCAL_MODULE := $(2).$(1)
,这使得文件夹名称出现在每个文件名之前(例如:sub_lib1.cheese_maker.py),我想这就是我告诉它的。
我知道如果我将其更改LOCAL_MODULE_CLASS := ETC
为其他任何内容,例如LOCAL_MODULE_CLASS := ETCA
在其中一个 Android.mk 文件中,它将适用于该文件。但我似乎找不到太多关于LOCAL_MODULE_CLASS
它以及如何使用它的文档,而且由于构建系统非常复杂,我不确定在所有地方创建新类的影响。
我还尝试更改从 add-file 添加的文件,使其更符合以下内容
那就是说当我运行 mm 时它做了一些事情,但是在树的顶部 m job_stuff 什么也没做(嗯,它构建了很多东西但是 $(DESTINATION_DIR) 是空的)
所以我被困住了。如何在不同的库中有多个init .py 文件?
kernel-module - MODULE.TARGET.SHARED_LIBRARIES.libjpeg 已定义错误
我正在尝试为设备构建 AOSP 4.4.2 内核。当我编译内核时,我得到
我知道共享变量 libjpeg 已经定义,我需要删除其中一个。那是对的吗?
我尝试查看 external/jpeg 文件夹,但不确定要查看哪个文件。有人可以告诉我如何处理这种情况。
android - 编译 android 源时 linux-x86/bin/acp 的权限被拒绝
我正在编译android源代码。命令是
在构建过程中,一段时间后发生错误:
供您参考:
我在 /media/entertainment/ 中拥有正常的用户访问权限(读/写)
我正在使用 Ubuntu 12.04 64 位
有人可以帮我解决这个问题吗?
android - 使用嵌入式 CrossWalk 构建应用程序
我正在尝试构建一个以CrossWalk作为依赖项的浏览器。
但我不断收到关于XWalkInternalResources的异常:
为我的浏览器制作文件:
为 CrossWalk 制作文件:
这里有什么奇怪的地方吗?我知道浏览器项目可以找到包含在人行横道项目中的 .jar 文件,因为我之前已经消除了与此相关的错误。
我是否需要执行任何其他步骤来包含这些内部资源?
android - Android makefile 调用导入路径变量值
在一个 android makefile 我有以下行
现在,我和几个人一起工作,这条线对人不是很友好。我曾尝试在环境变量中定义该路径,但是当我将它添加到调用 import-add-path 行时它会被忽略。我将变量作为警告输出,makefile 显然存在变量:
我怎样才能使这项工作对多个开发人员友好?
编辑:OSX 上的 Eclipse,构建 cocos2d-x 2.1.5 TestCpp 项目,android NDK r10c。我收到的错误消息实际上是关于缺少 ABI 并询问我是否正确设置了 NDK_MODULE_PATH 变量并且它仅在调试版本中发生(也许 GDB 会有所作为?)。
android - AOSP Build - 从 eng 切换到 user 或 userdebug 时,不再创建数据目录
我正在为自定义设备(我们称之为 mycustomdevice)构建 AOSP,并且已成功构建、映像和部署工程构建 ( TARGET_BUILD_VARIANT=eng
)。
但是,当我尝试使用 auser
或userdebug
build 进行构建时,不再创建数据目录 ( myAOSP/out/target/product/mycustomdevice/data
)。因此,也没有userdata.img
创建。
我已经完全清除了 AOSP 源目录(因此该out
目录也被清除了),并重新加载了源。然后我执行一个lunch mycustomdevice-userdebug
(或 mycustomdevice-user),然后运行该m
命令。eng
和user
/之间没有其他任何变化userdebug
,并且使用构建变体集重复相同的步骤eng
将导致data
再次包含目录。
我找不到有关包含数据目录的任何文档。我从几个月前的一次培训课程中了解到,数据暂存目录是可选的。我应该怎么做才能确保为所有TARGET_BUILD_VARIANT
s 创建数据目录?