Project

General

Profile

Actions

Feature #8331

closed

Update config.guess and config.sub for AArch64 (ARM64)

Added by akr (Akira Tanaka) almost 11 years ago. Updated over 10 years ago.

Status:
Closed
Target version:
-
[ruby-dev:47293]

Description

ふと cross compile のやり方を知ってしまって、いろいろと試していると、
AArch64 (ARM64) で configure で失敗することに気がつきました。

% ruby -v
ruby 2.1.0dev (2013-04-24 trunk 40443) [x86_64-linux]
% cd
% B=$HOME/b
% mkdir $B
% cd $B
% wget http://buildroot.uclibc.org/downloads/buildroot-2013.02.tar.bz2
% tar xf buildroot-2013.02.tar.bz2
% cd buildroot-2013.02
% make menuconfig
Select "Target Architecture (i386) --->" and select "AArch64".
Then select and .
% make
% $B/buildroot-2013.02/output/host/usr/bin/aarch64-linux-gnu-gcc -v
...
Target: aarch64-linux-gnu
...
% cd ..
% svn co http://svn.ruby-lang.org/repos/ruby/trunk ruby
% cd ruby
% svn info|grep Rev:
Last Changed Rev: 40481
% autoconf
% ./configure --host=aarch64-linux-gnu CC=$B/buildroot-2013.02/output/host/usr/bin/aarch64-linux-gnu-gcc
configure: WARNING: if you wanted to set the --build type, don't use --host.
If a cross compiler is detected then cross compile mode will be used
checking build system type... x86_64-unknown-linux-gnu
checking host system type... Invalid configuration aarch64-linux-gnu': machine aarch64' not recognized
configure: error: /bin/bash tool/config.sub aarch64-linux-gnu failed
zsh: exit 1 ./configure --host=aarch64-linux-gnu

どうも、config.guess と config.sub を更新する必要があるようです。

% git clone git://git.savannah.gnu.org/config.git # http://savannah.gnu.org/projects/config/
% grep timestamp config/config.guess|head -1
timestamp='2013-04-24'
% grep timestamp config/config.sub|head -1
timestamp='2013-04-24'
% cp config/config.guess config/config.sub tool
% ./configure --host=aarch64-linux-gnu CC=$B/buildroot-2013.02/output/host/usr/bin/aarch64-linux-gnu-gcc
configure: WARNING: if you wanted to set the --build type, don't use --host.
If a cross compiler is detected then cross compile mode will be used
checking build system type... x86_64-unknown-linux-gnu
checking host system type... aarch64-unknown-linux-gnu
checking target system type... aarch64-unknown-linux-gnu
...
checking for nroff... /usr/bin/nroff
.ext/include/aarch64-linux/ruby/config.h updated
verconf.h updated
ruby library version = 2.1.0
configure: creating ./config.status
config.status: creating GNUmakefile
config.status: creating Makefile
config.status: creating ruby-2.1.pc
% make
% make install DESTDIR=$B/root

config.guess と config.sub を更新すれば、install まではいきます。
(実行してないのでその先はわかりません)

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0