Articles of arm

如何编译和链接生锈的代码到Android apk打包应用程序

我正在尝试将Rust代码添加到android NDK示例(native-activity); 每当我将Rust代码(编译为.a)链接到.so时,它都无法运行。 我从这里获取信息,以获得一个知识渊博的防锈编译器和’独立工具链’ https://github.com/mozilla/rust/wiki/Doc-building-for-android 有人在Rust IRC频道上建议我需要在某处提到“拇指”; 是否可以选择传递给rustc,或者我是否必须首先以不同的方式构建它? 我当然可以在桌面版本上调用另外的rust&c。 是否有人在.apk中使用锈蚀代码; 它必须简单..很难破解复杂项目的makefile。 (我认为通过阅读伺服源来解决这个问题非常困难) 我已经证实这个过程可以生成一个可用的包装而不会生锈; 如果我链接未经剥离的防锈代码 – 即使没有达到(即使链接没有告诉我任何错误),它也无法运行。 如果我删除对’rusty_android()’的调用,它就可以了。 如果我将对garbage_android的调用移动到未到达的点,它仍然无效。 我可以用’nm’validation’rusty_android’是否在.so …中没有被剔除。 这是我目前的构建过程:它取自android native-activity示例; 我添加了一个带有单个externfunction的锈源文件,返回一个值,并尝试从样本的C main调试打印 ANDROID_CXX = /opt/ndk_standalone/bin/arm-linux-androideabi-gcc android: $(ANDROID_CXX) -I/home/ME/android-ndk-r9b/sources/android/native_app_glue -c jni/main.c -o obj/local/armeabi/objs/native-activity/main.o rustc –target=arm-linux-androideabi hello_android.rs -C android-cross-path=/opt/ndk_standalone –crate-type=staticlib -o rusty_android.a $(ANDROID_CXX) -shared -o libs/armeabi/libnative-activity.so obj/local/armeabi/objs/native-activity/main.o obj/local/armeabi/libandroid_native_app_glue.a another.o rusty_android.a -llog -landroid -lEGL -lGLESv1_CM ant […]

将android移植到自定义arm设备需要什么知识/专业知识?

我正在开发一个当前运行linux内核和microwindows窗口系统的系统。 我可以使用当前的Linux系统驱动程序代码。 我想将android移植到它上面,就像一个爱好项目一样。 你能告诉我什么对linux-kernel的理解需要移植它吗? 请给我参考(书籍,教程)以建立理解。 谢谢,Sunny。 PS我对linux有基本的了解。 设备的配置是 450 Mhz ARM9, 64 MB RAM, 256 MB NAND 480×272分辨率。

如何在Android项目中使用ARM汇编代码?

我对Assembly和ARM并不是特别有经验,但我能够在其中编写一些例程,我想看看它们是如何在配备ARM的Android设备(Nexus S)上运行的。 将汇编代码文件包含到Android项目中的过程是什么? 我是否只能从本机代码或Java中调用它?

Android 4及更高版本仅支持armeabi-v7a安全吗?

我开发了一个主要使用C ++的应用程序,并且像往常一样由NDK编译到.so库。 我们知道必须分别为每个CPU架构构建本机应用程序; 所以我为armeabi和armeabi-v7a提供了不同的文件。 (我特意遗漏了x86和mips ,因为没有很多具有这些架构的Android设备被发布。) 但是,大小非常大,每个文件占用大约90 MB的空间,我想减少它。 我知道我可以省略armeabi-v7a ,因为向后兼容,但在这种情况下,应用程序将运行得非常慢。 考虑到我的应用程序仅支持android ICS及更高版本( minSdkVersion=”14″ ),我可以安全地删除armeabi并假设所有这些新设备都使用armeabi-v7a吗? 或者有些设备仍然可以使用旧的armeabi而不是armeabi-v7a架构?

架构mips,arm,x86的Qt版本缺失

