草庐IT

android - 在 x86_64 linux 机器上编译 gentoo-bionic

coder 2023-12-12 原文

如您所知,Bionic是 Google 用来运行 Android 应用程序的 C 库。人们正在努力在 Linux 机器上编译它,因此它可以很容易地在 Android 之外使用。这是来自一项最新成果的代码,最初称为 Gentoo-bionic。最初的项目是基于 Gentoo 的,但当前的源代码不是特定于 Gentoo 的。我正在使用Ubuntu。这是代码:

https://github.com/gentoobionic/bionic

这是在 ELC2013 上的介绍:

我尝试在 X86_64 Ubuntu 上编译它,但失败了。我试过:

./autogen.sh
./configure

我得到了:

configure: error: unsupported host cpu x86_64

所以我尝试了:

./configure --build=arm-linux --target=arm-linux --host=arm-linux

配置很好,但我得到了:

$ make
make: *** No rule to make target `libc/arch-x86/include/machine/cpu-features.h',
    needed by `all-am'.  Stop.

是否有人可以建议解决方法?

最佳答案

我对仿生一无所知。我只是想帮助你。 当我查看配置文件时,我看到了这段代码。

Makefile.h.am:第 135 行

if TARGET_ARCH_IS_X86
includemachine_HEADERS += \
    $(addprefix $(top_srcdir)/libc/arch-x86/include/, \
        machine/fpu_control.h \
        machine/sigcontext.h \
        machine/wordsize.h \
    )
endif

if TARGET_ARCH_IS_ARM
includemachine_HEADERS += \
    $(addprefix $(top_srcdir)/libc/arch-x86/include/, \
        machine/cpu-features.h \
    )
endif

configure.ac:第 94 行

case $host_cpu in
  *i?86*)
    TARGET_ARCH=x86
    COMMON_LDFLAGS="${COMMON_LDFLAGS} ${COMMON_LDFLAGS_X86}"
    COMMON_CFLAGS="${COMMON_CFLAGS} ${COMMON_CFLAGS_X86}"
    COMMON_INCLUDES="${COMMON_INCLUDES} ${COMMON_INCLUDES_X86}"
    COMMON_LDLIBS="${COMMON_LDLIBS} ${COMMON_LDLIBS_X86}"
  ;;
  *arm*)
    TARGET_ARCH=arm
    COMMON_LDFLAGS="${COMMON_LDFLAGS} ${COMMON_LDFLAGS_ARM}"
    COMMON_CFLAGS="${COMMON_CFLAGS} ${COMMON_CFLAGS_ARM}"
    COMMON_INCLUDES="${COMMON_INCLUDES} ${COMMON_INCLUDES_ARM}"
    COMMON_LDLIBS="${COMMON_LDLIBS} ${COMMON_LDLIBS_ARM}"
  ;;
  *)
  AC_MSG_ERROR([unsupported host cpu $host_cpu])
  ;;
esac

include/machine 文件夹中没有 cpu-features.h 文件。所以,你必须使用不同的目标。

关于android - 在 x86_64 linux 机器上编译 gentoo-bionic,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36331048/

