Final result as of 2016-06-02:
So far up to 2016.06.02, the script and using binutil 2.24 and gcc 4.8.3 i686
# see another post
# on 4-6 4.8.3 and 2.24 ok for x86_64
# on 4-6 6.1.0 and 2.26 ok for both i686 and x86_64
# (but generating a new gcc compiler is not, strip seems expect clang strip c option; see another topics)
-- to be tested --
MingW32 to be tested
MingW64 to be tested
--- OK below (for i686, for others next post) ---
--- mac osx el captain, ubuntu 16, cygwin 64, cygwin 32 (offline) ---
--- (except mac no bochs gui_debug but another issues) -------------
--- usually need to use tar xzvf ... but strangely one win10-32 cygwin cannot run this and has to use tar jf ! ---
cygwin win7-32 ok
- problem is cannot download the package using the script but using offline download and then trying step by step
- it is ok just make sure you do the contrib/download_prerequisite offline carefully.
Code: Select all
only for offline mode
assume under gcc-4.8.3/
MPFR=mpfr-2.4.2 # seems not need to do export here
GMP=gmp-4.3.2
MPC=mpc-0.8.1
#wget ftp://gcc.gnu.org/pub/gcc/infrastructure/$MPFR.tar.bz2 || exit 1
tar xjf $MPFR.tar.bz2 # do not do || exit 1
ln -sf $MPFR mpfr # || exit 1
#wget ftp://gcc.gnu.org/pub/gcc/infrastructure/$GMP.tar.bz2 || exit 1
tar xjf $GMP.tar.bz2 # || exit 1
ln -sf $GMP gmp # || exit 1
#wget ftp://gcc.gnu.org/pub/gcc/infrastructure/$MPC.tar.gz || exit 1
tar xzf $MPC.tar.gz # || exit 1
ln -sf $MPC mpc # || exit 1
cygwin win10-64 testing
- ignore the 3 package list in the windows part, instead use the contrib/download_...
- then install, work ok
Mac OS X El Captain maports ok
- use macports not brew
- ignore libiconv part and any others, just use the 3 boxed commands (but not the export one)
- follow the script except use install the 3 libs via the mac os x macports part
and the two different configure commands for binutils and gcc
- not sure about why direct download of contrib/download_prerequisite not working
- not sure about the impact of no sysroot ...
- still issues :
bochs has only x11 working (via Quartz) and in particular not sure how to make sdl/sdl2 work or debug-gui ...
Mac OS X EL Captain homebrew ok
- strangely the direct method is not working i.e. instead of using brew/port just
use contrib/download_prerequisite does not go through, port install something
and not sure why it works (as the 3 libraries may not match with the gcc/binutils in general?!)
ports work and testing homebrew again now
- work
Ubuntu 16 under VM ok
- follow the script
- need to do contrib/download_prerequisites
(the discussion of those 3 "libraries" confusing,
do not download those source but instead run the contrib/d... script)
Gentoo under VM (the image from their site) ok
- need to use su (i.e. root)
- need to export the so call overlay ...
Code: Select all
(need to use root, otherwise pretend is pointless)
su
emerge -av crossdev
crossdev --help
export PORTDIR_OVERLAY="/usr/local/crossdev"
crossdev --stage1 --binutils 2.24-r3 --gcc 4.8.3 --target i686-elf
====================
For all the simple test code is
Code: Select all
i686-elf-gcc --version
i686-elf-ld --help
i686-as --help
For some I would try the barebone later ...
Walk on once do documentation, really just a toolkit but it takes so long to get it.
==============
To use it:
Code: Select all
export PREFIX="$HOME/opt/cross"
export TARGET=i686-elf
export PATH="$PREFIX/bin:$PATH"
gcc --dumpmachine
ld --help # note the target support
i686-elf-gcc --dumpmachine
i686-elf-ld --help