I am unable to emerge net-wireless/wpa_supplicant-2.4-r1. I've encountered this on two systems now.
The output included has been insensitively thrashed by thunderbird, so I've also pasted it along with some other info. https://gist.github.com/jfindlay/b3fc74bda7d4cfb5a2dc The first is the result from an emerge of wpa_supplicant, the subsequent two are the result of `ebuild $(equery which wpa_supplicant) merge`. Additional attempts at ebuild merging in this way always produce the output of the second ebuild merge. I've found these similar problems in a web search, but nothing seems to be directly related. http://lists.shmoo.com/pipermail/hostap/2009-February/019392.html http://ask.csdn.net/questions/61862 http://zhidao.baidu.com/question/360043934234201692.html I'm wondering if I have an unusual USE flags situation that is causing this, but so far the problem seems to be (related to) a misconfiguration in the wpa_sup[plicant build system. I am going to continue to investigate, but would appreciate any knowledge or experience anyone else can provide. Thanks. Justin x86_64-pc-linux-gnu-gcc -Wl,-O1 -Wl,--as-needed -shared ../utils/common.o ../utils/os_unix.o ../utils/wpa_debug.o ../utils/base64.o ../utils/wpabuf.o ../utils/eloop.o ../crypto/md5.o ../crypto/sha1-tlsprf.o ../crypto/aes-encblock.o ../crypto/aes-wrap.o ../crypto/aes-ctr.o ../crypto/aes-eax.o ../crypto/aes-omac1.o ../crypto/ms_funcs.o ../crypto/sha256.o ../crypto/random.o ../eap_common/eap_peap_common.o ../eap_common/eap_psk_common.o ../eap_common/eap_pax_common.o ../eap_common/eap_sake_common.o ../eap_common/eap_gpsk_common.o ../eap_common/chap.o ../crypto/tls_openssl.o ../crypto/crypto_openssl.o ../eap_peer/eap_tls.o ../eap_peer/eap_peap.o ../eap_peer/eap_ttls.o ../eap_peer/eap_md5.o ../eap_peer/eap_mschapv2.o ../eap_peer/mschapv2.o ../eap_peer/eap_otp.o ../eap_peer/eap_gtc.o ../eap_peer/eap_leap.o ../eap_peer/eap_psk.o ../eap_peer/eap_pax.o ../eap_peer/eap_sake.o ../eap_peer/eap_gpsk.o ../eap_peer/eap.o ../eap_common/eap_common.o ../eap_peer/eap_methods.o ../eap_peer/eap_tls_common.o -Wl,-soname -Wl,libeap.so.0 -o libeap.so.0.0.0 -lssl -lcrypto ../crypto/crypto_openssl.o: In function `aes_wrap': crypto_openssl.c:(.text+0xb30): multiple definition of `aes_wrap' ../crypto/aes-wrap.o:aes-wrap.c:(.text+0x0): first defined here ../crypto/crypto_openssl.o: In function `hmac_md5_vector': crypto_openssl.c:(.text+0x16e0): multiple definition of `hmac_md5_vector' ../crypto/md5.o:md5.c:(.text+0x0): first defined here ../crypto/crypto_openssl.o: In function `hmac_md5': crypto_openssl.c:(.text+0x1780): multiple definition of `hmac_md5' ../crypto/md5.o:md5.c:(.text+0x280): first defined here collect2: error: ld returned 1 exit status Makefile:148: recipe for target 'libeap.so.0.0.0' failed make: *** [libeap.so.0.0.0] Error 1 make: Leaving directory '/var/tmp/portage/net-wireless/wpa_supplicant-2.4-r1/work/wpa_supplicant-2.4/src/eap_peer' ... x86_64-pc-linux-gnu-gcc -c -o ../src/eap_peer/eap_sim.o -O2 -march=native -mtune=native -fmessage-length=0 -pipe -I/var/tmp/portage/net-wireless/wpa_supplicant-2.4-r1/work/wpa_supplicant-2.4/src -I/var/tmp/portage/net-wireless/wpa_supplicant-2.4-r1/work/wpa_supplicant-2.4/src/utils -DCONFIG_BACKEND_FILE -DCONFIG_IEEE80211W -DCONFIG_IEEE80211R -DCONFIG_PEERKEY -DCONFIG_P2P -DCONFIG_WIFI_DISPLAY -DCONFIG_HS20 -DCONFIG_INTERWORKING -DCONFIG_DRIVER_WIRED -DCONFIG_DRIVER_NL80211 -DCONFIG_LIBNL20 -I/usr/include/libnl3 -DCONFIG_DRIVER_WEXT -DCONFIG_WIRELESS_EXTENSION -DEAP_TLS -DEAP_PEAP -DEAP_TTLS -DEAP_MD5 -DEAP_MSCHAPv2 -DEAP_GTC -DEAP_OTP -DEAP_SIM -DEAP_LEAP -DEAP_PSK -DEAP_AKA -DEAP_AKA_PRIME -DEAP_PAX -DCONFIG_WPS -DEAP_WSC -DCONFIG_WPS_NFC -DCONFIG_WPS_OOB -DCONFIG_WPS_ER -DCONFIG_WPS_UPNP -DIEEE8021X_EAPOL -DCONFIG_AP -DCONFIG_NO_RADIUS -DCONFIG_NO_ACCOUNTING -DCONFIG_NO_VLAN -DEAP_SERVER -DEAP_SERVER_IDENTITY -DNEED_AP_MLME -DEAP_SERVER_WSC -DCONFIG_NO_RADIUS -DPCSC_FUNCS -I/usr/include/PCSC -DPKCS12_FUNCS -DCONFIG_SMARTCARD -DEAP_TLS_OPENSSL -DCONFIG_SHA256 -DCONFIG_CTRL_IFACE -DCONFIG_CTRL_IFACE_UNIX -DCONFIG_CTRL_IFACE_DBUS -DDBUS_API_SUBJECT_TO_CHANGE -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -DCONFIG_CTRL_IFACE_DBUS_NEW -DCONFIG_CTRL_IFACE_DBUS_INTRO -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -DCONFIG_DBUS -DCONFIG_SME -DCONFIG_DEBUG_FILE -DCONFIG_DELAYED_MIC_ERROR_REPORT -DCONFIG_GAS -DCONFIG_OFFCHANNEL ../src/eap_peer/eap_sim.c x86_64-pc-linux-gnu-gcc -c -o ../src/eap_peer/eap_aka.o -O2 -march=native -mtune=native -fmessage-length=0 -pipe -I/var/tmp/portage/net-wireless/wpa_supplicant-2.4-r1/work/wpa_supplicant-2.4/src -I/var/tmp/portage/net-wireless/wpa_supplicant-2.4-r1/work/wpa_supplicant-2.4/src/utils -DCONFIG_BACKEND_FILE -DCONFIG_IEEE80211W -DCONFIG_IEEE80211R -DCONFIG_PEERKEY -DCONFIG_P2P -DCONFIG_WIFI_DISPLAY -DCONFIG_HS20 -DCONFIG_INTERWORKING -DCONFIG_DRIVER_WIRED -DCONFIG_DRIVER_NL80211 -DCONFIG_LIBNL20 -I/usr/include/libnl3 -DCONFIG_DRIVER_WEXT -DCONFIG_WIRELESS_EXTENSION -DEAP_TLS -DEAP_PEAP -DEAP_TTLS -DEAP_MD5 -DEAP_MSCHAPv2 -DEAP_GTC -DEAP_OTP -DEAP_SIM -DEAP_LEAP -DEAP_PSK -DEAP_AKA -DEAP_AKA_PRIME -DEAP_PAX -DCONFIG_WPS -DEAP_WSC -DCONFIG_WPS_NFC -DCONFIG_WPS_OOB -DCONFIG_WPS_ER -DCONFIG_WPS_UPNP -DIEEE8021X_EAPOL -DCONFIG_AP -DCONFIG_NO_RADIUS -DCONFIG_NO_ACCOUNTING -DCONFIG_NO_VLAN -DEAP_SERVER -DEAP_SERVER_IDENTITY -DNEED_AP_MLME -DEAP_SERVER_WSC -DCONFIG_NO_RADIUS -DPCSC_FUNCS -I/usr/include/PCSC -DPKCS12_FUNCS -DCONFIG_SMARTCARD -DEAP_TLS_OPENSSL -DCONFIG_SHA256 -DCONFIG_CTRL_IFACE -DCONFIG_CTRL_IFACE_UNIX -DCONFIG_CTRL_IFACE_DBUS -DDBUS_API_SUBJECT_TO_CHANGE -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -DCONFIG_CTRL_IFACE_DBUS_NEW -DCONFIG_CTRL_IFACE_DBUS_INTRO -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -DCONFIG_DBUS -DCONFIG_SME -DCONFIG_DEBUG_FILE -DCONFIG_DELAYED_MIC_ERROR_REPORT -DCONFIG_GAS -DCONFIG_OFFCHANNEL ../src/eap_peer/eap_aka.c x86_64-pc-linux-gnu-gcc -c -o ../src/eap_peer/eap_wsc.o -O2 -march=native -mtune=native -fmessage-length=0 -pipe -I/var/tmp/portage/net-wireless/wpa_supplicant-2.4-r1/work/wpa_supplicant-2.4/src -I/var/tmp/portage/net-wireless/wpa_supplicant-2.4-r1/work/wpa_supplicant-2.4/src/utils -DCONFIG_BACKEND_FILE -DCONFIG_IEEE80211W -DCONFIG_IEEE80211R -DCONFIG_PEERKEY -DCONFIG_P2P -DCONFIG_WIFI_DISPLAY -DCONFIG_HS20 -DCONFIG_INTERWORKING -DCONFIG_DRIVER_WIRED -DCONFIG_DRIVER_NL80211 -DCONFIG_LIBNL20 -I/usr/include/libnl3 -DCONFIG_DRIVER_WEXT -DCONFIG_WIRELESS_EXTENSION -DEAP_TLS -DEAP_PEAP -DEAP_TTLS -DEAP_MD5 -DEAP_MSCHAPv2 -DEAP_GTC -DEAP_OTP -DEAP_SIM -DEAP_LEAP -DEAP_PSK -DEAP_AKA -DEAP_AKA_PRIME -DEAP_PAX -DCONFIG_WPS -DEAP_WSC -DCONFIG_WPS_NFC -DCONFIG_WPS_OOB -DCONFIG_WPS_ER -DCONFIG_WPS_UPNP -DIEEE8021X_EAPOL -DCONFIG_AP -DCONFIG_NO_RADIUS -DCONFIG_NO_ACCOUNTING -DCONFIG_NO_VLAN -DEAP_SERVER -DEAP_SERVER_IDENTITY -DNEED_AP_MLME -DEAP_SERVER_WSC -DCONFIG_NO_RADIUS -DPCSC_FUNCS -I/usr/include/PCSC -DPKCS12_FUNCS -DCONFIG_SMARTCARD -DEAP_TLS_OPENSSL -DCONFIG_SHA256 -DCONFIG_CTRL_IFACE -DCONFIG_CTRL_IFACE_UNIX -DCONFIG_CTRL_IFACE_DBUS -DDBUS_API_SUBJECT_TO_CHANGE -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -DCONFIG_CTRL_IFACE_DBUS_NEW -DCONFIG_CTRL_IFACE_DBUS_INTRO -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -DCONFIG_DBUS -DCONFIG_SME -DCONFIG_DEBUG_FILE -DCONFIG_DELAYED_MIC_ERROR_REPORT -DCONFIG_GAS -DCONFIG_OFFCHANNEL ../src/eap_peer/eap_wsc.c x86_64-pc-linux-gnu-gcc -Wl,-O1 -Wl,--as-needed -o wpa_cli wpa_cli.o ../src/common/wpa_ctrl.o ../src/utils/wpa_debug.o ../src/utils/common.o ../src/utils/os_unix.o ../src/utils/eloop.o ../src/utils/edit_readline.o -lrt -lncurses -lreadline x86_64-pc-linux-gnu-gcc -Wl,-O1 -Wl,--as-needed -o wpa_passphrase wpa_passphrase.o ../src/utils/common.o ../src/utils/wpa_debug.o ../src/utils/wpabuf.o ../src/utils/os_unix.o ../src/crypto/crypto_openssl.o ../src/crypto/sha1-prf.o ../src/crypto/sha1-tlsprf.o ../src/crypto/sha256-prf.o -lrt -lcrypto ../src/crypto/sha256-prf.o: In function `sha256_prf_bits': sha256-prf.c:(.text+0x16c): undefined reference to `hmac_sha256_vector' sha256-prf.c:(.text+0x240): undefined reference to `hmac_sha256_vector' collect2: error: ld returned 1 exit status Makefile:1633: recipe for target 'wpa_passphrase' failed make: *** [wpa_passphrase] Error 1 make: *** Waiting for unfinished jobs.... ... x86_64-pc-linux-gnu-gcc -Wl,-O1 -Wl,--as-needed -o wpa_supplicant config.o notify.o bss.o eap_register.o ../src/utils/common.o ../src/utils/wpa_debug.o ../src/utils/wpabuf.o wmm_ac.o ../src/utils/os_unix.o ../src/utils/eloop.o config_file.o ../src/rsn_supp/wpa_ft.o ../src/rsn_supp/wpa.o ../src/rsn_supp/preauth.o ../src/rsn_supp/pmksa_cache.o ../src/rsn_supp/peerkey.o ../src/rsn_supp/wpa_ie.o ../src/common/wpa_common.o p2p_supplicant.o ../src/p2p/p2p.o ../src/p2p/p2p_utils.o ../src/p2p/p2p_parse.o ../src/p2p/p2p_build.o ../src/p2p/p2p_go_neg.o ../src/p2p/p2p_sd.o ../src/p2p/p2p_pd.o ../src/p2p/p2p_invitation.o ../src/p2p/p2p_dev_disc.o ../src/p2p/p2p_group.o ../src/ap/p2p_hostapd.o ../src/utils/bitfield.o wifi_display.o hs20_supplicant.o interworking.o ../src/eap_peer/eap_tls.o ../src/eap_peer/eap_peap.o ../src/eap_common/eap_peap_common.o ../src/eap_peer/eap_ttls.o ../src/eap_peer/eap_md5.o ../src/eap_peer/eap_mschapv2.o ../src/eap_peer/mschapv2.o ../src/eap_peer/eap_gtc.o ../src/eap_peer/eap_otp.o ../src/eap_peer/eap_sim.o ../src/eap_peer/eap_leap.o ../src/eap_peer/eap_psk.o ../src/eap_common/eap_psk_common.o ../src/eap_peer/eap_aka.o ../src/eap_common/eap_sim_common.o ../src/eap_peer/eap_pax.o ../src/eap_common/eap_pax_common.o wps_supplicant.o ../src/utils/uuid.o ../src/eap_peer/eap_wsc.o ../src/eap_common/eap_wsc_common.o ../src/wps/wps.o ../src/wps/wps_common.o ../src/wps/wps_attr_parse.o ../src/wps/wps_attr_build.o ../src/wps/wps_attr_process.o ../src/wps/wps_dev_attr.o ../src/wps/wps_enrollee.o ../src/wps/wps_registrar.o ../src/wps/ndef.o ../src/wps/wps_er.o ../src/wps/wps_er_ssdp.o ../src/wps/wps_upnp.o ../src/wps/wps_upnp_ssdp.o ../src/wps/wps_upnp_web.o ../src/wps/wps_upnp_event.o ../src/wps/wps_upnp_ap.o ../src/wps/upnp_xml.o ../src/wps/httpread.o ../src/wps/http_client.o ../src/wps/http_server.o ../src/eapol_supp/eapol_supp_sm.o ../src/eap_peer/eap.o ../src/eap_peer/eap_methods.o ap.o ../src/ap/hostapd.o ../src/ap/wpa_auth_glue.o ../src/ap/utils.o ../src/ap/authsrv.o ../src/ap/ap_config.o ../src/utils/ip_addr.o ../src/ap/sta_info.o ../src/ap/tkip_countermeasures.o ../src/ap/ap_mlme.o ../src/ap/ieee802_1x.o ../src/eapol_auth/eapol_auth_sm.o ../src/ap/ieee802_11_auth.o ../src/ap/ieee802_11_shared.o ../src/ap/drv_callbacks.o ../src/ap/ap_drv_ops.o ../src/ap/beacon.o ../src/ap/bss_load.o ../src/ap/eap_user_db.o ../src/ap/ctrl_iface_ap.o ../src/eap_server/eap_server.o ../src/eap_server/eap_server_identity.o ../src/eap_server/eap_server_methods.o ../src/ap/wmm.o ../src/ap/ap_list.o ../src/ap/ieee802_11.o ../src/ap/hw_features.o ../src/ap/dfs.o ../src/ap/wps_hostapd.o ../src/eap_server/eap_server_wsc.o ../src/ap/gas_serv.o ../src/ap/hs20.o ../src/ap/wpa_auth.o ../src/ap/wpa_auth_ie.o ../src/ap/pmksa_cache_auth.o ../src/ap/wpa_auth_ft.o ../src/ap/peerkey_auth.o ../src/utils/pcsc_funcs.o ../src/crypto/ms_funcs.o ../src/eap_common/chap.o ../src/eap_peer/eap_tls_common.o ../src/crypto/tls_openssl.o ../src/crypto/crypto_openssl.o ../src/crypto/fips_prf_openssl.o ../src/crypto/aes-eax.o ../src/crypto/aes-ctr.o ../src/crypto/aes-encblock.o ../src/crypto/aes-omac1.o ../src/crypto/aes-cbc.o ../src/crypto/sha256-prf.o ../src/crypto/dh_groups.o ../src/crypto/random.o ctrl_iface.o ctrl_iface_unix.o dbus/dbus_old.o dbus/dbus_old_handlers.o dbus/dbus_old_handlers_wps.o dbus/dbus_dict_helpers.o dbus/dbus_new_helpers.o dbus/dbus_new.o dbus/dbus_new_handlers.o dbus/dbus_new_handlers_wps.o dbus/dbus_new_handlers_p2p.o dbus/dbus_new_introspect.o dbus/dbus_common.o ../src/utils/base64.o sme.o ../src/common/ieee802_11_common.o ../src/common/hw_features_common.o ../src/eap_common/eap_common.o ../src/crypto/sha1-prf.o ../src/crypto/sha1-tlsprf.o ../src/common/gas.o gas_query.o offchannel.o ../src/drivers/driver_common.o wpa_supplicant.o events.o blacklist.o wpas_glue.o scan.o main.o ../src/drivers/driver_wired.o ../src/drivers/driver_nl80211.o ../src/drivers/driver_nl80211_capa.o ../src/drivers/driver_nl80211_event.o ../src/drivers/driver_nl80211_monitor.o ../src/drivers/driver_nl80211_scan.o ../src/utils/radiotap.o ../src/driver x86_64-pc-linux-gnu-gcc -Wl,-O1 -Wl,--as-needed -o wpa_passphrase wpa_passphrase.o ../src/utils/common.o ../src/utils/wpa_debug.o ../src/utils/wpabuf.o ../src/utils/os_unix.o ../src/crypto/crypto_openssl.o ../src/crypto/sha1-prf.o ../src/crypto/sha1-tlsprf.o ../src/crypto/sha256-prf.o -lrt -lcrypto ../src/crypto/sha256-prf.o: In function `sha256_prf_bits': sha256-prf.c:(.text+0x16c): undefined reference to `hmac_sha256_vector' sha256-prf.c:(.text+0x240): undefined reference to `hmac_sha256_vector' collect2: error: ld returned 1 exit status Makefile:1633: recipe for target 'wpa_passphrase' failed make: *** [wpa_passphrase] Error 1 make: *** Waiting for unfinished jobs.... eap_register.o: In function `eap_register_methods': eap_register.c:(.text+0x53): undefined reference to `eap_peer_wfa_unauth_tls_register' ../src/rsn_supp/peerkey.o: In function `rsn_smkid': peerkey.c:(.text+0x1a1): undefined reference to `hmac_sha256_vector' ../src/common/wpa_common.o: In function `rsn_pmkid': wpa_common.c:(.text+0x16a9): undefined reference to `hmac_sha256_vector' ../src/eap_common/eap_sim_common.o: In function `prf_prime': eap_sim_common.c:(.text+0x125): undefined reference to `hmac_sha256_vector' ../src/eap_common/eap_sim_common.o: In function `eap_sim_verify_mac_sha256': eap_sim_common.c:(.text+0xfd8): undefined reference to `hmac_sha256_vector' ../src/eap_common/eap_sim_common.o: In function `eap_sim_add_mac_sha256': eap_sim_common.c:(.text+0x1109): undefined reference to `hmac_sha256_vector' ../src/eap_common/eap_sim_common.o:eap_sim_common.c:(.text+0x132d): more undefined references to `hmac_sha256_vector' follow ../src/wps/wps_common.o: In function `wps_derive_psk': wps_common.c:(.text+0x568): undefined reference to `hmac_sha256' wps_common.c:(.text+0x59f): undefined reference to `hmac_sha256' ../src/wps/wps_attr_build.o: In function `wps_build_authenticator': wps_attr_build.c:(.text+0x888): undefined reference to `hmac_sha256_vector' ../src/wps/wps_attr_build.o: In function `wps_build_key_wrap_auth': wps_attr_build.c:(.text+0x10fa): undefined reference to `hmac_sha256' ../src/wps/wps_attr_process.o: In function `wps_process_authenticator': wps_attr_process.c:(.text+0x37a): undefined reference to `hmac_sha256_vector' ../src/wps/wps_attr_process.o: In function `wps_process_key_wrap_auth': wps_attr_process.c:(.text+0x462): undefined reference to `hmac_sha256' ../src/wps/wps_enrollee.o: In function `wps_enrollee_get_msg': wps_enrollee.c:(.text+0x8ee): undefined reference to `hmac_sha256_vector' wps_enrollee.c:(.text+0x999): undefined reference to `hmac_sha256_vector' ../src/wps/wps_enrollee.o: In function `wps_enrollee_process_msg': wps_enrollee.c:(.text+0x23b7): undefined reference to `hmac_sha256_vector' wps_enrollee.c:(.text+0x29bd): undefined reference to `hmac_sha256_vector' ../src/wps/wps_registrar.o: In function `wps_registrar_get_msg': wps_registrar.c:(.text+0x3b41): undefined reference to `hmac_sha256_vector' ../src/wps/wps_registrar.o:wps_registrar.c:(.text+0x3bf0): more undefined references to `hmac_sha256_vector' follow ../src/eapol_supp/eapol_supp_sm.o: In function `eapol_sm_get_status': eapol_supp_sm.c:(.text+0xed5): undefined reference to `eap_sm_get_status' ../src/eap_peer/eap_methods.o: In function `eap_peer_register_methods': eap_methods.c:(.text+0x6ca): undefined reference to `eap_peer_sake_register' eap_methods.c:(.text+0x6e7): undefined reference to `eap_peer_gpsk_register' ../src/crypto/sha256-prf.o: In function `sha256_prf_bits': sha256-prf.c:(.text+0x16c): undefined reference to `hmac_sha256_vector' sha256-prf.c:(.text+0x240): undefined reference to `hmac_sha256_vector' collect2: error: ld returned 1 exit status Makefile:1621: recipe for target 'wpa_supplicant' failed make: *** [wpa_supplicant] Error 1