Для использования требуемой версии GCC, установленной из коллекции портов FreeBSD, требуется дополнительная конфигурация системы.
Добавьте следующие строки в /etc/make.conf
(или исправьте существующие):
В качестве альтернативы, можно установить вручную переменные
окружения ${CC}
и ${CPP}
.
Примеры, приведённые выше, сделаны для
GCC версии 4.4. Для того, чтобы
использовать gcc43
, замените
"gcc44"
на "gcc43"
и
"4.4"
на "4.3"
и т.п.
Многие установленные из портов приложения и библиотеки
скомпонованы с libgcc_s или libstdc++. В базовую систему уже
включены эти библиотеки, но от более старой версии
GCC (версии 4.2.1). Чтобы предоставить
rltd (и ldd) правильные версии, добавьте следующие записи к
/etc/libmap.conf
(или измените
существующие):
Пример выше приведен для GCC
версии 4.4. Если вы используете gcc43
,
замените "gcc44"
на "gcc43"
и т.д. Следует отметить, что все вышеупомянутые библиотеки
обратно совместимы с библиотеками, поставляемыми с базовой
системой.
Некоторые C++ программы могут перестать работать, если отсутствует корректная компоновка этих библиотек. Если невозможно скомпоновать их все, рекомендуется сделать это по крайней мере для libstdc++.so.
Для портов, не поддерживающих специальные установки
CFLAGS
, исправьте
/etc/make.conf
согласно следующему примеру:
Возможно заменить полностью CFLAGS
и/или
определить CPUTYPE
. Мы рекомендуем устанавливать
CPUTYPE
так как во многих портах флаги оптимизации
выбираются, базируясь на значении этой переменной.
Для того, чтобы исключить порты, которые не собираются со
специальной версией GCC, исправьте
/etc/make.conf
согласно следующему
примеру:
Пример, приведённый выше, отменяет принудительное использование
gcc
4.4 для портов
net/openldap
*. Также
возможно указать больше портов в одной строке:
Этот, и другие документы, могут быть скачаны с http://ftp.FreeBSD.org/pub/FreeBSD/doc/.
По вопросам, связанным с FreeBSD, прочитайте
документацию прежде чем писать в
<questions@FreeBSD.org>.
По вопросам, связанным с этой документацией, пишите в рассылку
<doc@FreeBSD.org>.