1

День добрый. Имеется материнская плата Gigabyte G41MT-S2 с встроенной сетевой картой ATHEROS AR8151.
После установки Clear OS 5.1 ОС не увидела сетевую. Попытки установки драйверов оканчивались

Makefile:61: *** Linux kernel source not found. Останов.

Почитал посты тут http://www.clearos.ru/forum/viewtopic.p … &t=869 и тут http://rhythmcloud.blogspot.com/2010/07 … gabit.html
На форуме клероси ничего не изменилось. После операций с англоязычного сайта ошибка теперь

[root@system ~]# cd /home/AR81Family/src
[root@system src]# make
make -C /lib/modules/2.6.18-164.11.1.v5/build SUBDIRS=/home/AR81Family/src modules
make[1]: Entering directory `/usr/src/kernels/2.6.18-164.11.1.v5-i686'
  CC [M]  /home/AR81Family/src/at_common_main.o
In file included from /home/AR81Family/src/at_common.h:4,
                 from /home/AR81Family/src/at_common_main.c:1:
/home/AR81Family/src/kcompat.h:1575: ошибка: повторное определение ‘struct napi_struct’
make[2]: *** [/home/AR81Family/src/at_common_main.o] Ошибка 1
make[1]: *** [_module_/home/AR81Family/src] Ошибка 2
make[1]: Leaving directory `/usr/src/kernels/2.6.18-164.11.1.v5-i686'
make: *** [default] Ошибка 2

вот что говорит lspci | grep Ethernet

[root@system ~]# lspci | grep Ethernet
02:00.0 Ethernet controller: Atheros Communications AR8151 v1.0 Gigabit Ethernet (rev c0)
03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)

2

Обновления все установил?
Драйвер какой версии берёшь?

3

обновление системы без изменений реп полное.
драйвер `AR81Family-Linux-v1.0.1.9.tar.gz

4

Что-то недоступен этот драйвер. Откуда его скачать?

5

wget http://iats.googlecode.com/files/AR81Fa … 1.9.tar.gz

6

Readme читал? Там написано выполнить команду make install, попробуй.

7

[root@system src]# make install
make -C /lib/modules/2.6.18-164.11.1.v5/build SUBDIRS=/home/AR81Family/src modules
make[1]: Entering directory `/usr/src/kernels/2.6.18-164.11.1.v5-i686'
  CC [M]  /home/AR81Family/src/at_common_main.o
In file included from /home/AR81Family/src/at_common.h:4,
                 from /home/AR81Family/src/at_common_main.c:1:
/home/AR81Family/src/kcompat.h:1575: ошибка: повторное определение ‘struct napi_struct’
make[2]: *** [/home/AR81Family/src/at_common_main.o] Ошибка 1
make[1]: *** [_module_/home/AR81Family/src] Ошибка 2
make[1]: Leaving directory `/usr/src/kernels/2.6.18-164.11.1.v5-i686'
make: *** [default] Ошибка 2
[root@system src]#

8

Этот драйвер неправильно определяет весии ядра. Попробуй поискать версию драйвера поновее. Либо закомментируй/удали эти строки в файле kcompat.h

#if ( LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24) )
/* NAPI API changes in 2.6.24 break everything */
struct napi_struct {
    /* used to look up the real NAPI polling routine */
    int (*poll)(struct napi_struct *, int);
    int weight;
};
#ifdef NAPI
extern int __kc_adapter_clean(struct net_device *, int *);
#define netif_rx_complete(netdev, napi) netif_rx_complete(netdev)
#define netif_rx_schedule_prep(netdev, napi) netif_rx_schedule_prep(netdev)
#define netif_rx_schedule(netdev, napi) netif_rx_schedule(netdev)
#define __netif_rx_schedule(netdev, napi) __netif_rx_schedule(netdev)
#define napi_enable(napi) netif_poll_enable(adapter->netdev)
#define napi_disable(napi) netif_poll_disable(adapter->netdev)
#define netif_napi_add(_netdev, _napi, _poll, _weight) \
    do { \
        struct napi_struct *__napi = _napi; \
        _netdev->poll = &(__kc_adapter_clean); \
        _netdev->weight = (_weight); \
        __napi->poll = &(_poll); \
        __napi->weight = (_weight); \
        netif_poll_disable(_netdev); \
    } while (0)
#else /* NAPI */

Вдруг поможет

9

Блин. Удалил строки, пришет

[root@system src]# make install
make -C /lib/modules/2.6.18-164.11.1.v5/build SUBDIRS=/home/src modules
make[1]: Entering directory `/usr/src/kernels/2.6.18-164.11.1.v5-i686'
  CC [M]  /home/src/at_common_main.o
In file included from /home/src/at_common.h:4,
                 from /home/src/at_common_main.c:1:
/home/src/kcompat.h:1587:2: error: #else without #if
/home/src/kcompat.h:1595:2: error: #endif without #if
/home/src/kcompat.h:1643:2: error: #endif without #if
In file included from /home/src/at_osdep.h:34,
                 from /home/src/at_common.h:5,
                 from /home/src/at_common_main.c:1:
/home/src/kcompat.h:1587:2: error: #else without #if
/home/src/kcompat.h:1595:2: error: #endif without #if
/home/src/kcompat.h:1643:2: error: #endif without #if
make[2]: *** [/home/src/at_common_main.o] Ошибка 1
make[1]: *** [_module_/home/src] Ошибка 2
make[1]: Leaving directory `/usr/src/kernels/2.6.18-164.11.1.v5-i686'
make: *** [default] Ошибка 2

Попробую поискать поновее. Хотя и этот нашел с трудом

10

Ну не совсем правильно я сказал что надо выкинуть. Ещё завершение условия забыл. Выкини его тоже.
И покажи ещё lspci -k

11

Vascom, спасибо за совет! после удаления строк драйвер встал.