URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 63117
[ Назад ]

Исходное сообщение
"amd64 + nvidia-driver + vortex-driver"

Отправлено and_hom , 03-Янв-06 16:16 
Здравствуйте!

Собрана система 6.0 stable amd64
При попытке собрать дополнительные модули ядра
(x11/nvidia-driver, audio/aureal-kmod) вылетают ошибки типа

> sudo make
===>  Building for nvidia-driver-1.0.7667
===> src (all)
"/usr/share/mk/bsd.compat.mk", line 36: warning: NOOBJ
is deprecated in favor of NO_OBJ
ld  -d -warn-common -r -d -o nvidia.ko nv-kernel.o
nvidia_ctl.o nvidia_dev.o nvidia_linux.o nvidia_os.o
nvidia_os_pci.o nvidia_os_registry.o nvidia_pci.o
nvidia_subr.o nvidia_sysctl.o

ld: Relocatable linking with relocations from format
elf32-i386-freebsd (nv-kernel.o) to format elf64-x86-64
(nvidia.ko) is not supported

*** Error code 1

Stop in
/home/ports/x11/nvidia-driver/work/NVIDIA-FreeBSD-x86-1.0-7667/src.
*** Error code 1

Stop in
/home/ports/x11/nvidia-driver/work/NVIDIA-FreeBSD-x86-1.0-7667.
*** Error code 1

Stop in /home/ports/x11/nvidia-driver.
>

Может, кому-нибудь удавалось это исправить. А то звука
нет, а графика тормозит

А вообще, откуда у меня возникают 32-битные бинарники????????
Они же не должны образовываться!


З.Ы. Собираю, конечно, нелегальным способом -
комментирую директиву ONLY_FOR_ARCH в Makefile


Содержание

Сообщения в этом обсуждении
"amd64 + nvidia-driver + vortex-driver"
Отправлено Xxx , 03-Янв-06 17:28 
>Здравствуйте!
>
>Собрана система 6.0 stable amd64
>При попытке собрать дополнительные модули ядра
>(x11/nvidia-driver, audio/aureal-kmod) вылетают ошибки типа
>
>> sudo make
>===>  Building for nvidia-driver-1.0.7667
>===> src (all)
>"/usr/share/mk/bsd.compat.mk", line 36: warning: NOOBJ
>is deprecated in favor of NO_OBJ
>ld  -d -warn-common -r -d -o nvidia.ko nv-kernel.o
>nvidia_ctl.o nvidia_dev.o nvidia_linux.o nvidia_os.o
>nvidia_os_pci.o nvidia_os_registry.o nvidia_pci.o
>nvidia_subr.o nvidia_sysctl.o
>
>
>
>ld: Relocatable linking with relocations from format
>elf32-i386-freebsd (nv-kernel.o) to format elf64-x86-64
>(nvidia.ko) is not supported
>
>
>
>*** Error code 1
>
>Stop in
>/home/ports/x11/nvidia-driver/work/NVIDIA-FreeBSD-x86-1.0-7667/src.
>*** Error code 1
>
>Stop in
>/home/ports/x11/nvidia-driver/work/NVIDIA-FreeBSD-x86-1.0-7667.
>*** Error code 1
>
>Stop in /home/ports/x11/nvidia-driver.
>>
>
>Может, кому-нибудь удавалось это исправить. А то звука
>нет, а графика тормозит
>
>А вообще, откуда у меня возникают 32-битные бинарники????????
>Они же не должны образовываться!
>
>
>З.Ы. Собираю, конечно, нелегальным способом -
>комментирую директиву ONLY_FOR_ARCH в Makefile

Это как ты хочешь слинковать _бинарные_ модули в i386 с ядром в x86-64?
Тебе же все написало:
ld: Relocatable linking with relocations from format
elf32-i386-freebsd (nv-kernel.o) to format elf64-x86-64
(nvidia.ko) is not supported
К сожалению NVidia не делает дрова под FreeBSD скомпиленые в x86-64 (поправте меня если я не прав)
ONLY_FOR_ARCH написано не просто так.

