-->

2011-06-04

gentooのコンパイルオプション

gentooは、システム全体、パッケージごとの全体、パッケージごとのバージョン、でオプション追加可能。
$ cat /etc/portage/env/net-misc/wget
CFLAGS="${CFLAGS} -Os"
CXXFLAGS="${CFLAGS}"

$ cat /etc/portage/env/net-misc/wget-1.12-r3
CFLAGS="${CFLAGS} -O1"
CXXFLAGS="${CFLAGS}"

$ sudo emerge -v wget

$ ps auxwww|grep -P "O[s1]"
root      3724  0.0  0.0   8820  1032 pts/10   S+   10:59   0:00 /usr/x86_64-pc-linux-gnu/gcc-bin/4.4.5/x86_64-pc-linux-gnu-gcc -c -O2 -pipe -march=native -Os -O1 -Os -O1 -Os -O1 -Os -O1 conftest.c

"-O2 -pipe -march=native -Os -O1 -Os -O1 -Os -O1 -Os -O1"なので読み込み回数が多い?
追記だと、どんどん増えるかもしれない。

$ grep CFLAG /etc/make.conf | grep -v ^#
CFLAGS="-O2 -pipe -march=native"
CXXFLAGS="${CFLAGS}"

例。
http://www.gentoo-wiki.info/CflagsExceptions#Safe_Options
$ ll /etc/portage/env/dev-*/*
-rw-r--r-- 1 root root 54 2011-06-02 08:30:49 /etc/portage/env/dev-db/sqlite
-rw-r--r-- 1 root root 54 2011-06-02 08:29:12 /etc/portage/env/dev-lang/python
$ cat /etc/portage/env/dev-*/*
CFLAGS="-O3 -pipe -march=native"
CXXFLAGS="${CFLAGS}"
CFLAGS="-O3 -pipe -march=native"
CXXFLAGS="${CFLAGS}"

gccの同時に作業するjob数を減らす。
$ cat /etc/portage/env/sys-devel/gcc
MAKEOPTS="-j1"

0 件のコメント: