код ниже надо запилить в /etc/portage/bashrc
#COMPILERS if [ -f ${ROOT}/etc/portage/package.compilers ]; then while read target ver; do if [ "${target}" = "${CATEGORY}/${PN}" ]; then MY_GCC="$(find /usr/$MACHTYPE/gcc-bin/ -name "$ver*")" export ROOTPATH="${MY_GCC}:${ROOTPATH}" export PATH="${MY_GCC}:${PATH}" export LIBRARY_PATH="$(gcc-config -L):${LIBRARY_PATH}" fi done < ${ROOT}/etc/portage/package.compilers fiтеперь в /etc/portage/package.compilers можно задать как конкретную версию gcc - например 4.4.6, так и, что куда удобнее, ветку - например 4.4
echo "dev-util/nvidia-cuda-sdk 4.4" >> /etc/portage/package.compilersудобней, т.к. при обновлении мира в слоте 4.4 gcc с 4.4.5 может запросто обновиться до 4.4.6, например, и в предыдущем варианте переключалки пришлось бы менять версии
Так же для того, чтобы посмотреть какой версией gcc собран пакет, запилил следующее в /etc/portage/bashrc
post_pkg_postinst(){ if [ echo $OCC != "icc" ];then gcc --version | head -n1 > /var/db/pkg/${CATEGORY}/${PN}-${PVR}/GCC_VERSION fi }проверить версию, используемую при сборке, можно так: например nvidia-cuda-sdk
[ root@desktop ] megabaks # cat /var/db/pkg/dev-util/nvidia-cuda-sdk-4.0/GCC_VERSION gcc (Gentoo 4.4.6-r1 p1.0, pie-0.4.5) 4.4.6 [ root@desktop ] megabaks #
Комментариев нет :
Отправить комментарий