Попоробуй сделать i386 ядро, должно с ним заработать.
По производительности IMHO разницу не заметишь (заодно можешь протестить и результаты сравнения выложить :) )
Кстати в твоих портах не самые свежие драйвера (последняя версия 1.0-8178
судя по их сайту)


"amd64 + nvidia-driver + vortex-driver"
Отправлено and_hom , 03-Янв-06 18:09 
>Это как ты хочешь слинковать _бинарные_ модули в i386 с ядром в
>x86-64?
>Тебе же все написало:
>ld: Relocatable linking with relocations from format
>elf32-i386-freebsd (nv-kernel.o) to format elf64-x86-64
>(nvidia.ko) is not supported

С драйвером nvidia - действительно, дело тёмное.
Возьмём драйвер vortex   (audio/aureal-kmod)

В скачиваемом дистрибе только 2 файла - au80x0.c  и au80x0.h
Там нет 32-битных бинарных компонентов. При линковке - та же ошибка.
Ну откуда берутся 32-битные объектные файлы???? Или в коде сожно прописать директивы на их генерацию?

И ещё, если я ставлю 32-битное ядро, мне что, все программы опять пересобирать придётся? Или так заработает?


"amd64 + nvidia-driver + vortex-driver"
Отправлено and_hom , 03-Янв-06 19:04 
И вот что ещё странно: при сборке системы он выдаёт такую вот вещь:


cc -m32 -march=athlon-xp -msse2 -mfancy-math-387 -DCOMPAT_32BIT  -I/usr/obj/usr/
src/lib32/usr/include  -L/usr/obj/usr/src/lib32/usr/lib32  -B/usr/obj/usr/src/li
b32/usr/lib32 -O2 -fno-strict-aliasing -pipe -DTERMIOS -DANSI_SOURCE -I/usr/src/
secure/lib/libcrypto/../../../crypto/openssl -I/usr/src/secure/lib/libcrypto/../
../../crypto/openssl/crypto -I/usr/obj/lib32/usr/src/secure/lib/libcrypto -DOPEN
SSL_THREADS -DOPENSSL_NO_IDEA -DL_ENDIAN -DNO_IDEA  -c /usr/src/secure/lib/libcr
ypto/../../../crypto/openssl/crypto/ui/ui_util.c

Не нравится мне ключик athlon-xp (явно 32-битный атлон имеется ввиду)
и ещё в разных местах "32" написано
К чему бы это...

Система, кстати, изначально была 32-битной, потом пересобрал на 64  (base правда ставил заново)


"amd64 + nvidia-driver + vortex-driver"
Отправлено llelik , 04-Янв-06 11:09 
>И вот что ещё странно: при сборке системы он выдаёт такую вот
>вещь:
>
>
>
>
>cc -m32 -march=athlon-xp -msse2 -mfancy-math-387 -DCOMPAT_32BIT  -I/usr/obj/usr/
>src/lib32/usr/include  -L/usr/obj/usr/src/lib32/usr/lib32  -B/usr/obj/usr/src/li
>b32/usr/lib32 -O2 -fno-strict-aliasing -pipe -DTERMIOS -DANSI_SOURCE -I/usr/src/
>secure/lib/libcrypto/../../../crypto/openssl -I/usr/src/secure/lib/libcrypto/../
>../../crypto/openssl/crypto -I/usr/obj/lib32/usr/src/secure/lib/libcrypto -DOPEN
>SSL_THREADS -DOPENSSL_NO_IDEA -DL_ENDIAN -DNO_IDEA  -c /usr/src/secure/lib/libcr
>ypto/../../../crypto/openssl/crypto/ui/ui_util.c
>
>Не нравится мне ключик athlon-xp (явно 32-битный атлон имеется ввиду)
>и ещё в разных местах "32" написано
>К чему бы это...
>
>Система, кстати, изначально была 32-битной, потом пересобрал на 64  (base правда
>ставил заново)