有关android - 在 x86_64 linux 机器上编译 gentoo-bionic的更多相关文章

  1. ruby - 在 64 位 Snow Leopard 上使用 rvm、postgres 9.0、ruby 1.9.2-p136 安装 pg gem 时出现问题 - 2

    我想为Heroku构建一个Rails3应用程序。他们使用Postgres作为他们的数据库,所以我通过MacPorts安装了postgres9.0。现在我需要一个postgresgem并且共识是出于性能原因你想要pggem。但是我对我得到的错误感到非常困惑当我尝试在rvm下通过geminstall安装pg时。我已经非常明确地指定了所有postgres目录的位置可以找到但仍然无法完成安装:$envARCHFLAGS='-archx86_64'geminstallpg--\--with-pg-config=/opt/local/var/db/postgresql90/defaultdb/po

  2. ruby - 什么是填充的 Base64 编码字符串以及如何在 ruby​​ 中生成它们? - 2

    我正在使用的第三方API的文档状态:"[O]urAPIonlyacceptspaddedBase64encodedstrings."什么是“填充的Base64编码字符串”以及如何在Ruby中生成它们。下面的代码是我第一次尝试创建转换为Base64的JSON格式数据。xa=Base64.encode64(a.to_json) 最佳答案 他们说的padding其实就是Base64本身的一部分。它是末尾的“=”和“==”。Base64将3个字节的数据包编码为4个编码字符。所以如果你的输入数据有长度n和n%3=1=>"=="末尾用于填充n%

  3. ruby - 在 Windows 机器上使用 Ruby 进行开发是否会适得其反? - 2

    这似乎非常适得其反,因为太多的gem会在window上破裂。我一直在处理很多mysql和ruby​​-mysqlgem问题(gem本身发生段错误,一个名为UnixSocket的类显然在Windows机器上不能正常工作,等等)。我只是在浪费时间吗?我应该转向不同的脚本语言吗? 最佳答案 我在Windows上使用Ruby的经验很少,但是当我开始使用Ruby时,我是在Windows上,我的总体印象是它不是Windows原生系统。因此,在主要使用Windows多年之后,开始使用Ruby促使我切换回原来的系统Unix,这次是Linux。Rub

  4. C# 到 Ruby sha1 base64 编码 - 2

    我正在尝试在Ruby中复制Convert.ToBase64String()行为。这是我的C#代码:varsha1=newSHA1CryptoServiceProvider();varpasswordBytes=Encoding.UTF8.GetBytes("password");varpasswordHash=sha1.ComputeHash(passwordBytes);returnConvert.ToBase64String(passwordHash);//returns"W6ph5Mm5Pz8GgiULbPgzG37mj9g="当我在Ruby中尝试同样的事情时,我得到了相同sha

  5. 安卓apk修改(Android反编译apk) - 2

    最近因为项目需要,需要将Android手机系统自带的某个系统软件反编译并更改里面某个资源,并重新打包,签名生成新的自定义的apk,下面我来介绍一下我的实现过程。APK修改,分为以下几步:反编译解包,修改,重打包,修改签名等步骤。安卓apk修改准备工作1.系统配置好JavaJDK环境变量2.需要root权限的手机(针对系统自带apk,其他软件免root)3.Auto-Sign签名工具4.apktool工具安卓apk修改开始反编译本文拿Android系统里面的Settings.apk做demo,具体如何将apk获取出来在此就不过多介绍了,直接进入主题:按键win+R输入cmd,打开命令窗口,并将路

  6. ruby - 我的 Ruby IRC 机器人没有连接到 IRC 服务器。我究竟做错了什么? - 2

    require"socket"server="irc.rizon.net"port="6667"nick="RubyIRCBot"channel="#0x40"s=TCPSocket.open(server,port)s.print("USERTesting",0)s.print("NICK#{nick}",0)s.print("JOIN#{channel}",0)这个IRC机器人没有连接到IRC服务器,我做错了什么? 最佳答案 失败并显示此消息::irc.shakeababy.net461*USER:Notenoughparame

  7. ruby - 如何使用 fog 在 s3 上编辑文件? - 2

    我在s3上有一堆文件。我使用.fog配置文件设置了雾,这样我就可以启动fog并获得提示。如果我知道文件的路径,现在如何访问和编辑s3上的文件? 最佳答案 最简单的方法可能是使用IRB或PRY获取文件的本地副本,或者编写一个简单的脚本来下载、编辑然后重新上传。假设您有一个名为data.txt的文件。您可以使用以下脚本初始化与S3的连接。require'fog'connection=Fog::Storage.new({:provider=>'AWS',:aws_secret_access_key=>YOUR_SECRET_ACCESS_

  8. ruby-on-rails - Rails 基本 Base64 身份验证 - 2

    我正在尝试复制此GETcurl请求:curl-D--XGET-H"Authorization:BasicdGVzdEB0YXByZXNlYXJjaC5jb206NGMzMTg2Mjg4YWUyM2ZkOTY2MWNiNWRmY2NlMTkzMGU="-H"Content-Type:application/json"http://staging.example.com/api/v1/campaigns在Ruby中,通过电子邮件+apikey生成身份验证:auth="Basic"+Base64::encode64("test@example.com:4c3186288ae23fd9661c

  9. ruby-on-rails - 在 rails 中显示 base64 编码的图像 - 2

    我正在向我的Controller发送一个base64图像并按原样保存它。现在我需要显示该图像。这是我要显示的内容,但未显示图像:"/>为了编码,我使用了这个java脚本函数encodeURIComponent();我的编码图像格式:data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/........ 最佳答案 你不需要解码base64应该可以 关于ruby-on-rails-在rails中显示base64编码的图像,我们在StackOve

  10. ruby-on-rails -/usr/local/lib/libz.1.dylib,文件是为 i386 构建的,它不是被链接的体系结构 (x86_64) - 2

    在我的mac上安装几个东西时遇到这个问题,我认为这个问题来自将我的豹子升级到雪豹。我认为这个问题也与macports有关。/usr/local/lib/libz.1.dylib,filewasbuiltfori386whichisnotthearchitecturebeinglinked(x86_64)有什么想法吗?更新更具体地说,这发生在安装nokogirigem时日志看起来像:xslt_stylesheet.c:127:warning:passingargument1of‘Nokogiri_wrap_xml_document’withdifferentwidthduetoproto

随机推荐