我正在尝试使用Qt-Project V.5.1开发适用于Android的应用程序。 安装qt-windows-opensource-5.1.0-msvc2012_opengl-x86_64-offline安装程序后,在安装过程中可以选择每个组件,我尝试将其设置为android构建。 在Qt Creator中,我打开工具 – >选项 – > Android并填写我的Android SDK,Android NDK,Ant和opnJDK位置并勾选“自动创建Android工具包套件”。 checkbox 我在这里得到一个警告说: Qt versions for architectures mips, arm, x86 are missing. To add the Qt versions, select Options > Build & Run >Qt versions. 当我转到Qt版本选项卡时,既没有Android选项,也没有mips arm或x86的选项。 (实际上只有QT 5.1.0 MSVC2012 OpenGl 64位选项)。 添加按钮只允许我指定qmake文件。 我能find的唯一一个是“QT 5.1.0 MSVC2012 OpenGl 64 Bit”选项已经引用的那个。 谁能告诉我如何在Build and Run选项卡中获取Android选项? 提前致谢。

ARM,MIPS,x86的Android os.arch输出?

为了识别Android设备的平台,似乎java系统属性“os.arch”就足够了: Log.i(“mytag”, “os.arch: ” + System.getProperty(“os.arch”)); 大多数ARM设备都会响应: os.arch: armv7l x86模拟器响应: os.arch: i686 真正的英特尔和MIPS设备的输出有哪些? x86 Android设备:?????? mips Android设备:?????? 还有其他平台和变种吗? 编辑Google TV: 看起来Google TV使用’none’来构建代码。 Vizio Co-Star:os.arch:armv7l,Build.CPU_ABI / Build.CPU_ABI2:none / unknown Logitech Revue:os.arch:i686,Build.CPU_ABI / Build.CPU_ABI2:none / unknown 编辑澄清意图: 这里的目标是将实际设备列表的编译与其输出进行众包。 AOSP代码的预期输出很有意思,但设备制造商(如上面的旧Google TV设备)可能会偏离提供AOSP代码预期的输出。

什么是iOS / Android ARM设备最快的FFT库?

什么是iOS / Android ARM设备最快的FFT库? 人们通常在iOS / Android平台上使用什么库? 我猜vDSP是iOS上最常用的库。 编辑:我的代码是http://anthonix.com/ffts并使用BSD许可证。 它运行在Android和iOS上,比libav,FFTW和vDSP更快。 EDIT2:如果有人可以访问POWER7机器(或其他机器),请给我发电子邮件。 非常感谢。 干杯,

是否可以在非root用户手机上运行本机arm二进制文件?

好吧,我一直潜水在低级Android编程(使用CodeSourcery工具链的本机C / C ++)的浑水中。 我在模拟器上试用了可执行文件,但它确实有效。 我想在真实的设备上试一试。 所以我插入了我的nexus并将文件推送到文件系统。 然后我尝试执行二进制文件,我得到了一个权限错误。 无论我如何安装它,或者我发送它的地方都没关系,我不是root,它不会让我执行它。 有没有办法在非root手机上运行这样的程序?

Android模拟器系统映像和AMD处理器

我使用AMD FX X6 6300型处理器。 (它支持虚拟化,我的BIOS设置为ON) 我安装了“Intel x86 Emulator Accelerator”。 当我尝试运行英特尔加速器设置时,我得到了无法安装的设置。 (错误是虚拟化) SDK Manager具有以下系统映像选项: Android 4.2.2 英特尔x86 Atom系统映像 ARM EABI v7a系统映像 MIPS系统映像 那么下载英特尔x86系统映像是否有意义? 或者没有安装HAXM它没用? 我应该下载ARM或MIPS图像吗? 您对AMD处理器的仿真器系统映像有什么建议? 或者唯一的选择是使用快照?

适用于Python和Java的Android Tablet IDE

是否有任何基于ARM的Android平板电脑编程环境(IDE)未被模拟? (最好是Python或Java) 平板电脑正在成为学校中更受欢迎的器具,稳定的环境将在计算机科学计划中发挥作用。