草庐IT

itanium-abi

全部标签

android - gradle + ndkbuild + android studio 2.2 如何设置支持的 ABI?

我想使用androidstudio与ndkbuild的集成。我的项目构建的“本地”部分仅适用于armeabi-v7a-hard和x86,如果我只是在jni目录中运行ndk-build,一切正常。我在Application.mk中有正确的行:APP_ABI:=armeabi-v7a-hardx86为了将项目集成到androidstudio中,我在build.gradle中添加了这样的行:externalNativeBuild{ndkBuild{path'src/lib/jni/Android.mk'}}但出于某种原因gradlebuild尝试使用APP_ABI=armeabi构建nati

android - "Unknown Application ABI:"而 'debug as native application'

我有这样的问题:[2013-11-1814:38:50-HelloJni]UnknownApplicationABI:[2013-11-1814:38:50-HelloJni][2013-11-1814:38:50-HelloJni]UnabletodetectapplicationABI's这个问题发生在每个项目上,我试图将其调试为“本地”。我看过this,this和this主题,但此解决方案对我的情况没有任何影响。在其他计算机或VM上,相同的项目使用相同的设置运行良好。list......安卓.mkLOCAL_PATH:=$(callmy-dir)include$(CLEAR_VA

android - 由于 abis 重叠,Play 开发者控制台上的 APK 完全被遮蔽

我正在尝试使用以下代码在我的gradle中进行abi拆分splits{abi{enabletruereset()include'x86','armeabi-v7a'/*,'arm64-v8a','x86_64'*/universalApktrue}}defabiVersionCodes=['armeabi-v7a':1,'x86':2,/*'arm64-v8a':2,'x86_64':4*/]android.applicationVariants.all{variant->//assigndifferentversioncodeforeachoutputvariant.outputs.

APP_ABI 的 Android NDK : what should I set in Application. mk?

我想知道应该将哪些架构放入我的Android游戏的Application.mk文件中。我想支持所有可以在GooglePlay和其他类型的Android商店上下载游戏的平台。我会说我应该设置:APP_ABI:=armeabix86(asmanyx86devicesarecomingsoonasfarasIknow)但不知是否应该设置:APP_ABI:=armeabiarmeabi-v7ax86或APP_ABI:=all请澄清。 最佳答案 您还可以指定mips,当您使用all时将包括在内。armeabi代码可以在armeabi-v7a设

android - 从命令行安装 android 旧系统镜像 (ABI)

在sdk管理器中,您可以轻松勾选复选框,然后安装系统镜像(例如,ARMEABIv7aSystemImage)并可用于创建AVD。我的问题是我尝试创建AVD的系统是headless的,所以我无法打开sdk管理器。我被迫从命令行安装系统镜像。通过运行$androidupdatesdk--no-ui可以很容易地安装目标(除了最新的目标“android-17”之外,所有目标都已实际安装但没有系统镜像)。现在,如何为“android-15”安装系统镜像?当我尝试$androidupdatesdk--no-ui--filter"sysimg-15"结果是Error:Ignoringunknownp

android - 使用 Android Studio 2.2 和 CMake 在 Android 中编译和使用依赖于 ABI 的可执行二进制文件

我正在通过稳定的gradle(http://tools.android.com/tech-docs/external-c-builds)通过CMake测试新的AndroidStudioC/C++构建。在我的应用中,已经获得root权限的设备需要使用我在AndroidStudio中编译的依赖于ABI的二进制文件。当我尝试用编译标准库时add_library(mylibSHAREDmylib.c)它会自动编译并复制到APK的lib/[ABI]文件夹中(例如/lib/armeabi/mylib.so),但如果我使用以下命令编译可执行二进制文件:add_executable(mybinarym

c++ - (如何)我可以在 Centos/RHEL 上使用新的 C++ 11 ABI 和 devtoolset-7 吗?

我的目标是在Centos7上使用gcc7.2(和clang6)构建与Centos7目标兼容的可执行文件,而无需安装devtoolset,但*使用较新的C++ABI*。较新的ABI修复了库中的几个缺陷,如果不更改ABI就无法修复这些缺陷。例如list::sizeO(1)VsO(n),字符串没有COW。我推测了为什么在以下问题中这不可能的答案。-D_GLIBCXX_USE_CXX11_ABI=1ineffectivefordevtoolset-7onCentOS7 最佳答案 这似乎与您链接到的问题重复,我看不出有任何理由将两者都打开。C

【解决】No toolchains found in the NDK toolchains folder for ABI with prefix: arm-linux-androideabi

在调试代码过程中,遇到了ndk报错的问题,这里记录下原因和解决方法。首先明确什么是NDK全名:NativeDevelopmentKit,是Android的一个工具开发包NDK是属于Android的,与Java并无直接关系。作用:快速开发C、C++的动态库,并自动将so和应用一起打包成APK即可通过NDK在Android中使用JNI与本地代码(如C、C++)交互应用场景:在Android的场景下使用JNI即Android开发的功能需要本地代码(C/C++)实现相对于Android编程来讲,NDK编程属于更偏向底层的编程。在程序编译过程中出现了“NotoolchainsfoundintheNDKt

c++ - 在 C++ 中,重写现有虚函数是否会破坏 ABI?

我的库有两个类,一个基类和一个派生类。在当前版本的库中,基类有一个虚函数foo(),派生类没有覆盖它。在下一个版本中,我希望派生类覆盖它。这会破坏ABI吗?我知道引入一个新的虚函数通常是这样,但这似乎是一个特例。我的直觉是它应该更改vtbl中的偏移量,而不实际更改表的大小。显然,由于C++标准不强制要求特定的ABI,这个问题在某种程度上是特定于平台的,但在实践中,打破和维护ABI的因素在大多数编译器中都是相似的。我对GCC的行为很感兴趣,但是人们可以回答的编译器越多,这个问题就越有用;) 最佳答案 可能。关于偏移量你错了。vtabl

c++ - LNK2038 : mismatch detected for 'boost_log_abi' : value 'v2s_mt_nt5' doesn't match value 'v2s_mt_nt6'

在创建由boost库组成的单独头文件后,我尝试将其包含在现有项目中。但是显示如下错误:::Error15errorLNK2038:mismatchdetectedfor'boost_log_abi':value'v2s_mt_nt5'doesn'tmatchvalue'v2s_mt_nt6'inBoostLogger.objE:\Projects\native\dcnotificationserver\loggerutil.obj::我知道以前的项目适用于从WindowsXP到当前Windows操作系统(即)10。但我读到WindowsXP支持boost。问题是什么?如何解决?我认为是