(если нет утилиты git-clone - ставим порт devel/git)
После этого переходим непосредственно к компиляции. Переходим в
каталог и выполняем команду make с аргументом, который сообщает
сборочным скриптам, о том что нам необходим драйвер под FreeBSD:
%cd mesa; make realclean; make freebsd
Если во время компиляции произошла ошибка (она возникает при сборке на
FreeBSD 7.0, т.к. в нём используется компилятор GCC версии 4 и
присуствует два заголовочныъ файла с именем math.h, подключается
второй, а в нём отсутствует директива M_PI):
cc -c -I../../include -O -O2 -fPIC -D_POSIX_SOURCE
-D_POSIX_C_SOURCE=199309L -D_BSD_SOURCE -DUSE_XSHM -DHZ=100
-I/usr/local/include -ffast-math -pedantic -fno-strict-aliasing
engine.c
engine.c: In function 'PistonStrokePosition':
engine.c:252: error: 'M_PI' undeclared (first use in this function)
engine.c:252: error: (Each undeclared identifier is reported only once
engine.c:252: error: for each function it appears in.)
engine.c: In function 'ComputeConnectingRodPosition':
engine.c:302: error: 'M_PI' undeclared (first use in this function)
engine.c: In function 'DrawConnector':
engine.c:406: error: 'M_PI' undeclared (first use in this function)
engine.c: In function 'DrawPositionedConnectingRod':
engine.c:527: error: 'M_PI' undeclared (first use in this function)
engine.c: In function 'SquareWithHole':
engine.c:551: error: 'M_PI' undeclared (first use in this function)
gmake: *** [engine.o] Error 1
Error code 1
Stop in /usr/home/tuser/mesa/progs.
То попробуйте применить вот этот патч (очень даже может быть что в
ближайшее время он потеряет свою актуальность, т.к. я отправил его
разработчикам):
%cat intel2freebsd70_M_PI_error.diff | patch -p1
и продолжить компиляцию:
%make
Если всё собралось благополучно, его можно установить:
%sudo make install
Ну а далее (настройка xorg.conf) всё зависит от вашего чипсета (см. описание)
Часть 2.
Расскажу (вернее продублирую статью с http://bsdportal.ru -
faq:nvidia_video) про настройку OpenGL для видеокарт Nvidia (с ATI
обстоят дела очень плохо).
Установка из портов
сначала настраиваем иксы с стандартным драйвером nv
далее:
cd /usr/ports/x11/nvidia-driver/
make install clean
нужные опции:
[ ] FREEBSD_AGP Use FreeBSD AGP GART driver
[ ] VM86_INT10CALL Use VM86 interface for video BIOS calls
[ ] ACPI Enable support for ACPI Power Management
[X] LINUX Build with support for Linux compatibility
далее пересобираем ядро предварительно закоментировав или удалив
строчку:
device agp
теперь нужно отредактироватьпроверить конфиги:
проверяем /boot/loader.conf чтобы в нем было:
linux_load="YES"
nvidia_load="YES"
проверяем чтобы в /etc/rc.conf **было**:
linux_enable="YES"
в xorg.conf меняем
Driver "nv"
на
Driver "nvidia"
все.. перегружаемся, заходим в иксы и проверяем работоспособность
openGL например программой glxgears
Если хочется включить прозрачность и тени вместе с GLX настраиваем xorg.conf:
Section "Device"
# Эти два параметра работают только с nvidia драйверами!
...
Option "RenderAccel" "true"
Option "AllowGLXWithComposite" "true"
...
EndSection
...
Section "Extensions"
Option "Composite" "Enable"
Option "RENDER" "Enable"
EndSection