linux - 在aarch64 Linux中安装anaconda

标签 linux gcc centos glibc oraclelinux

我正在尝试为 aarch64 linux 安装 anaconda 。该实例在 oracle 云中设置,该实例使用的镜像是 oracle linux 8

我从存储库下载了anacoda的发行版

Anaconda3-2021.04-Linux-aarch64.sh

当我尝试执行它时 我收到错误

Unpacking payload ...
[29237] Error loading Python lib '/tmp/_MEIuLAg7E/libpython3.8.so.1.0': dlopen: /lib64/libc.so.6: version `GLIBC_2.25' not found (required by /tmp/_MEIuLAg7E/libpython3.8.so.1.0)
[29242] Error loading Python lib '/tmp/_MEI8iOwEM/libpython3.8.so.1.0': dlopen: /lib64/libc.so.6: version `GLIBC_2.25' not found (required by /tmp/_MEI8iOwEM/libpython3.8.so.1.0)

所以当我检查我得到的版本时

ldd --version
ldd (GNU libc) 2.17
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper

所以我尝试将其更新到2.28 我从存储库下载了所需的文件

glibc-2.28.tar.gz

cd glibc-2.28/
mkdir build
cd build/
../configure --prefix=/opt/glibc-2.28

当我运行这些命令时,我得到以下内容

checking build system type... aarch64-unknown-linux-gnu
checking host system type... aarch64-unknown-linux-gnu
checking for gcc... gcc
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for readelf... readelf
checking for g++... no
checking for c++... no
checking for gpp... no
checking for aCC... no
checking for CC... no
checking for cxx... no
checking for cc++... no
checking for cl.exe... no
checking for FCC... no
checking for KCC... no
checking for RCC... no
checking for xlC_r... no
checking for xlC... no
checking whether we are using the GNU C++ compiler... no
checking whether g++ accepts -g... no
checking whether g++ can link programs... no
checking for sysdeps preconfigure fragments... aarch64 alpha arm hppa i386 m68k microblaze mips nios2 powerpc riscv s390 sh sparc x86_64
checking for use of fpu sysdeps directories... yes
checking for -fstack-protector... yes
checking for -fstack-protector-strong... yes
checking for -fstack-protector-all... yes
checking for assembler and linker STT_GNU_IFUNC support... yes
checking for gcc attribute ifunc support... yes
checking if compiler warns about alias for function with incompatible types... no
checking sysdep dirs... sysdeps/unix/sysv/linux/aarch64 sysdeps/aarch64/nptl sysdeps/unix/sysv/linux/generic sysdeps/unix/sysv/linux/wordsize-64 sysdeps/unix/sysv/linux sysdeps/nptl sysdeps/pthread sysdeps/gnu sysdeps/unix/inet sysdeps/unix/sysv sysdeps/unix sysdeps/posix sysdeps/aarch64/fpu sysdeps/aarch64/multiarch sysdeps/aarch64 sysdeps/wordsize-64 sysdeps/ieee754/ldbl-128 sysdeps/ieee754/dbl-64/wordsize-64 sysdeps/ieee754/dbl-64 sysdeps/ieee754/flt-32 sysdeps/ieee754 sysdeps/generic
checking for a BSD-compatible install... /bin/install -c
checking whether ln -s works... yes
checking whether as is GNU as... yes
checking whether ld is GNU ld... yes
checking for as... as
checking version of as... 2.27, ok
checking for ld... ld
checking version of ld... 2.27, ok
checking for gnumake... no
checking for gmake... gmake
checking version of gmake... 3.82, bad
checking for gnumsgfmt... no
checking for gmsgfmt... no
checking for msgfmt... msgfmt
checking version of msgfmt... 0.19.8.1, ok
checking for makeinfo... makeinfo
checking version of makeinfo... 5.1, ok
checking for sed... sed
checking version of sed... 4.2.2, ok
checking for gawk... gawk
checking version of gawk... 4.0.2, ok
checking for bison... no
checking if gcc is sufficient to build libc... no
checking for nm... nm
checking for python3... python3
configure: error:
*** These critical programs are missing or too old: make bison compiler
*** Check the INSTALL file for required versions.

在这里我尝试根据此链接安装野牛 glibc configure error: yacc/bison missing

我得到以下内容

