ap环境搭建
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

一.需求
ixp425开发板,hostapd       madwifi
二.实验原理
madwifi网卡驱动,hostapd是认证软件
三.操作流程
a)         移植madwifi
make KERNELPATH= /root/linux-2.6.x/ CROSS_COMPILE = arm-linux-
b)        移植hostapd
                         i.              修改.config
设置hostapd功能(只做ap
<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />
                                          # Driver interface for madwifi driver
CONFIG_DRIVER_MADWIFI=y
CFLAGS += -I/root/madwifi-0.9.4 # change to the madwifi source directory

 
 
                       ii.              修改交叉编译
Makefile
加入
CC=/arm/linux/ixp425/snapgear/tools/ucfront-gcc   (  中间一个空格 )
 /usr/local/arm/<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />3.4.4/bin/arm-linux-gcc
出现错误提示
driver.h:567: error: `head_len' undeclared (first use in this function)
driver.h:568: error: `tail' undeclared (first use in this function)
driver.h:568: error: `tail_len' undeclared (first use in this function)
driver.h: In function `hostapd_set_dtim_period':
driver.h:592: error: dereferencing pointer to incomplete type
driver.h: In function `hostapd_if_add':
driver.h:678: error: dereferencing pointer to incomplete type
driver.h: At top level:
driver.h:779: error: parse error before "size_t"
driver.h: In function `hostapd_set_wps_beacon_ie':
driver.h:783: error: dereferencing pointer to incomplete type
driver.h:784: error: `ie' undeclared (first use in this function)
driver.h:784: error: `len' undeclared (first use in this function)
driver.h: At top level:
driver.h:789: error: parse error before "size_t"
driver.h: In function `hostapd_set_wps_probe_resp_ie':
driver.h:794: error: dereferencing pointer to incomplete type
driver.h:795: error: `ie' undeclared (first use in this function)
driver.h:795: error: `len' undeclared (first use in this function)
In file included from hostapd.c:34:
../src/radius/radius_client.h: At top level:
../src/radius/radius_client.h:28: error: parse error before "size_t"
../src/radius/radius_client.h:28: warning: no semicolon at end of struct or union
../src/radius/radius_client.h:31: error: 'index' redeclared as different kind of symbol
../src/radius/radius_client.h:31: error: 'index' redeclared as different kind of symbol
../src/radius/radius_client.h:47: error: parse error before '}' token
../src/radius/radius_client.h:88: error: parse error before "size_t"
../src/radius/radius_client.h:102: error: parse error before "size_t"
In file included from hostapd.c:35:
../src/radius/radius_server.h:29: error: parse error before "size_t"
../src/radius/radius_server.h:29: warning: no semicolon at end of struct or union
../src/radius/radius_server.h:38: error: parse error before "size_t"
../src/radius/radius_server.h:41: error: parse error before "eap_req_id_text_len"
../src/radius/radius_server.h:41: warning: type defaults to `int' in declaration of `eap_req_id_text_len'
../src/radius/radius_server.h:41: warning: data definition has no type or storage class
../src/radius/radius_server.h:70: error: parse error before "size_t"
In file included from hostapd.c:36:
wpa.h:118: error: parse error before "size_t"
wpa.h:118: warning: no semicolon at end of struct or union
wpa.h:120: error: parse error before '}' token
wpa.h:189: error: parse error before "size_t"
wpa.h:191: error: parse error before "size_t"
wpa.h:195: error: parse error before "size_t"
wpa.h:201: error: parse error before "size_t"
wpa.h:225: error: parse error before "size_t"
wpa.h:236: error: parse error before "size_t"
wpa.h:245: error: parse error before "size_t"
wpa.h:246: error: parse error before "size_t"
wpa.h:258: error: parse error before "size_t"
wpa.h:262: error: parse error before "size_t"
In file included from hostapd.c:37:
preauth.h:47: error: parse error before "size_t"
In file included from hostapd.c:38:
wme.h:107: error: parse error before "size_t"
wme.h:110: error: parse error before "size_t"
In file included from hostapd.c:41:
../src/crypto/tls.h:22: error: parse error before "size_t"
../src/crypto/tls.h:22: warning: no semicolon at end of struct or union
../src/crypto/tls.h:24: error: parse error before "client_random_len"
../src/crypto/tls.h:24: warning: type defaults to `int' in declaration of `client_random_len'
../src/crypto/tls.h:24: warning: data definition has no type or storage class
../src/crypto/tls.h:26: error: parse error before "server_random_len"
../src/crypto/tls.h:26: warning: type defaults to `int' in declaration of `server_random_len'
../src/crypto/tls.h:26: warning: data definition has no type or storage class
../src/crypto/tls.h:28: error: parse error before "inner_secret_len"
../src/crypto/tls.h:28: warning: type defaults to `int' in declaration of `inner_secret_len'
../src/crypto/tls.h:28: warning: data definition has no type or storage class
../src/crypto/tls.h:87: error: parse error before "size_t"
../src/crypto/tls.h:87: warning: no semicolon at end of struct or union
../src/crypto/tls.h:93: error: parse error before "client_cert_blob_len"
../src/crypto/tls.h:93: warning: type defaults to `int' in declaration of `client_cert_blob_len'
../src/crypto/tls.h:93: warning: data definition has no type or storage class
../src/crypto/tls.h:94: error: conflicting types for 'private_key'
config.h:246: error: previous declaration of 'private_key' was here
../src/crypto/tls.h:96: error: parse error before "private_key_blob_len"
../src/crypto/tls.h:96: warning: type defaults to `int' in declaration of `private_key_blob_len'
../src/crypto/tls.h:96: warning: data definition has no type or storage class
../src/crypto/tls.h:97: error: conflicting types for 'private_key_passwd'
config.h:247: error: previous declaration of 'private_key_passwd' was here
../src/crypto/tls.h:98: error: conflicting types for 'dh_file'
config.h:249: error: previous declaration of 'dh_file' was here
../src/crypto/tls.h:100: error: parse error before "dh_blob_len"
../src/crypto/tls.h:100: warning: type defaults to `int' in declaration of `dh_blob_len'
../src/crypto/tls.h:100: warning: data definition has no type or storage class
../src/crypto/tls.h:111: error: conflicting types for 'flags'
driver.h:25: error: previous declaration of 'flags' was here
../src/crypto/tls.h:112: error: parse error before '}' token
../src/crypto/tls.h:289: error: parse error before "size_t"
../src/crypto/tls.h:322: error: parse error before "size_t"
../src/crypto/tls.h:339: error: parse error before "size_t"
../src/crypto/tls.h:357: error: parse error before "size_t"
../src/crypto/tls.h:375: error: parse error before "size_t"
../src/crypto/tls.h:417: error: parse error before "size_t"
../src/crypto/tls.h:443: error: parse error before "size_t"
../src/crypto/tls.h:505: error: parse error before "size_t"
../src/crypto/tls.h:528: error: parse error before "size_t"
../src/crypto/tls.h:531: error: parse error before "size_t"
In file included from hostapd.c:43:
../src/eap_server/eap.h:38: error: parse error before "size_t"
../src/eap_server/eap.h:38: warning: no semicolon at end of struct or union
../src/eap_server/eap.h:45: error: parse error before '}' token
../src/eap_server/eap.h:65: error: parse error before "size_t"
../src/eap_server/eap.h:65: warning: no semicolon at end of struct or union
../src/eap_server/eap.h:75: error: parse error before "aaaEapKeyDataLen"
../src/eap_server/eap.h:75: warning: type defaults to `int' in declaration of `aaaEapKeyDataLen'
../src/eap_server/eap.h:75: warning: data definition has no type or storage class
../src/eap_server/eap.h:84: error: parse error before '}' token
../src/eap_server/eap.h:87: error: parse error before "size_t"
../src/eap_server/eap.h:89: error: parse error before "size_t"
../src/eap_server/eap.h:99: error: parse error before "size_t"
../src/eap_server/eap.h:99: warning: no semicolon at end of struct or union
../src/eap_server/eap.h:108: error: parse error before '}' token
../src/eap_server/eap.h:119: error: parse error before "size_t"
In file included from hostapd.c:44:
../src/eap_server/tncs.h:23: error: parse error before "tncs_total_send_len"
../src/eap_server/tncs.h:23: warning: type defaults to `int' in declaration of `tncs_total_send_len'
../src/eap_server/tncs.h:23: warning: data definition has no type or storage class
../src/eap_server/tncs.h:40: error: parse error before "size_t"
../src/eap_server/tncs.h:46: error: parse error before "size_t"
In file included from hostapd.c:46:
../src/l2_packet/l2_packet.h:68: error: parse error before "size_t"
../src/l2_packet/l2_packet.h:98: error: parse error before "size_t"
../src/l2_packet/l2_packet.h:114: error: parse error before "size_t"
In file included from hostapd.c:47:
wps_hostapd.h:43: error: parse error before "size_t"
hostapd.c:51: error: parse error before "size_t"
hostapd.c:58: error: parse error before "size_t"
hostapd.c:58: warning: no semicolon at end of struct or union
hostapd.c:60: error: parse error before '}' token
hostapd.c:71: error: parse error before "size_t"
hostapd.c: In function `hostapd_logger_cb':
hostapd.c:73: error: `ctx' undeclared (first use in this function)
hostapd.c:79: error: `len' undeclared (first use in this function)
hostapd.c:85: error: dereferencing pointer to incomplete type
hostapd.c:86: error: dereferencing pointer to incomplete type
hostapd.c:87: error: dereferencing pointer to incomplete type
hostapd.c:88: error: dereferencing pointer to incomplete type
hostapd.c:94: error: `module' undeclared (first use in this function)
hostapd.c:121: error: `addr' undeclared (first use in this function)
hostapd.c:123: error: dereferencing pointer to incomplete type
hostapd.c:124: error: `txt' undeclared (first use in this function)
hostapd.c:127: error: dereferencing pointer to incomplete type
hostapd.c:137: error: `level' undeclared (first use in this function)
hostapd.c: In function `hostapd_prune_associations':
hostapd.c:201: error: `size_t' undeclared (first use in this function)
hostapd.c:201: error: parse error before "i"
hostapd.c:204: error: `i' undeclared (first use in this function)
hostapd.c:204: error: dereferencing pointer to incomplete type
hostapd.c:205: error: `j' undeclared (first use in this function)
hostapd.c:205: error: dereferencing pointer to incomplete type
hostapd.c:206: error: dereferencing pointer to incomplete type
hostapd.c: In function `hostapd_new_assoc_sta':
hostapd.c:243: error: dereferencing pointer to incomplete type
hostapd.c:249: error: dereferencing pointer to incomplete type
hostapd.c:249: error: dereferencing pointer to incomplete type
hostapd.c: In function `hostapd_wpa_auth_conf':
hostapd.c:297: error: dereferencing pointer to incomplete type
hostapd.c:298: error: dereferencing pointer to incomplete type
hostapd.c:299: error: dereferencing pointer to incomplete type
hostapd.c:300: error: dereferencing pointer to incomplete type
hostapd.c:301: error: dereferencing pointer to incomplete type
hostapd.c:302: error: dereferencing pointer to incomplete type
hostapd.c:303: error: dereferencing pointer to incomplete type
hostapd.c:304: error: dereferencing pointer to incomplete type
hostapd.c:305: error: dereferencing pointer to incomplete type
hostapd.c:306: error: dereferencing pointer to incomplete type
hostapd.c:307: error: dereferencing pointer to incomplete type
hostapd.c:308: error: dereferencing pointer to incomplete type
hostapd.c:309: error: dereferencing pointer to incomplete type
hostapd.c:310: error: dereferencing pointer to incomplete type
hostapd.c: In function `hostapd_reload_config':
hostapd.c:339: error: dereferencing pointer to incomplete type
hostapd.c:342: error: `size_t' undeclared (first use in this function)
hostapd.c:342: error: parse error before "j"
hostapd.c:344: error: dereferencing pointer to incomplete type
hostapd.c:352: error: `j' undeclared (first use in this function)
hostapd.c:352: error: dereferencing pointer to incomplete type
hostapd.c:353: error: dereferencing pointer to incomplete type
hostapd.c:361: error: dereferencing pointer to incomplete type
hostapd.c:362: error: dereferencing pointer to incomplete type
hostapd.c:369: error: dereferencing pointer to incomplete type
hostapd.c:371: error: dereferencing pointer to incomplete type
hostapd.c:372: error: dereferencing pointer to incomplete type
hostapd.c:378: error: dereferencing pointer to incomplete type
hostapd.c:383: error: dereferencing pointer to incomplete type
hostapd.c:384: error: dereferencing pointer to incomplete type
hostapd.c:385: error: dereferencing pointer to incomplete type
hostapd.c:390: error: dereferencing pointer to incomplete type
hostapd.c:390: error: dereferencing pointer to incomplete type
hostapd.c:391: error: dereferencing pointer to incomplete type
hostapd.c:395: error: dereferencing pointer to incomplete type
hostapd.c: In function `handle_reload':
hostapd.c:408: error: `size_t' undeclared (first use in this function)
hostapd.c:408: error: parse error before "i"
hostapd.c:413: error: `i' undeclared (first use in this function)
hostapd.c:413: error: dereferencing pointer to incomplete type
hostapd.c:414: error: dereferencing pointer to incomplete type
hostapd.c: In function `hostapd_dump_state':
hostapd.c:436: error: dereferencing pointer to incomplete type
hostapd.c:443: error: dereferencing pointer to incomplete type
hostapd.c:444: error: dereferencing pointer to incomplete type
hostapd.c:447: error: dereferencing pointer to incomplete type
hostapd.c:456: error: dereferencing pointer to incomplete type
hostapd.c:457: error: dereferencing pointer to incomplete type
hostapd.c:458: error: dereferencing pointer to incomplete type
hostapd.c: In function `handle_dump_state':
hostapd.c:530: error: `size_t' undeclared (first use in this function)
hostapd.c:530: error: parse error before "i"
hostapd.c:532: error: `i' undeclared (first use in this function)
hostapd.c:532: error: dereferencing pointer to incomplete type
hostapd.c:533: error: dereferencing pointer to incomplete type
hostapd.c:534: error: `j' undeclared (first use in this function)
hostapd.c:534: error: dereferencing pointer to incomplete type
hostapd.c:535: error: dereferencing pointer to incomplete type
hostapd.c: In function `hostapd_broadcast_wep_clear':
hostapd.c:572: error: dereferencing pointer to incomplete type
hostapd.c: In function `hostapd_broadcast_wep_set':
hostapd.c:580: error: dereferencing pointer to incomplete type
hostapd.c:582: error: dereferencing pointer to incomplete type
hostapd.c:583: error: dereferencing pointer to incomplete type
hostapd.c:584: error: dereferencing pointer to incomplete type
hostapd.c:586: error: dereferencing pointer to incomplete type
hostapd.c:587: error: dereferencing pointer to incomplete type
hostapd.c:588: error: dereferencing pointer to incomplete type
hostapd.c:593: error: dereferencing pointer to incomplete type
hostapd.c:594: error: `size_t' undeclared (first use in this function)
hostapd.c:594: error: parse error before "i"
hostapd.c:595: error: `i' undeclared (first use in this function)
hostapd.c:595: error: dereferencing pointer to incomplete type
hostapd.c:597: error: dereferencing pointer to incomplete type
hostapd.c:600: error: dereferencing pointer to incomplete type
hostapd.c:605: error: dereferencing pointer to incomplete type
hostapd.c:607: error: dereferencing pointer to incomplete type
hostapd.c:608: error: dereferencing pointer to incomplete type
hostapd.c:609: error: dereferencing pointer to incomplete type
hostapd.c: In function `hostapd_cleanup':
hostapd.c:647: error: dereferencing pointer to incomplete type
hostapd.c:653: error: dereferencing pointer to incomplete type
hostapd.c:687: error: dereferencing pointer to incomplete type
hostapd.c:689: error: dereferencing pointer to incomplete type
hostapd.c: In function `hostapd_cleanup_iface':
hostapd.c:715: error: dereferencing pointer to incomplete type
hostapd.c:715: error: dereferencing pointer to incomplete type
hostapd.c:716: error: dereferencing pointer to incomplete type
hostapd.c:717: error: dereferencing pointer to incomplete type
hostapd.c:718: error: dereferencing pointer to incomplete type
hostapd.c:720: error: dereferencing pointer to incomplete type
hostapd.c:721: error: dereferencing pointer to incomplete type
hostapd.c:723: error: dereferencing pointer to incomplete type
hostapd.c:724: error: dereferencing pointer to incomplete type
hostapd.c: In function `hostapd_setup_encryption':
hostapd.c:735: error: dereferencing pointer to incomplete type
hostapd.c:739: error: dereferencing pointer to incomplete type
hostapd.c:741: error: dereferencing pointer to incomplete type
hostapd.c:742: error: dereferencing pointer to incomplete type
hostapd.c:743: error: dereferencing pointer to incomplete type
hostapd.c:748: error: dereferencing pointer to incomplete type
hostapd.c:749: error: dereferencing pointer to incomplete type
hostapd.c: In function `hostapd_wpa_auth_set_eapol':
hostapd.c:846: error: dereferencing pointer to incomplete type
hostapd.c:850: error: dereferencing pointer to incomplete type
hostapd.c:854: error: dereferencing pointer to incomplete type
hostapd.c:859: error: dereferencing pointer to incomplete type
hostapd.c:863: error: dereferencing pointer to incomplete type
hostapd.c: In function `hostapd_wpa_auth_get_eapol':
hostapd.c:878: error: dereferencing pointer to incomplete type
hostapd.c:880: error: dereferencing pointer to incomplete type
hostapd.c: At top level:
hostapd.c:896: error: parse error before "size_t"
hostapd.c: In function `hostapd_wpa_auth_get_msk':
hostapd.c:898: error: `ctx' undeclared (first use in this function)
hostapd.c:900: error: `size_t' undeclared (first use in this function)
hostapd.c:900: error: parse error before "keylen"
hostapd.c:903: error: `addr' undeclared (first use in this function)
hostapd.c:907: error: `keylen' undeclared (first use in this function)
hostapd.c:911: error: `len' undeclared (first use in this function)
hostapd.c:913: error: `msk' undeclared (first use in this function)
hostapd.c: At top level:
hostapd.c:922: error: parse error before "size_t"
hostapd.c: In function `hostapd_wpa_auth_set_key':
hostapd.c:924: error: `ctx' undeclared (first use in this function)
hostapd.c:925: error: dereferencing pointer to incomplete type
hostapd.c:927: error: `vlan_id' undeclared (first use in this function)
hostapd.c:928: error: dereferencing pointer to incomplete type
hostapd.c:933: error: `alg' undeclared (first use in this function)
hostapd.c:933: error: `addr' undeclared (first use in this function)
hostapd.c:933: error: `idx' undeclared (first use in this function)
hostapd.c:934: error: `key_len' undeclared (first use in this function)
hostapd.c: In function `hostapd_wpa_auth_get_seqnum':
hostapd.c:942: error: dereferencing pointer to incomplete type
hostapd.c: In function `hostapd_wpa_auth_get_seqnum_igtk':
hostapd.c:950: error: dereferencing pointer to incomplete type
hostapd.c: At top level:
hostapd.c:956: error: parse error before "size_t"
hostapd.c: In function `hostapd_wpa_auth_send_eapol':
hostapd.c:959: error: `ctx' undeclared (first use in this function)
hostapd.c:960: error: `addr' undeclared (first use in this function)
hostapd.c:960: error: `data' undeclared (first use in this function)
hostapd.c:960: error: `data_len' undeclared (first use in this function)
hostapd.c:960: error: `encrypt' undeclared (first use in this function)
hostapd.c: In function `hostapd_wpa_auth_for_each_auth':
hostapd.c:984: error: `size_t' undeclared (first use in this function)
hostapd.c:984: error: parse error before "i"
hostapd.c:987: error: `i' undeclared (first use in this function)
hostapd.c:987: error: dereferencing pointer to incomplete type
hostapd.c:988: error: `j' undeclared (first use in this function)
hostapd.c:988: error: dereferencing pointer to incomplete type
hostapd.c:989: error: dereferencing pointer to incomplete type
hostapd.c: At top level:
hostapd.c:1000: error: parse error before "size_t"
hostapd.c: In function `hostapd_wpa_auth_send_ether':
hostapd.c:1002: error: `ctx' undeclared (first use in this function)
hostapd.c:1005: error: `dst' undeclared (first use in this function)
hostapd.c:1006: error: `proto' undeclared (first use in this function)
hostapd.c:1007: error: `data' undeclared (first use in this function)
hostapd.c:1007: error: `data_len' undeclared (first use in this function)
hostapd.c: In function `hostapd_validate_bssid_configuration':
hostapd.c:1089: error: dereferencing pointer to incomplete type
hostapd.c:1090: error: dereferencing pointer to incomplete type
hostapd.c:1104: error: dereferencing pointer to incomplete type
hostapd.c:1105: error: dereferencing pointer to incomplete type
hostapd.c:1110: error: dereferencing pointer to incomplete type
hostapd.c:1142: error: dereferencing pointer to incomplete type
hostapd.c: In function `mac_in_conf':
hostapd.c:1173: error: `size_t' undeclared (first use in this function)
hostapd.c:1173: error: parse error before "i"
hostapd.c:1175: error: `i' undeclared (first use in this function)
hostapd.c:1175: error: dereferencing pointer to incomplete type
hostapd.c:1176: error: dereferencing pointer to incomplete type
hostapd.c: In function `hostapd_setup_wpa':
hostapd.c:1190: error: `size_t' undeclared (first use in this function)
hostapd.c:1190: error: parse error before "wpa_ie_len"
hostapd.c:1221: error: dereferencing pointer to incomplete type
hostapd.c:1225: error: `wpa_ie_len' undeclared (first use in this function)
hostapd.c: In function `hostapd_setup_radius_srv':
hostapd.c:1246: error: storage size of 'srv' isn't known
hostapd.c:1248: error: dereferencing pointer to incomplete type
hostapd.c:1249: error: dereferencing pointer to incomplete type
hostapd.c:1253: error: dereferencing pointer to incomplete type
hostapd.c:1254: error: dereferencing pointer to incomplete type
hostapd.c:1255: error: dereferencing pointer to incomplete type
hostapd.c:1256: error: dereferencing pointer to incomplete type
hostapd.c:1257: error: dereferencing pointer to incomplete type
hostapd.c:1258: error: dereferencing pointer to incomplete type
hostapd.c:1259: error: dereferencing pointer to incomplete type
hostapd.c:1260: error: dereferencing pointer to incomplete type
hostapd.c:1261: error: dereferencing pointer to incomplete type
hostapd.c:1263: error: dereferencing pointer to incomplete type
hostapd.c:1265: error: dereferencing pointer to incomplete type
hostapd.c:1266: error: dereferencing pointer to incomplete type
hostapd.c:1246: warning: unused variable `srv'
hostapd.c: In function `hostapd_setup_bss':
hostapd.c:1295: error: dereferencing pointer to incomplete type
hostapd.c:1302: error: dereferencing pointer to incomplete type
hostapd.c:1305: error: dereferencing pointer to incomplete type
hostapd.c:1309: error: dereferencing pointer to incomplete type
hostapd.c:1315: error: dereferencing pointer to incomplete type
hostapd.c:1315: error: dereferencing pointer to incomplete type
hostapd.c:1327: error: dereferencing pointer to incomplete type
hostapd.c:1340: error: dereferencing pointer to incomplete type
hostapd.c:1346: error: dereferencing pointer to incomplete type
hostapd.c:1346: error: `size_t' undeclared (first use in this function)
hostapd.c:1346: error: parse error before "ssid_len"
hostapd.c:1347: warning: left-hand operand of comma expression has no effect
hostapd.c:1347: warning: left-hand operand of comma expression has no effect
hostapd.c:1347: error: parse error before ')' token
hostapd.c:1354: error: dereferencing pointer to incomplete type
hostapd.c:1355: error: dereferencing pointer to incomplete type
hostapd.c:1355: error: dereferencing pointer to incomplete type
hostapd.c:1356: error: dereferencing pointer to incomplete type
hostapd.c:1356: error: dereferencing pointer to incomplete type
hostapd.c:1362: error: dereferencing pointer to incomplete type
hostapd.c:1363: error: dereferencing pointer to incomplete type
hostapd.c:1373: error: dereferencing pointer to incomplete type
hostapd.c:1379: error: dereferencing pointer to incomplete type
hostapd.c:1387: error: dereferencing pointer to incomplete type
hostapd.c:1388: error: dereferencing pointer to incomplete type
hostapd.c:1394: error: dereferencing pointer to incomplete type
hostapd.c:1395: error: dereferencing pointer to incomplete type
hostapd.c:1413: error: dereferencing pointer to incomplete type
hostapd.c:1421: error: dereferencing pointer to incomplete type
hostapd.c:1422: error: dereferencing pointer to incomplete type
hostapd.c:1454: error: dereferencing pointer to incomplete type
hostapd.c: In function `hostapd_tx_queue_params':
hostapd.c:1464: error: dereferencing pointer to incomplete type
hostapd.c:1469: error: dereferencing pointer to incomplete type
hostapd.c: At top level:
hostapd.c:1485: error: parse error before "size_t"
hostapd.c: In function `hostapd_radius_get_eap_user':
hostapd.c:1491: error: `ctx' undeclared (first use in this function)
hostapd.c:1491: error: `identity' undeclared (first use in this function)
hostapd.c:1491: error: `identity_len' undeclared (first use in this function)
hostapd.c:1495: error: `user' undeclared (first use in this function)
hostapd.c:1503: error: dereferencing pointer to incomplete type
hostapd.c:1504: error: dereferencing pointer to incomplete type
hostapd.c:1507: error: dereferencing pointer to incomplete type
hostapd.c:1508: error: dereferencing pointer to incomplete type
hostapd.c:1511: error: dereferencing pointer to incomplete type
hostapd.c:1511: error: dereferencing pointer to incomplete type
hostapd.c:1513: error: dereferencing pointer to incomplete type
hostapd.c:1514: error: dereferencing pointer to incomplete type
hostapd.c:1516: error: dereferencing pointer to incomplete type
hostapd.c:1517: error: dereferencing pointer to incomplete type
hostapd.c: In function `setup_interface':
hostapd.c:1525: error: dereferencing pointer to incomplete type
hostapd.c:1527: error: `size_t' undeclared (first use in this function)
hostapd.c:1527: error: parse error before "i"
hostapd.c:1529: error: dereferencing pointer to incomplete type
hostapd.c:1531: error: parse error before "j"
hostapd.c:1550: error: `i' undeclared (first use in this function)
hostapd.c:1550: error: dereferencing pointer to incomplete type
hostapd.c:1551: error: dereferencing pointer to incomplete type
hostapd.c:1552: error: dereferencing pointer to incomplete type
hostapd.c:1564: error: dereferencing pointer to incomplete type
hostapd.c:1564: error: dereferencing pointer to incomplete type
hostapd.c:1565: error: dereferencing pointer to incomplete type
hostapd.c:1573: error: dereferencing pointer to incomplete type
hostapd.c:1576: error: dereferencing pointer to incomplete type
hostapd.c:1580: error: dereferencing pointer to incomplete type
hostapd.c:1581: error: dereferencing pointer to incomplete type
hostapd.c:1603: error: dereferencing pointer to incomplete type
hostapd.c:1604: error: dereferencing pointer to incomplete type
hostapd.c:1607: error: dereferencing pointer to incomplete type
hostapd.c:1608: error: dereferencing pointer to incomplete type
hostapd.c:1610: error: dereferencing pointer to incomplete type
hostapd.c:1611: error: dereferencing pointer to incomplete type
hostapd.c:1612: error: dereferencing pointer to incomplete type
hostapd.c:1619: error: dereferencing pointer to incomplete type
hostapd.c:1621: error: dereferencing pointer to incomplete type
hostapd.c:1622: error: dereferencing pointer to incomplete type
hostapd.c:1628: error: dereferencing pointer to incomplete type
hostapd.c:1629: error: dereferencing pointer to incomplete type
hostapd.c:1637: error: `j' undeclared (first use in this function)
hostapd.c:1637: error: dereferencing pointer to incomplete type
hostapd.c:1638: error: dereferencing pointer to incomplete type
hostapd.c:1643: error: dereferencing pointer to incomplete type
hostapd.c: In function `hostapd_setup_interface':
hostapd.c:1678: error: dereferencing pointer to incomplete type
hostapd.c:1681: error: dereferencing pointer to incomplete type
hostapd.c:1683: error: dereferencing pointer to incomplete type
hostapd.c: In function `hostapd_alloc_bss_data':
hostapd.c:1748: error: dereferencing pointer to incomplete type
hostapd.c:1786: error: dereferencing pointer to incomplete type
hostapd.c:1788: error: dereferencing pointer to incomplete type
hostapd.c:1798: error: dereferencing pointer to incomplete type
hostapd.c: In function `hostapd_init':
hostapd.c:1825: error: `size_t' undeclared (first use in this function)
hostapd.c:1825: error: parse error before "i"
hostapd.c:1827: error: dereferencing pointer to incomplete type
hostapd.c:1831: error: dereferencing pointer to incomplete type
hostapd.c:1832: error: dereferencing pointer to incomplete type
hostapd.c:1835: error: dereferencing pointer to incomplete type
hostapd.c:1838: error: dereferencing pointer to incomplete type
hostapd.c:1840: error: dereferencing pointer to incomplete type
hostapd.c:1840: error: dereferencing pointer to incomplete type
hostapd.c:1841: error: dereferencing pointer to incomplete type
hostapd.c:1841: error: dereferencing pointer to incomplete type
hostapd.c:1843: error: dereferencing pointer to incomplete type
hostapd.c:1846: error: `i' undeclared (first use in this function)
hostapd.c:1846: error: dereferencing pointer to incomplete type
hostapd.c:1847: error: dereferencing pointer to incomplete type
hostapd.c:1849: error: dereferencing pointer to incomplete type
hostapd.c:1860: error: dereferencing pointer to incomplete type
hostapd.c:1860: error: dereferencing pointer to incomplete type
hostapd.c:1861: error: dereferencing pointer to incomplete type
hostapd.c:1866: error: dereferencing pointer to incomplete type
hostapd.c:1867: error: dereferencing pointer to incomplete type
hostapd.c: In function `main':
hostapd.c:1876: error: storage size of 'interfaces' isn't known
hostapd.c:1878: error: `size_t' undeclared (first use in this function)
hostapd.c:1878: error: parse error before "i"
hostapd.c:1944: error: `SIGHUP' undeclared (first use in this function)
hostapd.c:1945: error: `SIGUSR1' undeclared (first use in this function)
hostapd.c:1950: error: `i' undeclared (first use in this function)
hostapd.c:1993: error: `j' undeclared (first use in this function)
hostapd.c:1876: warning: unused variable `interfaces'
hostapd.c: At top level:
/ap/ixp425/snapgear/uClibc/include/netinet/in.h:228: error: storage size of `sin_zero' isn't known
config.h:69: error: storage size of `wep' isn't known
eapol_sm.h:225: error: storage size of `radius_class' isn't known
make: *** [hostapd.o] 错误 1
个人分析,问题有三大类,
1,一些数据结构未定义,
2,一些类型名出现语法错误,是头文件未编译的结果
3,宏定义
 
                                                  
四.     实验中问题及解决方法
a)         问题:madwifi 无法被指定内核编译
解决办法:make时加上相应参数
原因:在读INSTALL时不够细心
b)        问题:交叉编译hostapd时无法使用指定交叉编译工具编译,总是使用gcc编译
解决办法:在Makefile文件中,自己加上CC=。。。。。。
原因:Makefile不熟悉
遗留问题:在没有其他定义CC时,从ifndef CC中设定CC路径,CC赋值语句无效,自己在ifndef CC外部设定CC路径,可以生效。不解。
c)    问题:使用ucfront-gcc arm-linux-gcc编译出错,现象如图三.b(未解决)
解决思路:判断是交叉编译问题还是Makefile问题,实验只使用arm-linux-gcc编译,没有错误,架构为arm架构,说明arm-linux-gcc部分没有问题