我是一个相对的菜鸟。
尝试将 WiFi Direct 添加到旧上网本上的 12.04 安装中。我遵循了以下建议:如何在我的 HP DM1 笔记本电脑上获取 wifi direct(wifi p2p)?
首先,我将 wpa_supplicant-2.3 下载到根目录并解压
myself@myself-AspireOne:~$ tar -xzf wpa_supplicant-2.3.tar.gz
myself@myself-AspireOne:~$ cd wpa_supplicant-2.3/wpa_supplicant
然后我创建了一个名为.配置来自以下信息https://wireless.wiki.kernel.org/en/developers/p2p/howto并开始编译。
myself@myself-AspireOne:~/wpa_supplicant-2.3/wpa_supplicant$ cp wpa_supplicant.conf /etc/wpa_supplicant.conf
cp: cannot create regular file `/etc/wpa_supplicant.conf': Permission denied
myself@myself-AspireOne:~/wpa_supplicant-2.3/wpa_supplicant$ sudo cp wpa_supplicant.conf /etc/wpa_supplicant.conf
[sudo] password for myself:
myself@myself-AspireOne:~/wpa_supplicant-2.3/wpa_supplicant$ sudo make && make install
CC config.c
CC notify.c
CC bss.c
CC eap_register.c
CC ../src/utils/common.c
CC ../src/utils/wpa_debug.c
CC ../src/utils/wpabuf.c
CC ../src/utils/os_unix.c
CC ../src/utils/eloop.c
CC config_file.c
CC ../src/rsn_supp/wpa.c
CC ../src/rsn_supp/preauth.c
CC ../src/rsn_supp/pmksa_cache.c
CC ../src/rsn_supp/peerkey.c
CC ../src/rsn_supp/wpa_ie.c
CC ../src/common/wpa_common.c
CC p2p_supplicant.c
CC ../src/p2p/p2p.c
CC ../src/p2p/p2p_utils.c
CC ../src/p2p/p2p_parse.c
CC ../src/p2p/p2p_build.c
CC ../src/p2p/p2p_go_neg.c
CC ../src/p2p/p2p_sd.c
CC ../src/p2p/p2p_pd.c
CC ../src/p2p/p2p_invitation.c
CC ../src/p2p/p2p_dev_disc.c
CC ../src/p2p/p2p_group.c
CC ../src/ap/p2p_hostapd.c
CC ../src/utils/bitfield.c
CC ../src/eap_peer/eap_tls.c
CC ../src/eap_peer/eap_peap.c
CC ../src/eap_common/eap_peap_common.c
CC ../src/eap_peer/eap_ttls.c
CC ../src/eap_peer/eap_md5.c
CC ../src/eap_peer/eap_mschapv2.c
CC ../src/eap_peer/mschapv2.c
CC ../src/eap_peer/eap_gtc.c
CC ../src/eap_peer/eap_otp.c
CC ../src/eap_peer/eap_leap.c
CC wps_supplicant.c
CC ../src/utils/uuid.c
CC ../src/eap_peer/eap_wsc.c
CC ../src/eap_common/eap_wsc_common.c
CC ../src/wps/wps.c
CC ../src/wps/wps_common.c
CC ../src/wps/wps_attr_parse.c
CC ../src/wps/wps_attr_build.c
CC ../src/wps/wps_attr_process.c
CC ../src/wps/wps_dev_attr.c
CC ../src/wps/wps_enrollee.c
CC ../src/wps/wps_registrar.c
CC ../src/eapol_supp/eapol_supp_sm.c
CC ../src/eap_peer/eap.c
CC ../src/eap_peer/eap_methods.c
CC ap.c
CC ../src/ap/hostapd.c
CC ../src/ap/wpa_auth_glue.c
CC ../src/ap/utils.c
CC ../src/ap/authsrv.c
CC ../src/ap/ap_config.c
CC ../src/utils/ip_addr.c
CC ../src/ap/sta_info.c
CC ../src/ap/tkip_countermeasures.c
CC ../src/ap/ap_mlme.c
CC ../src/ap/ieee802_1x.c
CC ../src/eapol_auth/eapol_auth_sm.c
CC ../src/ap/ieee802_11_auth.c
CC ../src/ap/ieee802_11_shared.c
CC ../src/ap/drv_callbacks.c
CC ../src/ap/ap_drv_ops.c
CC ../src/ap/beacon.c
CC ../src/ap/eap_user_db.c
CC ../src/ap/ctrl_iface_ap.c
CC ../src/eap_server/eap_server.c
CC ../src/eap_server/eap_server_identity.c
CC ../src/eap_server/eap_server_methods.c
CC ../src/ap/wmm.c
CC ../src/ap/ap_list.c
CC ../src/ap/ieee802_11.c
CC ../src/ap/hw_features.c
CC ../src/ap/dfs.c
CC ../src/ap/wps_hostapd.c
CC ../src/eap_server/eap_server_wsc.c
CC ../src/ap/wpa_auth.c
CC ../src/ap/wpa_auth_ie.c
CC ../src/ap/pmksa_cache_auth.c
CC ../src/ap/peerkey_auth.c
CC ../src/crypto/ms_funcs.c
一切进展顺利,直到:编译最终遇到障碍。
CC ../src/eap_common/chap.c
CC ../src/eap_peer/eap_tls_common.c
../src/crypto/tls_openssl.c:19:25: fatal error: openssl/ssl.h: No such file or directory
compilation terminated.
make: *** [../src/crypto/tls_openssl.o] Error 1
有人能告诉我到底缺少了什么、为什么缺少以及如何修复它吗?使用不需要太多知识的说明。这是我第一次使用 make 命令。
谢谢你帮助新手。
此外,如果 wpa_gui 可以安全使用,有任何建议吗?运行时它会要求输入系统密码。
答案1
我在谷歌上搜索了几个具体错误后,终于可以编译了。你遇到的那个错误fatal error: openssl/ssl.h: No such file or directory compilation terminated.
和我解决第一个错误后遇到的那个错误fatal error: netlink/genl/genl.h: No such file or directory compilation terminated
。结果是我安装了 libnl1、libssl-dev 和 libnl-dev。使用以下命令安装它们
sudo apt-get install libnl1 libssl-dev libnl-dev
接下来make && make install
照常运行
笔记:对于 .config,我使用了存档中的配置文件,只是取消注释了与 WiFi-Direct 相关的行,而不是示例指向的行这里在 Ubuntu 14.04 上编译成功