checking for a BSD-compatible install... /bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether make supports nested variables... (cached) yes
checking whether make supports the include directive... yes (GNU style)
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for gcc option to accept ISO C99... -std=gnu99
checking for gcc -std=gnu99 option to accept ISO Standard C... (cached) -std=gnu99
checking for g++... no
checking for c++... no
checking for gpp... no
checking for aCC... no
checking for CC... no
checking for cxx... no
checking for cc++... no
checking for cl.exe... no
checking for FCC... no
checking for KCC... no
checking for RCC... no
checking for xlC_r... no
checking for xlC... no
checking whether we are using the GNU C++ compiler... no
checking whether g++ accepts -g... no
checking dependency style of g++... none
checking how to run the C preprocessor... gcc -std=gnu99 -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking whether _XOPEN_SOURCE should be defined... no
checking for Minix Amsterdam compiler... no
checking for ar... ar
checking for ranlib... ranlib
checking build system type... aarch64-unknown-linux-gnu
checking host system type... aarch64-unknown-linux-gnu
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking whether pragma GCC diagnostic push works... yes
checking whether C++ compiler handles -Werror -Wunknown-warning-option... no
checking whether C++ compiler handles -fno-exceptions... no
checking whether C++ compiler accepts -std=c++98... no
checking whether C++ compiler accepts -std=c++98 -stdlib=libc++... no
checking whether C++ compiler accepts -std=c++03... no
checking whether C++ compiler accepts -std=c++03 -stdlib=libc++... no
checking whether C++ compiler accepts -std=c++11... no
checking whether C++ compiler accepts -std=c++11 -stdlib=libc++... no
checking whether C++ compiler accepts -std=c++14... no
checking whether C++ compiler accepts -std=c++14 -stdlib=libc++... no
checking whether C++ compiler accepts -std=c++17... no
checking whether C++ compiler accepts -std=c++17 -stdlib=libc++... no
checking whether C++ compiler accepts -std=c++2a... no
checking whether C++ compiler accepts -std=c++2a -stdlib=libc++... no
checking whether gcc -std=gnu99 supports POSIXLY_CORRECT=1... yes
checking whether g++ builds executables that work... no
checking whether g++ supports POSIXLY_CORRECT=1... no
checking for flex... no
checking for lex... no
checking for bison... no
checking for byacc... no
checking for ranlib... (cached) ranlib
checking for GNU M4 that supports accurate traces... configure: error: no acceptable m4 could be found in $PATH.
GNU M4 1.4.6 or later is required; 1.4.16 or newer is recommended.
GNU M4 1.4.15 uses a buggy replacement strstr on some systems.
Glibc 2.9 - 2.12 and GNU M4 1.4.11 - 1.4.15 have another strstr bug.
[root@skadebot bison-3.2]# make
There seems to be no Makefile in this directory.
You must run ./configure before running 'make'.
make: *** [abort-due-to-no-makefile] Error 1
[root@skadebot bison-3.2]# ./configure --prefix=$HOME/install
checking for a BSD-compatible install... /bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether make supports nested variables... (cached) yes
checking whether make supports the include directive... yes (GNU style)
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for gcc option to accept ISO C99... -std=gnu99
checking for gcc -std=gnu99 option to accept ISO Standard C... (cached) -std=gnu99
checking for g++... no
checking for c++... no
checking for gpp... no
checking for aCC... no
checking for CC... no
checking for cxx... no
checking for cc++... no
checking for cl.exe... no
checking for FCC... no
checking for KCC... no
checking for RCC... no
checking for xlC_r... no
checking for xlC... no
checking whether we are using the GNU C++ compiler... no
checking whether g++ accepts -g... no
checking dependency style of g++... none
checking how to run the C preprocessor... gcc -std=gnu99 -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking whether _XOPEN_SOURCE should be defined... no
checking for Minix Amsterdam compiler... no
checking for ar... ar
checking for ranlib... ranlib
checking build system type... aarch64-unknown-linux-gnu
checking host system type... aarch64-unknown-linux-gnu
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking whether pragma GCC diagnostic push works... yes
checking whether C++ compiler handles -Werror -Wunknown-warning-option... no
checking whether C++ compiler handles -fno-exceptions... no
checking whether C++ compiler accepts -std=c++98... no
checking whether C++ compiler accepts -std=c++98 -stdlib=libc++... no
checking whether C++ compiler accepts -std=c++03... no
checking whether C++ compiler accepts -std=c++03 -stdlib=libc++... no
checking whether C++ compiler accepts -std=c++11... no
checking whether C++ compiler accepts -std=c++11 -stdlib=libc++... no
checking whether C++ compiler accepts -std=c++14... no
checking whether C++ compiler accepts -std=c++14 -stdlib=libc++... no
checking whether C++ compiler accepts -std=c++17... no
checking whether C++ compiler accepts -std=c++17 -stdlib=libc++... no
checking whether C++ compiler accepts -std=c++2a... no
checking whether C++ compiler accepts -std=c++2a -stdlib=libc++... no
checking whether gcc -std=gnu99 supports POSIXLY_CORRECT=1... yes
checking whether g++ builds executables that work... no
checking whether g++ supports POSIXLY_CORRECT=1... no
checking for flex... no
checking for lex... no
checking for bison... no
checking for byacc... no
checking for ranlib... (cached) ranlib
checking for GNU M4 that supports accurate traces... configure: error: no acceptable m4 could be found in $PATH.
GNU M4 1.4.6 or later is required; 1.4.16 or newer is recommended.
GNU M4 1.4.15 uses a buggy replacement strstr on some systems.

我如何解决这个问题才能安装 anaconda ?

最佳答案

我能够使用 Anaconda3-2021.04-Linux-aarch64.sh 在基于 Arm 的免费层形状的 Oracle Linux 8.5 上安装 Anaconda for aarch64

$ conda --version
conda 4.10.1

您可能运行的是 Oracle Linux 7,而不是 8?

$ ldd --version
ldd (GNU libc) 2.28
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.
$ cat /etc/oracle-release
Oracle Linux Server release 8.5
$ uname -r
5.4.17-2102.203.6.el8uek.aarch64

关于linux - 在aarch64 Linux中安装anaconda,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71275366/

相关文章:

c++ - 将类作为函数参数传递时,C++ “is not a type”错误

python - 只允许一个 python 脚本实例?

java - Eclipse "Debug Current Instruction Pointer"慢

linux - 在 Linux 中安装 libnetfilter 队列时出现 libmnl 问题

linux - vim 设置在 zsh 中无法正常工作

linux - 访问另一台远程服务器Linux、Ubuntu的权限

linux - 为什么 Chef 找不到我的文件?

linux - Linux 上所有用户的 Matlab 搜索路径

c++ - 如何避免链接不必要的共享库?

c++ - 模板基类的调用方法