Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Сборка драйвера под amd64

2 views
Skip to first unread message

Victor Wagner

unread,
Apr 17, 2009, 3:34:15 AM4/17/09
to
Попытался тут собрать драйвер tun под разные Solaris-ы.
(см vtun.sf.net)
Под sparc все нормально, - достаточно добавить к СFLAGS -m64 и
собирается 64-битная версия, которая нормально грузится.

Под 32-битный intel все в порядке. А вот с Solaris 10 на amd64 возникли
проблемы. То есть драйвер собирается
а при попытке его загрузки (командой /usr/sbin/add_drv tun)
начинает ругаться на тему
file: /usr/kernel/drv/tun
symbol:
value 0xffffffffff6c735c7 does on fit (и таких симсолов много)

Опции компиляции:
gcc -DTUN_VER=\"1.1\ 04/17/2009\" -m64 -O2 -Wall -D_KERNEL
-I. -c tun.c

Опции линковки
ld -r -o tun tun.o

Используется GCC из пакета SUNWgcc (которая в /usr/sfw)
gcc (GCC) 3.4.3 (csl-sol210-3_4-branch+sol_rpath)
и родной линкер из /usr/ccs/bin

P.S. Опции -mred-zone и -mno-red-zone пробовал. От этого не меняются
даже численные значения плохих адресов.

Может кто что подскажет?
--
Hе доверяйте своё здоровье Кашпировскому, а здоровье своего компьютера -
Касперскому.

Victor Wagner

unread,
Apr 17, 2009, 3:45:29 AM4/17/09
to
Victor Wagner <vi...@wagner.pp.ru> wrote:
VW> Попытался тут собрать драйвер tun под разные Solaris-ы.
VW> (см vtun.sf.net) Под sparc все нормально, - достаточно
VW> добавить к СFLAGS -m64 и собирается 64-битная версия,
VW> которая нормально грузится.
VW> Под 32-битный intel все в порядке. А вот с Solaris 10 на
VW> amd64 возникли проблемы. То есть драйвер собирается а при
VW> попытке его загрузки (командой /usr/sbin/add_drv tun)
VW> начинает ругаться на тему file: /usr/kernel/drv/tun
VW> symbol: value 0xffffffffff6c735c7 does on fit (и таких
VW> симсолов много)
VW> Опции компиляции: gcc -DTUN_VER=\"1.1\ 04/17/2009\" -m64
VW> -O2 -Wall -D_KERNEL -I. -c tun.c

Сам разобрался. Hужно было -mcmodel=kernel добавить к CFLAGS

0 new messages