Thread: DIY - KeK
View Single Post
Old 07-21-2012, 05:43 PM   #113
knc1
Going Viral
knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.
 
knc1's Avatar
 
Posts: 17,212
Karma: 18210809
Join Date: Feb 2012
Location: Central Texas
Device: No K1, PW2, KV, KOA
mfpr-3.1.1-uclibc

This is another of the math libraries that the gcc build system **could** build for you. Each and every time gcc was built.

http://www.mpfr.org/
http://www.mpfr.org/mpfr-current/mpfr-3.1.1.tar.xz

Once again, going to just install a copy ...


Spoiler:

The content of my pset.sh file:
Code:
export PATH=/opt/qemu111/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
From the location of the AL install:
Code:
core2quad system-image-armv6l $ . pset.sh
core2quad system-image-armv6l $ ./dev-environment.sh
  * * * *
  Type exit when done.
(armv6l:1) /home # export PS1='(armv6l:1) \W \$ '
(armv6l:1) /home # export PATH=/home/bin:/bin:/sbin
(armv6l:1) /home # cd work/gcc
(armv6l:1) gcc # mkdir mpfr ; cd mpfr
(armv6l:1) mpfr # wget http://drpbox.knetconnect.com/KeK/mpfr-3.1.1.tar.xz
  Connecting to drpbox.knetconnect.com (173.236.167.90:80)
(armv6l:1) mpfr # xz -d mpfr-3.1.1.tar.xz
(armv6l:1) mpfr # tar -xf mpfr-3.1.1.tar
(armv6l:1) mpfr # mkdir mpfr-sf-uclibc mpfr311-sf-uclibc
(armv6l:1) mpfr # cd mpfr-3.1.1
(armv6l:1) mpfr-3.1.1 # export CFLAGS='-mfloat-abi=softfp -mfpu=vfp -mcpu=arm1136jf-s -O2 -fomit-frame-pointer'
(armv6l:1) mpfr-3.1.1 # export C_INCLUDE_PATH='/home/include'
(armv6l:1) mpfr-3.1.1 # export LIBRARY_PATH='/home/lib'
(armv6l:1) mpfr-3.1.1 # export LD_LIBRARY_PATH=$LIBRARY_PATH
(armv6l:1) mpfr-3.1.1 # cd /home/work/gcc/gmp/gmp-sf-uclibc/tune
(armv6l:1) tune # make speed
(armv6l:1) tune # cd /home/work/gcc/mpfr/mpfr-sf-uclibc

(This one ignores DESTDIR= && --enable-decimal-float needs newer compiler)
(armv6l:1) mpfr-sf-uclibc # ../mpfr-3.1.1/configure --with-gnu-ld --prefix=/home/work/gcc/mpfr/mpfr311-sf-uclibc --with-gmp-build=/home/work/gcc/gmp/gmp-sf-uclibc

(This one turns out to be non-fatal:)
checking format of `long double' floating point... IEEE double, little endian
configure: WARNING: oops, unrecognised float format: IEEE double, little endian

(armv6l:1) mpfr-sf-uclibc # make
(armv6l:1) mpfr-sf-uclibc # make check

  ====================
  All 160 tests passed
  (1 test was not run)
  ====================

(armv6l:1) mpfr-sf-uclibc # make install
(armv6l:1) mpfr-sf-uclibc # cd /home/work/gcc/mpfr/mpfr311-sf-uclibc
(armv6l:1) mpfr311-sf-uclibc # tar -czvf ../mpfr-3.1.1-uclibc.tar.gz .
(armv6l:1) mpfr311-sf-uclibc # cd /home

(Now "install" our own distribution tar-ball.)
(armv6l:1) /home # tar -xvf work/gcc/mpfr/mpfr-3.1.1-uclibc.tar.gz

(To ensure the hdb.img file system gets fully written and closed:)
(armv6l:1) /home # cd /root
(armv6l:1) /root # umount /home
(armv6l:1) /root # exit
Restarting system.
core2quad system-image-armv6l $


This is another one that you just dump onto the /home directory of the emulator.

Note inside of the spoiler the things that need to be set which are not indexed by the ld.so.conf cache.
We can't update the cache in the emulator because that is part of the ro filesystem.
So setting those variables was the way to get mpfr to find and use the new gmp libraries.
Attached Files
File Type: gz mpfr-3.1.1-uclibc.tar.gz (473.9 KB, 486 views)

Last edited by knc1; 07-22-2012 at 10:00 AM.
knc1 is offline   Reply With Quote