Multilib: Difference between revisions

From Q
Jump to navigation Jump to search
Tgurr (talk | contribs)
mNo edit summary
Tgurr (talk | contribs)
No edit summary
Line 68: Line 68:
sys-apps/util-linux -systemd -udev
sys-apps/util-linux -systemd -udev
sys-apps/dbus -systemd
sys-apps/dbus -systemd
sys-auth/polkit:1 -systemd
</pre>
</pre>
}}
}}


Be sure to re-enable and reinstall the affected packages afterwards.
Be sure to re-enable and reinstall the affected packages afterwards.

Revision as of 14:34, 6 August 2014

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.

# eclectic gcc list
# eclectic gcc set -1

Remove the bootstrap OPTION from glibc in /etc/paludis/options.conf and reinstall it, also purging the now uneeded bootstrap-gcc.

# cave resolve glibc --purge '*/*' -x1

If you disabled some gcc options before in /etc/paludis/options.conf, you can now re-enable them and reinstall gcc.

# cave resolve gcc -x1


If you want to install for example Wine you may have to temporarily disable some OPTIONS to manually resolve blockers.

File: /etc/paludis/options.conf
sys-apps/util-linux -systemd -udev
sys-apps/dbus -systemd
sys-auth/polkit:1 -systemd

Be sure to re-enable and reinstall the affected packages afterwards.