2013-06-22

Slitaz -- Compiling with qemu-arm-static chroot

Compiling with qemu-arm-static chroot

Target: arm-slitaz-linux-gnueabi

--with-arch=armv6 --with-fpu=vfp --with-float=hard --with-pkgversion=SliTaz
--build=arm-slitaz-linux-gnueabi --host=arm-slitaz-linux-gnueabi

1.
root@slitaz:~# uname -a
Linux slitaz 2.6.37-slitaz #1 SMP Fri May 10 17:42:01 CST 2013 i686 GNU/Linux

2.
root@slitaz:~# tazdev -c /opt/rootfs-armhf

Mounting virtual filesystems...                                    [ Done ]
Chrooting to: /opt/rootfs-armhf

3.
root@slitaz:/# gcc -v
Using built-in specs.
COLLECT_GCC=/usr/bin/gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/arm-slitaz-linux-gnueabi/4.6.3/lto-wrapper
Target: arm-slitaz-linux-gnueabi
Configured with: /home/slitaz/wok/gcc/source/gcc-4.6.3/configure --prefix=/usr --libexecdir=/usr/lib --enable-languages=c,c++ --enable-shared --enable-c99 --enable-long-long --enable-__cxa_atexit --with-system-zlib --enable-plugin --disable-multilib --disable-libssp --disable-checking --disable-werror --disable-bootstrap --enable-clocale=gnu --enable-lto --enable-threads=posix --with-arch=armv6 --with-fpu=vfp --with-float=hard --with-pkgversion=SliTaz --build=arm-slitaz-linux-gnueabi --host=arm-slitaz-linux-gnueabi
Thread model: posix
gcc version 4.6.3 (SliTaz)

4.
root@slitaz:/# echo 'int main() { return 0; }' > test.c

root@slitaz:/# gcc -o test.o test.c

root@slitaz:/# ls -l test*
-rw-r--r--    1 root     root            25 Jun  9 13:59 test.c
-rwxr-xr-x    1 root     root          6790 Jun  9 13:59 test.o

5.
root@slitaz:/# file test.o
test.o: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, not stripped

root@slitaz:/# readelf -A test.o
Attribute Section: aeabi
File Attributes
  Tag_CPU_name: "6"
  Tag_CPU_arch: v6
  Tag_ARM_ISA_use: Yes
  Tag_THUMB_ISA_use: Thumb-1
  Tag_FP_arch: VFPv2
  Tag_ABI_PCS_wchar_t: 4
  Tag_ABI_FP_denormal: Needed
  Tag_ABI_FP_exceptions: Needed
  Tag_ABI_FP_number_model: IEEE 754
  Tag_ABI_align_needed: 8-byte
  Tag_ABI_align_preserved: 8-byte, except leaf SP
  Tag_ABI_enum_size: int
  Tag_ABI_HardFP_use: SP and DP
  Tag_ABI_VFP_args: VFP registers
  Tag_DIV_use: Not allowed
root@slitaz:/#