Multilib

From Q
Revision as of 19:10, 19 December 2012 by Tgurr (talk | contribs)
Jump to navigation Jump to search

Exherbo supports multilib natively, but it's not enabled by default yet.

First we enable the multilib profile by changing the profiles variable in arbor.conf.

File: /etc/paludis/repositories/arbor.conf
...
profiles = ${location}/profiles/amd64/multilib
...


Remove the CHOST entry from bashrc and either set C{,XX}FLAGS which apply to all C targets, or define individual ones.

File: /etc/paludis/bashrc
CFLAGS="-march=native -pipe -O2"
CXXFLAGS="${CFLAGS}"

#MULTIBUILD_C_32_USER_CFLAGS="-march=native -pipe -O2"
#MULTIBUILD_C_32_USER_CXXFLAGS="${MULTIBUILD_C_32_USER_CFLAGS}"
#MULTIBUILD_C_64_USER_CFLAGS="-march=native -pipe -O2"
#MULTIBUILD_C_64_USER_CXXFLAGS="${MULTIBUILD_C_64_USER_CFLAGS}"
# cave resolve skeleton-filesystem-layout -x1


Temporarily enable bootstrap and reinstall glibc, it will also pull in bootstrap-gcc.

File: /etc/paludis/options.conf
sys-libs/glibc bootstrap


# cave resolve glibc -x1


Temporarily disable openmp and reinstall gcc. If you intent to rebuild gcc afterwards you can also temporarily disable java, fortran, etc. to speed things up.

File: /etc/paludis/options.conf
sys-devel/gcc -fortran -java -openmp
# cave resolve gcc -x1

Switch to the new gcc, if not already active (where 1 is the index).

# eclectic gcc list
# eclectic gcc set -1