但我得到的错误..
我的配置选项是
../configure CFLAGS="-march=native -Wp,-D_FORTIFY_SOURCE=2 -O2 -pipe" --prefix=$PREFIX --libdir=$PREFIX/lib --libexecdir=$PREFIX/lib --with-headers=$PREFIX/include --enable-bind-now --enable-cet --enable-kernel=5.10 --enable-stack-protector=strong --disable-profile --disable-crypt --disable-werror --enable-systemtap --target=aarch64-linux-android --host=aarch64-linux-android
我正试图编译glibc为Android(仿生)基地Termux。
使用gcc
编译,但取决于bionicaarch64-linux-android
我的主机处理器aarch 64我的目标处理器aarch 64我的主机平台Android 12(termux)我的目标平台Android 12(termux)
我想在termux中构建和安装..和termux不依赖于aarch 64-linux-gnu.. Termux依赖于aarch 64-linux-android
也许这是不可能的,但我是为了实验而试着做的。
我有所有的依赖包安装像gcc,clang,python等。
在某个地方我找到了termux的glibc..但它不依赖于aarch64-linux-android
我知道开发人员可以做任何事情..我不知道任何计算机语言,所以我想要帮助..
我的错误日志
In file included from <command-line>:
syslog.c: In function '__vsyslog_internal':
syslog.c:94:30: error: inlining failed in call to 'always_inline' 'syslog': function not inlinable
不知何故,我删除了一个单行134
从syslog.c
解决了这个问题。
但是在最后一个位置之后,我收到了太多未定义的错误引用。
https://pastebin.com/U8NcNf97
我不知道该怎么解决..谢谢..
1条答案
按热度按时间t8e9dugd1#
我不想冒犯您,但是您试图使用
bionic
编译器编译glibc
实际上是在浪费时间。(即基于glibc的编译器和依赖项)-这是最正确的方法。用bionic
编译glibc
是可能的,但是安装过程将非常复杂和耗时(另外,实际上它将是一个完全不同的库)。另外,我想说的是,您在
configure
中错误地配置了PREFIX
。最好将glibc
及其所有基础从基于仿生学的termux系统中分离出来,否则您将面临破坏termux的风险。除了正确配置configure
之外,您还应该删除glibc
源文件中运行的不受支持的系统调用。这一点很重要,因为在启动任何基于glibc的程序时,系统调用可能导致Bad system call
错误。为了便于理解,我有为termux -https://github.com/Maxython/glibc-for-termux编译
glibc
的经验。