может etc/make.conf поправить?


"amd64 + nvidia-driver + vortex-driver"
Отправлено lavr , 04-Янв-06 17:48 
>>Это как ты хочешь слинковать _бинарные_ модули в i386 с ядром в
>>x86-64?
>>Тебе же все написало:
>>ld: Relocatable linking with relocations from format
>>elf32-i386-freebsd (nv-kernel.o) to format elf64-x86-64
>>(nvidia.ko) is not supported
>
>С драйвером nvidia - действительно, дело тёмное.
>Возьмём драйвер vortex   (audio/aureal-kmod)
>
>В скачиваемом дистрибе только 2 файла - au80x0.c  и au80x0.h
>Там нет 32-битных бинарных компонентов. При линковке - та же ошибка.
>Ну откуда берутся 32-битные объектные файлы???? Или в коде сожно прописать директивы
>на их генерацию?
>
>И ещё, если я ставлю 32-битное ядро, мне что, все программы опять
>пересобирать придётся? Или так заработает?

а если вы freebsd на sparc или powerpc установите, тоже само все
заработает? amd64 - это платформа, однако и этим ВСЕ СКАЗАНО.
Nvidia еще не сделала драйверов для FreeBSD под amd64, но вроде обещали...


"amd64 + nvidia-driver + vortex-driver"
Отправлено and_hom , 05-Янв-06 11:05 
> Nvidia еще не сделала драйверов для FreeBSD под amd64, но вроде
>обещали...

Не понимаю... Если я собрал ядро amd64 то всё остальное должно собираться как в любой абстрактной unix-системе. Каким образом компилятор вообще ухитряется генерить 32-битные бинарники? Такое впечатление, что это для порта где-то прописано. В коде смотрел (для aureal-kmod драйвера - там кода немного) - ничего подозрительного. В мейкфайлах тоже порядок, вроде...



"amd64 + nvidia-driver + vortex-driver"
Отправлено and_hom , 05-Янв-06 11:14 
Понял! С драйвером и вправду идут бинрные компоненты.
Если для nvidia это понятно, то зачем это драйверу vortex? Он же и так OpenSource!



"amd64 + nvidia-driver + vortex-driver"
Отправлено lavr , 05-Янв-06 14:44 
>Понял! С драйвером и вправду идут бинрные компоненты.
>Если для nvidia это понятно, то зачем это драйверу vortex? Он же
>и так OpenSource!

aureal-kmod - открытые объектные модули для linux, что тут непонятного?


"amd64 + nvidia-driver + vortex-driver"
Отправлено and_hom , 05-Янв-06 16:41 
>>Понял! С драйвером и вправду идут бинрные компоненты.
>>Если для nvidia это понятно, то зачем это драйверу vortex? Он же
>>и так OpenSource!
>
>aureal-kmod - открытые объектные модули для linux, что тут непонятного?

Так их вручную собрать из исходников можно? Или только под Linux? Почему их поставляют как бинарники?



"amd64 + nvidia-driver + vortex-driver"
Отправлено lavr , 05-Янв-06 17:07 
>>>Понял! С драйвером и вправду идут бинрные компоненты.
>>>Если для nvidia это понятно, то зачем это драйверу vortex? Он же
>>>и так OpenSource!
>>
>>aureal-kmod - открытые объектные модули для linux, что тут непонятного?
>
>Так их вручную собрать из исходников можно? Или только под Linux? Почему
>их поставляют как бинарники?

русским же языком написано: объектные модули (obj files)
из объектников можно сделать загружаемый модуль при определенных условиях
потому что так фирма решила Vortex или кто там их выпускает...


"amd64 + nvidia-driver + vortex-driver"
Отправлено fidaj , 03-Дек-09 14:06 
Вот он:
ftp://download.nvidia.com/XFree86/FreeBSD-x86_64/195.22/NVID...