0
我想使用網絡驅動模塊導出的網絡設備接口。這是我的程序devget.c未定義對用戶空間的網絡設備接口中的「功能」的引用。
#include<stdio.h>
#include<linux/netdevice.h>
void main(void)
{
struct net_device* device;
device = dev_get_by_name("eth0");
if (device == NULL)
printf("device is NULL\n");
else
printf("This is a success story\n");
}
我正在交叉編譯這個。對`dev_get_by_name'的未定義引用。現在這個函數被定義爲/linux/netdevice.h文件中的一個原型。我用agcc編寫了這個腳本中包含的路徑。
看來'dev_get_by_name'不包含在內核中。 – ciphor 2012-02-24 09:29:32
問題是如何獲取網絡設備接口,所以我可以在我的設備中爲內核調用網絡API。我需要提供內核頭文件/ inlcude文件,這些文件將具有此dev_get_by_name的原型。我正在編譯這個android操作系統,我包括內核操作系統,並提供在編譯期間的內核包括如agcc getdev.c -o getdev -I android /內核的路徑。 – sraddhaj 2012-02-24 09:53:10
來自用戶空間,則無法訪問net_device結構。您應該使用一些標準接口來配置您的網絡(ethtool,ifconfig)。否則,你應該在內核中編寫代碼 – 2012-02-27 14:39:07