Armadilloフォーラム

hostapdのversionについて

yoshizu

2014年10月14日 12時49分

yoshizuです
いつもお世話になっています

hostapを使って無線LANアクセスポイントの実現を試みています。

あるサイトに「アクセス・ポイントは hostapd 0.6.8 またはそれ以降のバージョンをサポートしている必要があります」との説明があります

現状利用している
atmark-dist-20140602、inux-3.4-at9の配下では

# hostapd -v
hostapd v0.5.10
とversionは低いです

hostapd 0.6.8以上にする方法をご教授願います。

以上よろしくお願い致します。

コメント

yoshizu

2014年10月15日 15時58分

yoshizuです

回答が得られないので
自分なりに進めていますが。

armadillo-840にGW-900D(USB無線LAN)の接続を想定して
GW-900Dがサポートするhostapdのコンパイルにトライしています。

GW-900DはLinuxのドライバーが公開されており
RTL8812AU_linux_v425.zipをダウンロードして展開し
その中のwpa_supplicant_hostapdフォルダーにある
wpa_supplicant_8_jb_4.3_rtw_r9301.20131011.tar.gz
をATDE5へ転送し展開します。

事前にATDE5でlibnl-1.1.4.tar.gzを展開しlibnlをインストールします

ATDE5で 
cdでwpa_supplicant_8_jb_4.3_rtw_r9301.20131011/hostapdへ移動し
make実施

makeが完了しhostapdが作成される。

このhostapdはATDEのdebian Linux上で実行可能なファイルのはずです

次ステップとしてはarmadillo-840上で実行可能なhostapdの作成が必要です。
しかしながら現状の知識では そのmake環境を作成する方法が判りません。

ご教授願います

以上よろしくお願い致します。

> yoshizuです
> いつもお世話になっています
>
> hostapを使って無線LANアクセスポイントの実現を試みています。
>
> あるサイトに「アクセス・ポイントは hostapd 0.6.8 またはそれ以降のバージョンをサポートしている必要があります」との説明があります
>
> 現状利用している
> atmark-dist-20140602、inux-3.4-at9の配下では
>
> # hostapd -v
> hostapd v0.5.10
> とversionは低いです
>
> hostapd 0.6.8以上にする方法をご教授願います。
>
> 以上よろしくお願い致します。
>
>

takagi.sifi

2014年10月15日 19時15分

高木@sifiです

以前別のARM用にクロスビルドした時の手順メモです。
armadillo向けではないですがビルドの手順としては参考になるかと思います。

kernel 3.9 と kernel 3.12 の環境でUSB無線LAN(WLI-UC-GNM2)と組み合わせて使っています。

==== 作業メモここから ====

事前準備
~/tmp で作業します
~/tmp に以下のソースコードを用意します

openssl-1.0.1e
libnl-3.2.21
hostapd-2.0

環境変数 CROSS_COMPILE を適宜設定する
以下のクロスコンパイラ名(arm-linux-gnueabi-gcc)は環境に合わせて設定する

opensslのビルド
MakefileのCC=arm-linux-gnueabi-gccに変更する
make を実行する
libssl.a が作成される

libnlのビルド
以下を実行する
./configure CC=${CROSS_COMPILE}gcc --host=arm-linux LD=${CROSS_COMPILE}ld --prefix=${HOME}/tmp/usr

make を実行する
make install を実行する

~/tmp/usr 以下にライブラリ等がインストールされる

hostapdのビルド
hostapd-2.0/hostapdに移動
defconfig を .config にコピー
.config に CONFIG_LIBNL32=y の記述を追加

Makefile に以下の記述を追加

CFLAGS += -I../../openssl-1.0.1e/include/
CFLAGS += -I../../libnl-3.2.21/include/

LDFLAGS += -L../../openssl-1.0.1e/
LDFLAGS += -L../../usr/lib

以下のコマンドでビルド

CC=arm-linux-gnueabi-gcc make

==== 作業メモここまで ====

> yoshizuです
>
> 回答が得られないので
> 自分なりに進めていますが。
>
> armadillo-840にGW-900D(USB無線LAN)の接続を想定して
> GW-900Dがサポートするhostapdのコンパイルにトライしています。
>
> GW-900DはLinuxのドライバーが公開されており
> RTL8812AU_linux_v425.zipをダウンロードして展開し
> その中のwpa_supplicant_hostapdフォルダーにある
> wpa_supplicant_8_jb_4.3_rtw_r9301.20131011.tar.gz
> をATDE5へ転送し展開します。
>
> 事前にATDE5でlibnl-1.1.4.tar.gzを展開しlibnlをインストールします
>
> ATDE5で 
> cdでwpa_supplicant_8_jb_4.3_rtw_r9301.20131011/hostapdへ移動し
> make実施
>
> makeが完了しhostapdが作成される。
>
> このhostapdはATDEのdebian Linux上で実行可能なファイルのはずです
>
> 次ステップとしてはarmadillo-840上で実行可能なhostapdの作成が必要です。
> しかしながら現状の知識では そのmake環境を作成する方法が判りません。
>
> ご教授願います
>
> 以上よろしくお願い致します。
>
>
>
> > yoshizuです
> > いつもお世話になっています
> >
> > hostapを使って無線LANアクセスポイントの実現を試みています。
> >
> > あるサイトに「アクセス・ポイントは hostapd 0.6.8 またはそれ以降のバージョンをサポートしている必要があります」との説明があります
> >
> > 現状利用している
> > atmark-dist-20140602、inux-3.4-at9の配下では
> >
> > # hostapd -v
> > hostapd v0.5.10
> > とversionは低いです
> >
> > hostapd 0.6.8以上にする方法をご教授願います。
> >
> > 以上よろしくお願い致します。
> >
> >

yoshizu

2014年10月16日 16時32分

高木様

yoshizuです
お世話になっています

意味が理解できたわけではありませんが
まずは教えて頂いた操作を確認しました。

openssl-1.0.1eのビルド成功

libnl-3.2.21のビルド成功

hostapd-2.0が失敗

で以下が失敗メッセージ

atmark@atde5:~/hostapd-2.0/hostapd$ CC=arm-linux-gnueabihf-gcc make
CC main.c
CC config_file.c
CC ../src/ap/hostapd.c
CC ../src/ap/wpa_auth_glue.c
CC ../src/ap/drv_callbacks.c
CC ../src/ap/ap_drv_ops.c
CC ../src/ap/utils.c
CC ../src/ap/authsrv.c
CC ../src/ap/ieee802_1x.c
CC ../src/ap/ap_config.c
CC ../src/ap/eap_user_db.c
CC ../src/ap/ieee802_11_auth.c
CC ../src/ap/sta_info.c
CC ../src/ap/wpa_auth.c
CC ../src/ap/tkip_countermeasures.c
CC ../src/ap/ap_mlme.c
CC ../src/ap/wpa_auth_ie.c
CC ../src/ap/preauth_auth.c
CC ../src/ap/pmksa_cache_auth.c
CC ../src/ap/ieee802_11_shared.c
CC ../src/ap/beacon.c
CC ../src/drivers/drivers.c
CC ../src/utils/eloop.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/ip_addr.c
CC ../src/common/ieee802_11_common.c
CC ../src/common/wpa_common.c
CC ../src/eapol_auth/eapol_auth_sm.c
CC dump_state.c
CC ../src/eapol_auth/eapol_auth_dump.c
CC ../src/radius/radius.c
CC ../src/radius/radius_client.c
CC ../src/radius/radius_das.c
CC ../src/ap/accounting.c
CC ../src/ap/vlan_init.c
CC ctrl_iface.c
CC ../src/ap/ctrl_iface_ap.c
CC ../src/crypto/md5.c
CC ../src/ap/iapp.c
CC ../src/ap/peerkey_auth.c
CC ../src/drivers/driver_hostap.c
CC ../src/drivers/driver_nl80211.c
CC ../src/utils/radiotap.c
CC ../src/drivers/netlink.c
CC ../src/drivers/linux_ioctl.c
CC ../src/drivers/rfkill.c
CC ../src/l2_packet/l2_packet_linux.c
CC ../src/eap_server/eap_server_md5.c
CC ../src/eap_server/eap_server_tls.c
CC ../src/eap_server/eap_server_peap.c
CC ../src/eap_common/eap_peap_common.c
CC ../src/eap_server/eap_server_ttls.c
CC ../src/eap_server/eap_server_mschapv2.c
CC ../src/eap_server/eap_server_gtc.c
CC eap_register.c
CC ../src/eap_server/eap_server.c
CC ../src/eap_common/eap_common.c
CC ../src/eap_server/eap_server_methods.c
CC ../src/eap_server/eap_server_identity.c
CC ../src/crypto/ms_funcs.c
CC ../src/eap_common/chap.c
CC ../src/eap_server/eap_server_tls_common.c
CC ../src/crypto/tls_openssl.c
CC ../src/crypto/crypto_openssl.c
CC ../src/crypto/aes-wrap.c
CC ../src/crypto/sha1-prf.c
CC ../src/crypto/sha1-tlsprf.c
CC ../src/crypto/random.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/drivers/driver_common.c
/usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-3
/usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-genl-3
collect2: ld returned 1 exit status
make: *** [hostapd] エラー 1

どのあたりの設定を確認すればよいでしょうか?
あるいは足らないモジュールがあるのでしょうか?

以上よろしくお願いいたします

> 高木@sifiです
>
> 以前別のARM用にクロスビルドした時の手順メモです。
> armadillo向けではないですがビルドの手順としては参考になるかと思います。
>
> kernel 3.9 と kernel 3.12 の環境でUSB無線LAN(WLI-UC-GNM2)と組み合わせて使っています。
>
> ==== 作業メモここから ====
>
> 事前準備
> ~/tmp で作業します
> ~/tmp に以下のソースコードを用意します
>
> openssl-1.0.1e
> libnl-3.2.21
> hostapd-2.0
>
> 環境変数 CROSS_COMPILE を適宜設定する
> 以下のクロスコンパイラ名(arm-linux-gnueabi-gcc)は環境に合わせて設定する
>
>
> opensslのビルド
> MakefileのCC=arm-linux-gnueabi-gccに変更する
> make を実行する
> libssl.a が作成される
>
>
> libnlのビルド
> 以下を実行する
> ./configure CC=${CROSS_COMPILE}gcc --host=arm-linux LD=${CROSS_COMPILE}ld --prefix=${HOME}/tmp/usr
>
> make を実行する
> make install を実行する
>
> ~/tmp/usr 以下にライブラリ等がインストールされる
>
>
> hostapdのビルド
> hostapd-2.0/hostapdに移動
> defconfig を .config にコピー
> .config に CONFIG_LIBNL32=y の記述を追加
>
> Makefile に以下の記述を追加
>
> CFLAGS += -I../../openssl-1.0.1e/include/
> CFLAGS += -I../../libnl-3.2.21/include/
>
> LDFLAGS += -L../../openssl-1.0.1e/
> LDFLAGS += -L../../usr/lib
>
> 以下のコマンドでビルド
>
> CC=arm-linux-gnueabi-gcc make
>
>
> ==== 作業メモここまで ====
>
>
> > yoshizuです
> >
> > 回答が得られないので
> > 自分なりに進めていますが。
> >
> > armadillo-840にGW-900D(USB無線LAN)の接続を想定して
> > GW-900Dがサポートするhostapdのコンパイルにトライしています。
> >
> > GW-900DはLinuxのドライバーが公開されており
> > RTL8812AU_linux_v425.zipをダウンロードして展開し
> > その中のwpa_supplicant_hostapdフォルダーにある
> > wpa_supplicant_8_jb_4.3_rtw_r9301.20131011.tar.gz
> > をATDE5へ転送し展開します。
> >
> > 事前にATDE5でlibnl-1.1.4.tar.gzを展開しlibnlをインストールします
> >
> > ATDE5で 
> > cdでwpa_supplicant_8_jb_4.3_rtw_r9301.20131011/hostapdへ移動し
> > make実施
> >
> > makeが完了しhostapdが作成される。
> >
> > このhostapdはATDEのdebian Linux上で実行可能なファイルのはずです
> >
> > 次ステップとしてはarmadillo-840上で実行可能なhostapdの作成が必要です。
> > しかしながら現状の知識では そのmake環境を作成する方法が判りません。
> >
> > ご教授願います
> >
> > 以上よろしくお願い致します。
> >
> >
> >
> > > yoshizuです
> > > いつもお世話になっています
> > >
> > > hostapを使って無線LANアクセスポイントの実現を試みています。
> > >
> > > あるサイトに「アクセス・ポイントは hostapd 0.6.8 またはそれ以降のバージョンをサポートしている必要があります」との説明があります
> > >
> > > 現状利用している
> > > atmark-dist-20140602、inux-3.4-at9の配下では
> > >
> > > # hostapd -v
> > > hostapd v0.5.10
> > > とversionは低いです
> > >
> > > hostapd 0.6.8以上にする方法をご教授願います。
> > >
> > > 以上よろしくお願い致します。
> > >
> > >

yoshizu

2014年10月17日 9時55分

高木様

yoshizuです
お世話になっています

ひとつ 私の操作上の誤りがありましたので
連絡します

事前準備で
~/tmp で作業します
~/tmp に以下のソースコードを用意します
とありましたが,誤って ~ で作業していました。

しかしながら、 今度は正しく ~/tmpで作業しましたが
以下hostapdのmakeで以下となっています

CC ../src/crypto/random.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/drivers/driver_common.c
/usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: skipping incompatible ../../usr/lib/libnl-3.so when searching for -lnl-3
/usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: skipping incompatible ../../usr/lib/libnl-3.a when searching for -lnl-3
/usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-3
/usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: skipping incompatible ../../usr/lib/libnl-genl-3.so when searching for -lnl-genl-3
/usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: skipping incompatible ../../usr/lib/libnl-genl-3.a when searching for -lnl-genl-3
/usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-genl-3
collect2: ld returned 1 exit status
make: *** [hostapd] エラー 1
atmark@atde5:~/tmp/hostapd-2.0/hostapd$

以上よろしくお願い致します
> 高木様
>
> yoshizuです
> お世話になっています
>
> 意味が理解できたわけではありませんが
> まずは教えて頂いた操作を確認しました。
>
> openssl-1.0.1eのビルド成功
>
> libnl-3.2.21のビルド成功
>
> hostapd-2.0が失敗
>
> で以下が失敗メッセージ
>
> atmark@atde5:~/hostapd-2.0/hostapd$ CC=arm-linux-gnueabihf-gcc make
> CC main.c
> CC config_file.c
> CC ../src/ap/hostapd.c
> CC ../src/ap/wpa_auth_glue.c
> CC ../src/ap/drv_callbacks.c
> CC ../src/ap/ap_drv_ops.c
> CC ../src/ap/utils.c
> CC ../src/ap/authsrv.c
> CC ../src/ap/ieee802_1x.c
> CC ../src/ap/ap_config.c
> CC ../src/ap/eap_user_db.c
> CC ../src/ap/ieee802_11_auth.c
> CC ../src/ap/sta_info.c
> CC ../src/ap/wpa_auth.c
> CC ../src/ap/tkip_countermeasures.c
> CC ../src/ap/ap_mlme.c
> CC ../src/ap/wpa_auth_ie.c
> CC ../src/ap/preauth_auth.c
> CC ../src/ap/pmksa_cache_auth.c
> CC ../src/ap/ieee802_11_shared.c
> CC ../src/ap/beacon.c
> CC ../src/drivers/drivers.c
> CC ../src/utils/eloop.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/ip_addr.c
> CC ../src/common/ieee802_11_common.c
> CC ../src/common/wpa_common.c
> CC ../src/eapol_auth/eapol_auth_sm.c
> CC dump_state.c
> CC ../src/eapol_auth/eapol_auth_dump.c
> CC ../src/radius/radius.c
> CC ../src/radius/radius_client.c
> CC ../src/radius/radius_das.c
> CC ../src/ap/accounting.c
> CC ../src/ap/vlan_init.c
> CC ctrl_iface.c
> CC ../src/ap/ctrl_iface_ap.c
> CC ../src/crypto/md5.c
> CC ../src/ap/iapp.c
> CC ../src/ap/peerkey_auth.c
> CC ../src/drivers/driver_hostap.c
> CC ../src/drivers/driver_nl80211.c
> CC ../src/utils/radiotap.c
> CC ../src/drivers/netlink.c
> CC ../src/drivers/linux_ioctl.c
> CC ../src/drivers/rfkill.c
> CC ../src/l2_packet/l2_packet_linux.c
> CC ../src/eap_server/eap_server_md5.c
> CC ../src/eap_server/eap_server_tls.c
> CC ../src/eap_server/eap_server_peap.c
> CC ../src/eap_common/eap_peap_common.c
> CC ../src/eap_server/eap_server_ttls.c
> CC ../src/eap_server/eap_server_mschapv2.c
> CC ../src/eap_server/eap_server_gtc.c
> CC eap_register.c
> CC ../src/eap_server/eap_server.c
> CC ../src/eap_common/eap_common.c
> CC ../src/eap_server/eap_server_methods.c
> CC ../src/eap_server/eap_server_identity.c
> CC ../src/crypto/ms_funcs.c
> CC ../src/eap_common/chap.c
> CC ../src/eap_server/eap_server_tls_common.c
> CC ../src/crypto/tls_openssl.c
> CC ../src/crypto/crypto_openssl.c
> CC ../src/crypto/aes-wrap.c
> CC ../src/crypto/sha1-prf.c
> CC ../src/crypto/sha1-tlsprf.c
> CC ../src/crypto/random.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/drivers/driver_common.c
> /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-3
> /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-genl-3
> collect2: ld returned 1 exit status
> make: *** [hostapd] エラー 1
>
>
> どのあたりの設定を確認すればよいでしょうか?
> あるいは足らないモジュールがあるのでしょうか?
>
> 以上よろしくお願いいたします
>
>
> > 高木@sifiです
> >
> > 以前別のARM用にクロスビルドした時の手順メモです。
> > armadillo向けではないですがビルドの手順としては参考になるかと思います。
> >
> > kernel 3.9 と kernel 3.12 の環境でUSB無線LAN(WLI-UC-GNM2)と組み合わせて使っています。
> >
> > ==== 作業メモここから ====
> >
> > 事前準備
> > ~/tmp で作業します
> > ~/tmp に以下のソースコードを用意します
> >
> > openssl-1.0.1e
> > libnl-3.2.21
> > hostapd-2.0
> >
> > 環境変数 CROSS_COMPILE を適宜設定する
> > 以下のクロスコンパイラ名(arm-linux-gnueabi-gcc)は環境に合わせて設定する
> >
> >
> > opensslのビルド
> > MakefileのCC=arm-linux-gnueabi-gccに変更する
> > make を実行する
> > libssl.a が作成される
> >
> >
> > libnlのビルド
> > 以下を実行する
> > ./configure CC=${CROSS_COMPILE}gcc --host=arm-linux LD=${CROSS_COMPILE}ld --prefix=${HOME}/tmp/usr
> >
> > make を実行する
> > make install を実行する
> >
> > ~/tmp/usr 以下にライブラリ等がインストールされる
> >
> >
> > hostapdのビルド
> > hostapd-2.0/hostapdに移動
> > defconfig を .config にコピー
> > .config に CONFIG_LIBNL32=y の記述を追加
> >
> > Makefile に以下の記述を追加
> >
> > CFLAGS += -I../../openssl-1.0.1e/include/
> > CFLAGS += -I../../libnl-3.2.21/include/
> >
> > LDFLAGS += -L../../openssl-1.0.1e/
> > LDFLAGS += -L../../usr/lib
> >
> > 以下のコマンドでビルド
> >
> > CC=arm-linux-gnueabi-gcc make
> >
> >
> > ==== 作業メモここまで ====
> >
> >
> > > yoshizuです
> > >
> > > 回答が得られないので
> > > 自分なりに進めていますが。
> > >
> > > armadillo-840にGW-900D(USB無線LAN)の接続を想定して
> > > GW-900Dがサポートするhostapdのコンパイルにトライしています。
> > >
> > > GW-900DはLinuxのドライバーが公開されており
> > > RTL8812AU_linux_v425.zipをダウンロードして展開し
> > > その中のwpa_supplicant_hostapdフォルダーにある
> > > wpa_supplicant_8_jb_4.3_rtw_r9301.20131011.tar.gz
> > > をATDE5へ転送し展開します。
> > >
> > > 事前にATDE5でlibnl-1.1.4.tar.gzを展開しlibnlをインストールします
> > >
> > > ATDE5で 
> > > cdでwpa_supplicant_8_jb_4.3_rtw_r9301.20131011/hostapdへ移動し
> > > make実施
> > >
> > > makeが完了しhostapdが作成される。
> > >
> > > このhostapdはATDEのdebian Linux上で実行可能なファイルのはずです
> > >
> > > 次ステップとしてはarmadillo-840上で実行可能なhostapdの作成が必要です。
> > > しかしながら現状の知識では そのmake環境を作成する方法が判りません。
> > >
> > > ご教授願います
> > >
> > > 以上よろしくお願い致します。
> > >
> > >
> > >
> > > > yoshizuです
> > > > いつもお世話になっています
> > > >
> > > > hostapを使って無線LANアクセスポイントの実現を試みています。
> > > >
> > > > あるサイトに「アクセス・ポイントは hostapd 0.6.8 またはそれ以降のバージョンをサポートしている必要があります」との説明があります
> > > >
> > > > 現状利用している
> > > > atmark-dist-20140602、inux-3.4-at9の配下では
> > > >
> > > > # hostapd -v
> > > > hostapd v0.5.10
> > > > とversionは低いです
> > > >
> > > > hostapd 0.6.8以上にする方法をご教授願います。
> > > >
> > > > 以上よろしくお願い致します。
> > > >
> > > >

takagi.sifi

2014年10月17日 10時07分

高木@sifiです

> /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-3
> /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-genl-3
> collect2: ld returned 1 exit status

このエラーより libnl-3 と libnl-genl-3 が見つかっていないことがわかります。
libnl-3.2.21 をビルドしたあと、 make install を実行しましたでしょうか。

作業メモの通り実行していると ~/tmp/usr/lib にlibnl-3.so や libnl-genl-3.so などのライブラリファイルがあるはずです。
ライブラリファイルがあるけれど上記のエラーになる場合はMakefileの LDFLAGS += -L../../usr/lib の記述を見直してみてください。
また CC=arm-linux-gnueabi-gcc make V=1 でビルドを実行するともう少し詳しいログが出力されます。

> 高木様
>
> yoshizuです
> お世話になっています
>
> 意味が理解できたわけではありませんが
> まずは教えて頂いた操作を確認しました。
>
> openssl-1.0.1eのビルド成功
>
> libnl-3.2.21のビルド成功
>
> hostapd-2.0が失敗
>
> で以下が失敗メッセージ
>
> atmark@atde5:~/hostapd-2.0/hostapd$ CC=arm-linux-gnueabihf-gcc make
> CC main.c
> CC config_file.c
> CC ../src/ap/hostapd.c
> CC ../src/ap/wpa_auth_glue.c
> CC ../src/ap/drv_callbacks.c
> CC ../src/ap/ap_drv_ops.c
> CC ../src/ap/utils.c
> CC ../src/ap/authsrv.c
> CC ../src/ap/ieee802_1x.c
> CC ../src/ap/ap_config.c
> CC ../src/ap/eap_user_db.c
> CC ../src/ap/ieee802_11_auth.c
> CC ../src/ap/sta_info.c
> CC ../src/ap/wpa_auth.c
> CC ../src/ap/tkip_countermeasures.c
> CC ../src/ap/ap_mlme.c
> CC ../src/ap/wpa_auth_ie.c
> CC ../src/ap/preauth_auth.c
> CC ../src/ap/pmksa_cache_auth.c
> CC ../src/ap/ieee802_11_shared.c
> CC ../src/ap/beacon.c
> CC ../src/drivers/drivers.c
> CC ../src/utils/eloop.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/ip_addr.c
> CC ../src/common/ieee802_11_common.c
> CC ../src/common/wpa_common.c
> CC ../src/eapol_auth/eapol_auth_sm.c
> CC dump_state.c
> CC ../src/eapol_auth/eapol_auth_dump.c
> CC ../src/radius/radius.c
> CC ../src/radius/radius_client.c
> CC ../src/radius/radius_das.c
> CC ../src/ap/accounting.c
> CC ../src/ap/vlan_init.c
> CC ctrl_iface.c
> CC ../src/ap/ctrl_iface_ap.c
> CC ../src/crypto/md5.c
> CC ../src/ap/iapp.c
> CC ../src/ap/peerkey_auth.c
> CC ../src/drivers/driver_hostap.c
> CC ../src/drivers/driver_nl80211.c
> CC ../src/utils/radiotap.c
> CC ../src/drivers/netlink.c
> CC ../src/drivers/linux_ioctl.c
> CC ../src/drivers/rfkill.c
> CC ../src/l2_packet/l2_packet_linux.c
> CC ../src/eap_server/eap_server_md5.c
> CC ../src/eap_server/eap_server_tls.c
> CC ../src/eap_server/eap_server_peap.c
> CC ../src/eap_common/eap_peap_common.c
> CC ../src/eap_server/eap_server_ttls.c
> CC ../src/eap_server/eap_server_mschapv2.c
> CC ../src/eap_server/eap_server_gtc.c
> CC eap_register.c
> CC ../src/eap_server/eap_server.c
> CC ../src/eap_common/eap_common.c
> CC ../src/eap_server/eap_server_methods.c
> CC ../src/eap_server/eap_server_identity.c
> CC ../src/crypto/ms_funcs.c
> CC ../src/eap_common/chap.c
> CC ../src/eap_server/eap_server_tls_common.c
> CC ../src/crypto/tls_openssl.c
> CC ../src/crypto/crypto_openssl.c
> CC ../src/crypto/aes-wrap.c
> CC ../src/crypto/sha1-prf.c
> CC ../src/crypto/sha1-tlsprf.c
> CC ../src/crypto/random.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/drivers/driver_common.c
> /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-3
> /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-genl-3
> collect2: ld returned 1 exit status
> make: *** [hostapd] エラー 1
>
>
> どのあたりの設定を確認すればよいでしょうか?
> あるいは足らないモジュールがあるのでしょうか?
>
> 以上よろしくお願いいたします
>
>
> > 高木@sifiです
> >
> > 以前別のARM用にクロスビルドした時の手順メモです。
> > armadillo向けではないですがビルドの手順としては参考になるかと思います。
> >
> > kernel 3.9 と kernel 3.12 の環境でUSB無線LAN(WLI-UC-GNM2)と組み合わせて使っています。
> >
> > ==== 作業メモここから ====
> >
> > 事前準備
> > ~/tmp で作業します
> > ~/tmp に以下のソースコードを用意します
> >
> > openssl-1.0.1e
> > libnl-3.2.21
> > hostapd-2.0
> >
> > 環境変数 CROSS_COMPILE を適宜設定する
> > 以下のクロスコンパイラ名(arm-linux-gnueabi-gcc)は環境に合わせて設定する
> >
> >
> > opensslのビルド
> > MakefileのCC=arm-linux-gnueabi-gccに変更する
> > make を実行する
> > libssl.a が作成される
> >
> >
> > libnlのビルド
> > 以下を実行する
> > ./configure CC=${CROSS_COMPILE}gcc --host=arm-linux LD=${CROSS_COMPILE}ld --prefix=${HOME}/tmp/usr
> >
> > make を実行する
> > make install を実行する
> >
> > ~/tmp/usr 以下にライブラリ等がインストールされる
> >
> >
> > hostapdのビルド
> > hostapd-2.0/hostapdに移動
> > defconfig を .config にコピー
> > .config に CONFIG_LIBNL32=y の記述を追加
> >
> > Makefile に以下の記述を追加
> >
> > CFLAGS += -I../../openssl-1.0.1e/include/
> > CFLAGS += -I../../libnl-3.2.21/include/
> >
> > LDFLAGS += -L../../openssl-1.0.1e/
> > LDFLAGS += -L../../usr/lib
> >
> > 以下のコマンドでビルド
> >
> > CC=arm-linux-gnueabi-gcc make
> >
> >
> > ==== 作業メモここまで ====
> >
> >
> > > yoshizuです
> > >
> > > 回答が得られないので
> > > 自分なりに進めていますが。
> > >
> > > armadillo-840にGW-900D(USB無線LAN)の接続を想定して
> > > GW-900Dがサポートするhostapdのコンパイルにトライしています。
> > >
> > > GW-900DはLinuxのドライバーが公開されており
> > > RTL8812AU_linux_v425.zipをダウンロードして展開し
> > > その中のwpa_supplicant_hostapdフォルダーにある
> > > wpa_supplicant_8_jb_4.3_rtw_r9301.20131011.tar.gz
> > > をATDE5へ転送し展開します。
> > >
> > > 事前にATDE5でlibnl-1.1.4.tar.gzを展開しlibnlをインストールします
> > >
> > > ATDE5で 
> > > cdでwpa_supplicant_8_jb_4.3_rtw_r9301.20131011/hostapdへ移動し
> > > make実施
> > >
> > > makeが完了しhostapdが作成される。
> > >
> > > このhostapdはATDEのdebian Linux上で実行可能なファイルのはずです
> > >
> > > 次ステップとしてはarmadillo-840上で実行可能なhostapdの作成が必要です。
> > > しかしながら現状の知識では そのmake環境を作成する方法が判りません。
> > >
> > > ご教授願います
> > >
> > > 以上よろしくお願い致します。
> > >
> > >
> > >
> > > > yoshizuです
> > > > いつもお世話になっています
> > > >
> > > > hostapを使って無線LANアクセスポイントの実現を試みています。
> > > >
> > > > あるサイトに「アクセス・ポイントは hostapd 0.6.8 またはそれ以降のバージョンをサポートしている必要があります」との説明があります
> > > >
> > > > 現状利用している
> > > > atmark-dist-20140602、inux-3.4-at9の配下では
> > > >
> > > > # hostapd -v
> > > > hostapd v0.5.10
> > > > とversionは低いです
> > > >
> > > > hostapd 0.6.8以上にする方法をご教授願います。
> > > >
> > > > 以上よろしくお願い致します。
> > > >
> > > >

yoshizu

2014年10月17日 11時03分

高木様

yoshizuです
お世話になっています

すみません
libnlのビルド時、configureのCROSS_COMPILEの指定をしていませんでした

hostapdのmakeで、hostapdのバイナリが完成しました。

対応ありがとうございます

> 高木@sifiです
>
> > /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-3
> > /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-genl-3
> > collect2: ld returned 1 exit status
>
> このエラーより libnl-3 と libnl-genl-3 が見つかっていないことがわかります。
> libnl-3.2.21 をビルドしたあと、 make install を実行しましたでしょうか。
>
> 作業メモの通り実行していると ~/tmp/usr/lib にlibnl-3.so や libnl-genl-3.so などのライブラリファイルがあるはずです。
> ライブラリファイルがあるけれど上記のエラーになる場合はMakefileの LDFLAGS += -L../../usr/lib の記述を見直してみてください。
> また CC=arm-linux-gnueabi-gcc make V=1 でビルドを実行するともう少し詳しいログが出力されます。
>
>
> > 高木様
> >
> > yoshizuです
> > お世話になっています
> >
> > 意味が理解できたわけではありませんが
> > まずは教えて頂いた操作を確認しました。
> >
> > openssl-1.0.1eのビルド成功
> >
> > libnl-3.2.21のビルド成功
> >
> > hostapd-2.0が失敗
> >
> > で以下が失敗メッセージ
> >
> > atmark@atde5:~/hostapd-2.0/hostapd$ CC=arm-linux-gnueabihf-gcc make
> > CC main.c
> > CC config_file.c
> > CC ../src/ap/hostapd.c
> > CC ../src/ap/wpa_auth_glue.c
> > CC ../src/ap/drv_callbacks.c
> > CC ../src/ap/ap_drv_ops.c
> > CC ../src/ap/utils.c
> > CC ../src/ap/authsrv.c
> > CC ../src/ap/ieee802_1x.c
> > CC ../src/ap/ap_config.c
> > CC ../src/ap/eap_user_db.c
> > CC ../src/ap/ieee802_11_auth.c
> > CC ../src/ap/sta_info.c
> > CC ../src/ap/wpa_auth.c
> > CC ../src/ap/tkip_countermeasures.c
> > CC ../src/ap/ap_mlme.c
> > CC ../src/ap/wpa_auth_ie.c
> > CC ../src/ap/preauth_auth.c
> > CC ../src/ap/pmksa_cache_auth.c
> > CC ../src/ap/ieee802_11_shared.c
> > CC ../src/ap/beacon.c
> > CC ../src/drivers/drivers.c
> > CC ../src/utils/eloop.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/ip_addr.c
> > CC ../src/common/ieee802_11_common.c
> > CC ../src/common/wpa_common.c
> > CC ../src/eapol_auth/eapol_auth_sm.c
> > CC dump_state.c
> > CC ../src/eapol_auth/eapol_auth_dump.c
> > CC ../src/radius/radius.c
> > CC ../src/radius/radius_client.c
> > CC ../src/radius/radius_das.c
> > CC ../src/ap/accounting.c
> > CC ../src/ap/vlan_init.c
> > CC ctrl_iface.c
> > CC ../src/ap/ctrl_iface_ap.c
> > CC ../src/crypto/md5.c
> > CC ../src/ap/iapp.c
> > CC ../src/ap/peerkey_auth.c
> > CC ../src/drivers/driver_hostap.c
> > CC ../src/drivers/driver_nl80211.c
> > CC ../src/utils/radiotap.c
> > CC ../src/drivers/netlink.c
> > CC ../src/drivers/linux_ioctl.c
> > CC ../src/drivers/rfkill.c
> > CC ../src/l2_packet/l2_packet_linux.c
> > CC ../src/eap_server/eap_server_md5.c
> > CC ../src/eap_server/eap_server_tls.c
> > CC ../src/eap_server/eap_server_peap.c
> > CC ../src/eap_common/eap_peap_common.c
> > CC ../src/eap_server/eap_server_ttls.c
> > CC ../src/eap_server/eap_server_mschapv2.c
> > CC ../src/eap_server/eap_server_gtc.c
> > CC eap_register.c
> > CC ../src/eap_server/eap_server.c
> > CC ../src/eap_common/eap_common.c
> > CC ../src/eap_server/eap_server_methods.c
> > CC ../src/eap_server/eap_server_identity.c
> > CC ../src/crypto/ms_funcs.c
> > CC ../src/eap_common/chap.c
> > CC ../src/eap_server/eap_server_tls_common.c
> > CC ../src/crypto/tls_openssl.c
> > CC ../src/crypto/crypto_openssl.c
> > CC ../src/crypto/aes-wrap.c
> > CC ../src/crypto/sha1-prf.c
> > CC ../src/crypto/sha1-tlsprf.c
> > CC ../src/crypto/random.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/drivers/driver_common.c
> > /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-3
> > /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-genl-3
> > collect2: ld returned 1 exit status
> > make: *** [hostapd] エラー 1
> >
> >
> > どのあたりの設定を確認すればよいでしょうか?
> > あるいは足らないモジュールがあるのでしょうか?
> >
> > 以上よろしくお願いいたします
> >
> >
> > > 高木@sifiです
> > >
> > > 以前別のARM用にクロスビルドした時の手順メモです。
> > > armadillo向けではないですがビルドの手順としては参考になるかと思います。
> > >
> > > kernel 3.9 と kernel 3.12 の環境でUSB無線LAN(WLI-UC-GNM2)と組み合わせて使っています。
> > >
> > > ==== 作業メモここから ====
> > >
> > > 事前準備
> > > ~/tmp で作業します
> > > ~/tmp に以下のソースコードを用意します
> > >
> > > openssl-1.0.1e
> > > libnl-3.2.21
> > > hostapd-2.0
> > >
> > > 環境変数 CROSS_COMPILE を適宜設定する
> > > 以下のクロスコンパイラ名(arm-linux-gnueabi-gcc)は環境に合わせて設定する
> > >
> > >
> > > opensslのビルド
> > > MakefileのCC=arm-linux-gnueabi-gccに変更する
> > > make を実行する
> > > libssl.a が作成される
> > >
> > >
> > > libnlのビルド
> > > 以下を実行する
> > > ./configure CC=${CROSS_COMPILE}gcc --host=arm-linux LD=${CROSS_COMPILE}ld --prefix=${HOME}/tmp/usr
> > >
> > > make を実行する
> > > make install を実行する
> > >
> > > ~/tmp/usr 以下にライブラリ等がインストールされる
> > >
> > >
> > > hostapdのビルド
> > > hostapd-2.0/hostapdに移動
> > > defconfig を .config にコピー
> > > .config に CONFIG_LIBNL32=y の記述を追加
> > >
> > > Makefile に以下の記述を追加
> > >
> > > CFLAGS += -I../../openssl-1.0.1e/include/
> > > CFLAGS += -I../../libnl-3.2.21/include/
> > >
> > > LDFLAGS += -L../../openssl-1.0.1e/
> > > LDFLAGS += -L../../usr/lib
> > >
> > > 以下のコマンドでビルド
> > >
> > > CC=arm-linux-gnueabi-gcc make
> > >
> > >
> > > ==== 作業メモここまで ====
> > >
> > >
> > > > yoshizuです
> > > >
> > > > 回答が得られないので
> > > > 自分なりに進めていますが。
> > > >
> > > > armadillo-840にGW-900D(USB無線LAN)の接続を想定して
> > > > GW-900Dがサポートするhostapdのコンパイルにトライしています。
> > > >
> > > > GW-900DはLinuxのドライバーが公開されており
> > > > RTL8812AU_linux_v425.zipをダウンロードして展開し
> > > > その中のwpa_supplicant_hostapdフォルダーにある
> > > > wpa_supplicant_8_jb_4.3_rtw_r9301.20131011.tar.gz
> > > > をATDE5へ転送し展開します。
> > > >
> > > > 事前にATDE5でlibnl-1.1.4.tar.gzを展開しlibnlをインストールします
> > > >
> > > > ATDE5で 
> > > > cdでwpa_supplicant_8_jb_4.3_rtw_r9301.20131011/hostapdへ移動し
> > > > make実施
> > > >
> > > > makeが完了しhostapdが作成される。
> > > >
> > > > このhostapdはATDEのdebian Linux上で実行可能なファイルのはずです
> > > >
> > > > 次ステップとしてはarmadillo-840上で実行可能なhostapdの作成が必要です。
> > > > しかしながら現状の知識では そのmake環境を作成する方法が判りません。
> > > >
> > > > ご教授願います
> > > >
> > > > 以上よろしくお願い致します。
> > > >
> > > >
> > > >
> > > > > yoshizuです
> > > > > いつもお世話になっています
> > > > >
> > > > > hostapを使って無線LANアクセスポイントの実現を試みています。
> > > > >
> > > > > あるサイトに「アクセス・ポイントは hostapd 0.6.8 またはそれ以降のバージョンをサポートしている必要があります」との説明があります
> > > > >
> > > > > 現状利用している
> > > > > atmark-dist-20140602、inux-3.4-at9の配下では
> > > > >
> > > > > # hostapd -v
> > > > > hostapd v0.5.10
> > > > > とversionは低いです
> > > > >
> > > > > hostapd 0.6.8以上にする方法をご教授願います。
> > > > >
> > > > > 以上よろしくお願い致します。
> > > > >
> > > > >

yoshizu

2014年10月17日 11時54分

高木様

yoshizuです
お世話になっています

おかげさまで、hostapdのバイナリが出来上がったので
早速、armadillo-840へ転送して、実行したところ
以下のエラーが発生しました

# ./hostapd
./hostapd: error while loading shared libraries: libnl-3.so.200: cannot open shared object file: No such file or directory

何が考えられますでしょうか?

以上よろしくお願い致します。

> 高木様
>
> yoshizuです
> お世話になっています
>
> すみません
> libnlのビルド時、configureのCROSS_COMPILEの指定をしていませんでした
>
> hostapdのmakeで、hostapdのバイナリが完成しました。
>
> 対応ありがとうございます
>
>
>
> > 高木@sifiです
> >
> > > /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-3
> > > /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-genl-3
> > > collect2: ld returned 1 exit status
> >
> > このエラーより libnl-3 と libnl-genl-3 が見つかっていないことがわかります。
> > libnl-3.2.21 をビルドしたあと、 make install を実行しましたでしょうか。
> >
> > 作業メモの通り実行していると ~/tmp/usr/lib にlibnl-3.so や libnl-genl-3.so などのライブラリファイルがあるはずです。
> > ライブラリファイルがあるけれど上記のエラーになる場合はMakefileの LDFLAGS += -L../../usr/lib の記述を見直してみてください。
> > また CC=arm-linux-gnueabi-gcc make V=1 でビルドを実行するともう少し詳しいログが出力されます。
> >
> >
> > > 高木様
> > >
> > > yoshizuです
> > > お世話になっています
> > >
> > > 意味が理解できたわけではありませんが
> > > まずは教えて頂いた操作を確認しました。
> > >
> > > openssl-1.0.1eのビルド成功
> > >
> > > libnl-3.2.21のビルド成功
> > >
> > > hostapd-2.0が失敗
> > >
> > > で以下が失敗メッセージ
> > >
> > > atmark@atde5:~/hostapd-2.0/hostapd$ CC=arm-linux-gnueabihf-gcc make
> > > CC main.c
> > > CC config_file.c
> > > CC ../src/ap/hostapd.c
> > > CC ../src/ap/wpa_auth_glue.c
> > > CC ../src/ap/drv_callbacks.c
> > > CC ../src/ap/ap_drv_ops.c
> > > CC ../src/ap/utils.c
> > > CC ../src/ap/authsrv.c
> > > CC ../src/ap/ieee802_1x.c
> > > CC ../src/ap/ap_config.c
> > > CC ../src/ap/eap_user_db.c
> > > CC ../src/ap/ieee802_11_auth.c
> > > CC ../src/ap/sta_info.c
> > > CC ../src/ap/wpa_auth.c
> > > CC ../src/ap/tkip_countermeasures.c
> > > CC ../src/ap/ap_mlme.c
> > > CC ../src/ap/wpa_auth_ie.c
> > > CC ../src/ap/preauth_auth.c
> > > CC ../src/ap/pmksa_cache_auth.c
> > > CC ../src/ap/ieee802_11_shared.c
> > > CC ../src/ap/beacon.c
> > > CC ../src/drivers/drivers.c
> > > CC ../src/utils/eloop.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/ip_addr.c
> > > CC ../src/common/ieee802_11_common.c
> > > CC ../src/common/wpa_common.c
> > > CC ../src/eapol_auth/eapol_auth_sm.c
> > > CC dump_state.c
> > > CC ../src/eapol_auth/eapol_auth_dump.c
> > > CC ../src/radius/radius.c
> > > CC ../src/radius/radius_client.c
> > > CC ../src/radius/radius_das.c
> > > CC ../src/ap/accounting.c
> > > CC ../src/ap/vlan_init.c
> > > CC ctrl_iface.c
> > > CC ../src/ap/ctrl_iface_ap.c
> > > CC ../src/crypto/md5.c
> > > CC ../src/ap/iapp.c
> > > CC ../src/ap/peerkey_auth.c
> > > CC ../src/drivers/driver_hostap.c
> > > CC ../src/drivers/driver_nl80211.c
> > > CC ../src/utils/radiotap.c
> > > CC ../src/drivers/netlink.c
> > > CC ../src/drivers/linux_ioctl.c
> > > CC ../src/drivers/rfkill.c
> > > CC ../src/l2_packet/l2_packet_linux.c
> > > CC ../src/eap_server/eap_server_md5.c
> > > CC ../src/eap_server/eap_server_tls.c
> > > CC ../src/eap_server/eap_server_peap.c
> > > CC ../src/eap_common/eap_peap_common.c
> > > CC ../src/eap_server/eap_server_ttls.c
> > > CC ../src/eap_server/eap_server_mschapv2.c
> > > CC ../src/eap_server/eap_server_gtc.c
> > > CC eap_register.c
> > > CC ../src/eap_server/eap_server.c
> > > CC ../src/eap_common/eap_common.c
> > > CC ../src/eap_server/eap_server_methods.c
> > > CC ../src/eap_server/eap_server_identity.c
> > > CC ../src/crypto/ms_funcs.c
> > > CC ../src/eap_common/chap.c
> > > CC ../src/eap_server/eap_server_tls_common.c
> > > CC ../src/crypto/tls_openssl.c
> > > CC ../src/crypto/crypto_openssl.c
> > > CC ../src/crypto/aes-wrap.c
> > > CC ../src/crypto/sha1-prf.c
> > > CC ../src/crypto/sha1-tlsprf.c
> > > CC ../src/crypto/random.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/drivers/driver_common.c
> > > /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-3
> > > /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-genl-3
> > > collect2: ld returned 1 exit status
> > > make: *** [hostapd] エラー 1
> > >
> > >
> > > どのあたりの設定を確認すればよいでしょうか?
> > > あるいは足らないモジュールがあるのでしょうか?
> > >
> > > 以上よろしくお願いいたします
> > >
> > >
> > > > 高木@sifiです
> > > >
> > > > 以前別のARM用にクロスビルドした時の手順メモです。
> > > > armadillo向けではないですがビルドの手順としては参考になるかと思います。
> > > >
> > > > kernel 3.9 と kernel 3.12 の環境でUSB無線LAN(WLI-UC-GNM2)と組み合わせて使っています。
> > > >
> > > > ==== 作業メモここから ====
> > > >
> > > > 事前準備
> > > > ~/tmp で作業します
> > > > ~/tmp に以下のソースコードを用意します
> > > >
> > > > openssl-1.0.1e
> > > > libnl-3.2.21
> > > > hostapd-2.0
> > > >
> > > > 環境変数 CROSS_COMPILE を適宜設定する
> > > > 以下のクロスコンパイラ名(arm-linux-gnueabi-gcc)は環境に合わせて設定する
> > > >
> > > >
> > > > opensslのビルド
> > > > MakefileのCC=arm-linux-gnueabi-gccに変更する
> > > > make を実行する
> > > > libssl.a が作成される
> > > >
> > > >
> > > > libnlのビルド
> > > > 以下を実行する
> > > > ./configure CC=${CROSS_COMPILE}gcc --host=arm-linux LD=${CROSS_COMPILE}ld --prefix=${HOME}/tmp/usr
> > > >
> > > > make を実行する
> > > > make install を実行する
> > > >
> > > > ~/tmp/usr 以下にライブラリ等がインストールされる
> > > >
> > > >
> > > > hostapdのビルド
> > > > hostapd-2.0/hostapdに移動
> > > > defconfig を .config にコピー
> > > > .config に CONFIG_LIBNL32=y の記述を追加
> > > >
> > > > Makefile に以下の記述を追加
> > > >
> > > > CFLAGS += -I../../openssl-1.0.1e/include/
> > > > CFLAGS += -I../../libnl-3.2.21/include/
> > > >
> > > > LDFLAGS += -L../../openssl-1.0.1e/
> > > > LDFLAGS += -L../../usr/lib
> > > >
> > > > 以下のコマンドでビルド
> > > >
> > > > CC=arm-linux-gnueabi-gcc make
> > > >
> > > >
> > > > ==== 作業メモここまで ====
> > > >
> > > >
> > > > > yoshizuです
> > > > >
> > > > > 回答が得られないので
> > > > > 自分なりに進めていますが。
> > > > >
> > > > > armadillo-840にGW-900D(USB無線LAN)の接続を想定して
> > > > > GW-900Dがサポートするhostapdのコンパイルにトライしています。
> > > > >
> > > > > GW-900DはLinuxのドライバーが公開されており
> > > > > RTL8812AU_linux_v425.zipをダウンロードして展開し
> > > > > その中のwpa_supplicant_hostapdフォルダーにある
> > > > > wpa_supplicant_8_jb_4.3_rtw_r9301.20131011.tar.gz
> > > > > をATDE5へ転送し展開します。
> > > > >
> > > > > 事前にATDE5でlibnl-1.1.4.tar.gzを展開しlibnlをインストールします
> > > > >
> > > > > ATDE5で 
> > > > > cdでwpa_supplicant_8_jb_4.3_rtw_r9301.20131011/hostapdへ移動し
> > > > > make実施
> > > > >
> > > > > makeが完了しhostapdが作成される。
> > > > >
> > > > > このhostapdはATDEのdebian Linux上で実行可能なファイルのはずです
> > > > >
> > > > > 次ステップとしてはarmadillo-840上で実行可能なhostapdの作成が必要です。
> > > > > しかしながら現状の知識では そのmake環境を作成する方法が判りません。
> > > > >
> > > > > ご教授願います
> > > > >
> > > > > 以上よろしくお願い致します。
> > > > >
> > > > >
> > > > >
> > > > > > yoshizuです
> > > > > > いつもお世話になっています
> > > > > >
> > > > > > hostapを使って無線LANアクセスポイントの実現を試みています。
> > > > > >
> > > > > > あるサイトに「アクセス・ポイントは hostapd 0.6.8 またはそれ以降のバージョンをサポートしている必要があります」との説明があります
> > > > > >
> > > > > > 現状利用している
> > > > > > atmark-dist-20140602、inux-3.4-at9の配下では
> > > > > >
> > > > > > # hostapd -v
> > > > > > hostapd v0.5.10
> > > > > > とversionは低いです
> > > > > >
> > > > > > hostapd 0.6.8以上にする方法をご教授願います。
> > > > > >
> > > > > > 以上よろしくお願い致します。
> > > > > >
> > > > > >

takagi.sifi

2014年10月17日 13時08分

高木@sifiです

> ./hostapd: error while loading shared libraries: libnl-3.so.200: cannot open shared object file: No such file or directory

実行環境(armadillo)にlibnl-3.so.200がないためです。

hostapdのビルドでは各ライブラリを共有ライブラリとしてリンクしていますので
各ライブラリは実行時にロードされます。
~/tmp/usr/lib/ にあるライブラリを実行環境の /usr/lib/ にコピーしてあげれば動くと思います。

別の方法としてlibnlをスタティックリンクしてhostapdをビルド
 ~/tmp/usr/lib にある共有ライブラリを削除する(~/tmp/usr/lib で rm *.so* を実行する)
 hostapdのMakefielを修正
  Makefileに以下の行をさらに追加する
  LDFLAGS += -lpthread -lm

 hostapdを再ビルドする
  make clean
  CC=arm-linux-gnueabi-gcc make

libnlをスタティックリンクしているため~/tmp/usr/lib/ のファイルを実行環境にコピーしなくても動作すると思います

以上、よろしくお願いします。

> 高木様
>
> yoshizuです
> お世話になっています
>
> おかげさまで、hostapdのバイナリが出来上がったので
> 早速、armadillo-840へ転送して、実行したところ
> 以下のエラーが発生しました
>
> # ./hostapd
> ./hostapd: error while loading shared libraries: libnl-3.so.200: cannot open shared object file: No such file or directory
>
> 何が考えられますでしょうか?
>
> 以上よろしくお願い致します。
>
>
>
> > 高木様
> >
> > yoshizuです
> > お世話になっています
> >
> > すみません
> > libnlのビルド時、configureのCROSS_COMPILEの指定をしていませんでした
> >
> > hostapdのmakeで、hostapdのバイナリが完成しました。
> >
> > 対応ありがとうございます
> >
> >
> >
> > > 高木@sifiです
> > >
> > > > /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-3
> > > > /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-genl-3
> > > > collect2: ld returned 1 exit status
> > >
> > > このエラーより libnl-3 と libnl-genl-3 が見つかっていないことがわかります。
> > > libnl-3.2.21 をビルドしたあと、 make install を実行しましたでしょうか。
> > >
> > > 作業メモの通り実行していると ~/tmp/usr/lib にlibnl-3.so や libnl-genl-3.so などのライブラリファイルがあるはずです。
> > > ライブラリファイルがあるけれど上記のエラーになる場合はMakefileの LDFLAGS += -L../../usr/lib の記述を見直してみてください。
> > > また CC=arm-linux-gnueabi-gcc make V=1 でビルドを実行するともう少し詳しいログが出力されます。
> > >
> > >
> > > > 高木様
> > > >
> > > > yoshizuです
> > > > お世話になっています
> > > >
> > > > 意味が理解できたわけではありませんが
> > > > まずは教えて頂いた操作を確認しました。
> > > >
> > > > openssl-1.0.1eのビルド成功
> > > >
> > > > libnl-3.2.21のビルド成功
> > > >
> > > > hostapd-2.0が失敗
> > > >
> > > > で以下が失敗メッセージ
> > > >
> > > > atmark@atde5:~/hostapd-2.0/hostapd$ CC=arm-linux-gnueabihf-gcc make
> > > > CC main.c
> > > > CC config_file.c
> > > > CC ../src/ap/hostapd.c
> > > > CC ../src/ap/wpa_auth_glue.c
> > > > CC ../src/ap/drv_callbacks.c
> > > > CC ../src/ap/ap_drv_ops.c
> > > > CC ../src/ap/utils.c
> > > > CC ../src/ap/authsrv.c
> > > > CC ../src/ap/ieee802_1x.c
> > > > CC ../src/ap/ap_config.c
> > > > CC ../src/ap/eap_user_db.c
> > > > CC ../src/ap/ieee802_11_auth.c
> > > > CC ../src/ap/sta_info.c
> > > > CC ../src/ap/wpa_auth.c
> > > > CC ../src/ap/tkip_countermeasures.c
> > > > CC ../src/ap/ap_mlme.c
> > > > CC ../src/ap/wpa_auth_ie.c
> > > > CC ../src/ap/preauth_auth.c
> > > > CC ../src/ap/pmksa_cache_auth.c
> > > > CC ../src/ap/ieee802_11_shared.c
> > > > CC ../src/ap/beacon.c
> > > > CC ../src/drivers/drivers.c
> > > > CC ../src/utils/eloop.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/ip_addr.c
> > > > CC ../src/common/ieee802_11_common.c
> > > > CC ../src/common/wpa_common.c
> > > > CC ../src/eapol_auth/eapol_auth_sm.c
> > > > CC dump_state.c
> > > > CC ../src/eapol_auth/eapol_auth_dump.c
> > > > CC ../src/radius/radius.c
> > > > CC ../src/radius/radius_client.c
> > > > CC ../src/radius/radius_das.c
> > > > CC ../src/ap/accounting.c
> > > > CC ../src/ap/vlan_init.c
> > > > CC ctrl_iface.c
> > > > CC ../src/ap/ctrl_iface_ap.c
> > > > CC ../src/crypto/md5.c
> > > > CC ../src/ap/iapp.c
> > > > CC ../src/ap/peerkey_auth.c
> > > > CC ../src/drivers/driver_hostap.c
> > > > CC ../src/drivers/driver_nl80211.c
> > > > CC ../src/utils/radiotap.c
> > > > CC ../src/drivers/netlink.c
> > > > CC ../src/drivers/linux_ioctl.c
> > > > CC ../src/drivers/rfkill.c
> > > > CC ../src/l2_packet/l2_packet_linux.c
> > > > CC ../src/eap_server/eap_server_md5.c
> > > > CC ../src/eap_server/eap_server_tls.c
> > > > CC ../src/eap_server/eap_server_peap.c
> > > > CC ../src/eap_common/eap_peap_common.c
> > > > CC ../src/eap_server/eap_server_ttls.c
> > > > CC ../src/eap_server/eap_server_mschapv2.c
> > > > CC ../src/eap_server/eap_server_gtc.c
> > > > CC eap_register.c
> > > > CC ../src/eap_server/eap_server.c
> > > > CC ../src/eap_common/eap_common.c
> > > > CC ../src/eap_server/eap_server_methods.c
> > > > CC ../src/eap_server/eap_server_identity.c
> > > > CC ../src/crypto/ms_funcs.c
> > > > CC ../src/eap_common/chap.c
> > > > CC ../src/eap_server/eap_server_tls_common.c
> > > > CC ../src/crypto/tls_openssl.c
> > > > CC ../src/crypto/crypto_openssl.c
> > > > CC ../src/crypto/aes-wrap.c
> > > > CC ../src/crypto/sha1-prf.c
> > > > CC ../src/crypto/sha1-tlsprf.c
> > > > CC ../src/crypto/random.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/drivers/driver_common.c
> > > > /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-3
> > > > /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-genl-3
> > > > collect2: ld returned 1 exit status
> > > > make: *** [hostapd] エラー 1
> > > >
> > > >
> > > > どのあたりの設定を確認すればよいでしょうか?
> > > > あるいは足らないモジュールがあるのでしょうか?
> > > >
> > > > 以上よろしくお願いいたします
> > > >
> > > >
> > > > > 高木@sifiです
> > > > >
> > > > > 以前別のARM用にクロスビルドした時の手順メモです。
> > > > > armadillo向けではないですがビルドの手順としては参考になるかと思います。
> > > > >
> > > > > kernel 3.9 と kernel 3.12 の環境でUSB無線LAN(WLI-UC-GNM2)と組み合わせて使っています。
> > > > >
> > > > > ==== 作業メモここから ====
> > > > >
> > > > > 事前準備
> > > > > ~/tmp で作業します
> > > > > ~/tmp に以下のソースコードを用意します
> > > > >
> > > > > openssl-1.0.1e
> > > > > libnl-3.2.21
> > > > > hostapd-2.0
> > > > >
> > > > > 環境変数 CROSS_COMPILE を適宜設定する
> > > > > 以下のクロスコンパイラ名(arm-linux-gnueabi-gcc)は環境に合わせて設定する
> > > > >
> > > > >
> > > > > opensslのビルド
> > > > > MakefileのCC=arm-linux-gnueabi-gccに変更する
> > > > > make を実行する
> > > > > libssl.a が作成される
> > > > >
> > > > >
> > > > > libnlのビルド
> > > > > 以下を実行する
> > > > > ./configure CC=${CROSS_COMPILE}gcc --host=arm-linux LD=${CROSS_COMPILE}ld --prefix=${HOME}/tmp/usr
> > > > >
> > > > > make を実行する
> > > > > make install を実行する
> > > > >
> > > > > ~/tmp/usr 以下にライブラリ等がインストールされる
> > > > >
> > > > >
> > > > > hostapdのビルド
> > > > > hostapd-2.0/hostapdに移動
> > > > > defconfig を .config にコピー
> > > > > .config に CONFIG_LIBNL32=y の記述を追加
> > > > >
> > > > > Makefile に以下の記述を追加
> > > > >
> > > > > CFLAGS += -I../../openssl-1.0.1e/include/
> > > > > CFLAGS += -I../../libnl-3.2.21/include/
> > > > >
> > > > > LDFLAGS += -L../../openssl-1.0.1e/
> > > > > LDFLAGS += -L../../usr/lib
> > > > >
> > > > > 以下のコマンドでビルド
> > > > >
> > > > > CC=arm-linux-gnueabi-gcc make
> > > > >
> > > > >
> > > > > ==== 作業メモここまで ====
> > > > >
> > > > >
> > > > > > yoshizuです
> > > > > >
> > > > > > 回答が得られないので
> > > > > > 自分なりに進めていますが。
> > > > > >
> > > > > > armadillo-840にGW-900D(USB無線LAN)の接続を想定して
> > > > > > GW-900Dがサポートするhostapdのコンパイルにトライしています。
> > > > > >
> > > > > > GW-900DはLinuxのドライバーが公開されており
> > > > > > RTL8812AU_linux_v425.zipをダウンロードして展開し
> > > > > > その中のwpa_supplicant_hostapdフォルダーにある
> > > > > > wpa_supplicant_8_jb_4.3_rtw_r9301.20131011.tar.gz
> > > > > > をATDE5へ転送し展開します。
> > > > > >
> > > > > > 事前にATDE5でlibnl-1.1.4.tar.gzを展開しlibnlをインストールします
> > > > > >
> > > > > > ATDE5で 
> > > > > > cdでwpa_supplicant_8_jb_4.3_rtw_r9301.20131011/hostapdへ移動し
> > > > > > make実施
> > > > > >
> > > > > > makeが完了しhostapdが作成される。
> > > > > >
> > > > > > このhostapdはATDEのdebian Linux上で実行可能なファイルのはずです
> > > > > >
> > > > > > 次ステップとしてはarmadillo-840上で実行可能なhostapdの作成が必要です。
> > > > > > しかしながら現状の知識では そのmake環境を作成する方法が判りません。
> > > > > >
> > > > > > ご教授願います
> > > > > >
> > > > > > 以上よろしくお願い致します。
> > > > > >
> > > > > >
> > > > > >
> > > > > > > yoshizuです
> > > > > > > いつもお世話になっています
> > > > > > >
> > > > > > > hostapを使って無線LANアクセスポイントの実現を試みています。
> > > > > > >
> > > > > > > あるサイトに「アクセス・ポイントは hostapd 0.6.8 またはそれ以降のバージョンをサポートしている必要があります」との説明があります
> > > > > > >
> > > > > > > 現状利用している
> > > > > > > atmark-dist-20140602、inux-3.4-at9の配下では
> > > > > > >
> > > > > > > # hostapd -v
> > > > > > > hostapd v0.5.10
> > > > > > > とversionは低いです
> > > > > > >
> > > > > > > hostapd 0.6.8以上にする方法をご教授願います。
> > > > > > >
> > > > > > > 以上よろしくお願い致します。
> > > > > > >
> > > > > > >

yoshizu

2014年10月17日 13時35分

高木様

yoshizuです
お世話になっています

教えて頂いた通りに 実行しましたところ、うまくいきました。

感想:
   意味はなんとなく理解できましたが、これを自力で解決して
   いくのは、ほとんど不可能にも思われました。

これで次のステップへ進むことができます。

対応ありがとうございます

> 高木@sifiです
>
> > ./hostapd: error while loading shared libraries: libnl-3.so.200: cannot open shared object file: No such file or directory
>
> 実行環境(armadillo)にlibnl-3.so.200がないためです。
>
> hostapdのビルドでは各ライブラリを共有ライブラリとしてリンクしていますので
> 各ライブラリは実行時にロードされます。
> ~/tmp/usr/lib/ にあるライブラリを実行環境の /usr/lib/ にコピーしてあげれば動くと思います。
>
>
> 別の方法としてlibnlをスタティックリンクしてhostapdをビルド
>  ~/tmp/usr/lib にある共有ライブラリを削除する(~/tmp/usr/lib で rm *.so* を実行する)
>  hostapdのMakefielを修正
>   Makefileに以下の行をさらに追加する
>   LDFLAGS += -lpthread -lm
>
>  hostapdを再ビルドする
>   make clean
>   CC=arm-linux-gnueabi-gcc make
>
> libnlをスタティックリンクしているため~/tmp/usr/lib/ のファイルを実行環境にコピーしなくても動作すると思います
>
>
> 以上、よろしくお願いします。
>
> > 高木様
> >
> > yoshizuです
> > お世話になっています
> >
> > おかげさまで、hostapdのバイナリが出来上がったので
> > 早速、armadillo-840へ転送して、実行したところ
> > 以下のエラーが発生しました
> >
> > # ./hostapd
> > ./hostapd: error while loading shared libraries: libnl-3.so.200: cannot open shared object file: No such file or directory
> >
> > 何が考えられますでしょうか?
> >
> > 以上よろしくお願い致します。
> >
> >
> >
> > > 高木様
> > >
> > > yoshizuです
> > > お世話になっています
> > >
> > > すみません
> > > libnlのビルド時、configureのCROSS_COMPILEの指定をしていませんでした
> > >
> > > hostapdのmakeで、hostapdのバイナリが完成しました。
> > >
> > > 対応ありがとうございます
> > >
> > >
> > >
> > > > 高木@sifiです
> > > >
> > > > > /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-3
> > > > > /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-genl-3
> > > > > collect2: ld returned 1 exit status
> > > >
> > > > このエラーより libnl-3 と libnl-genl-3 が見つかっていないことがわかります。
> > > > libnl-3.2.21 をビルドしたあと、 make install を実行しましたでしょうか。
> > > >
> > > > 作業メモの通り実行していると ~/tmp/usr/lib にlibnl-3.so や libnl-genl-3.so などのライブラリファイルがあるはずです。
> > > > ライブラリファイルがあるけれど上記のエラーになる場合はMakefileの LDFLAGS += -L../../usr/lib の記述を見直してみてください。
> > > > また CC=arm-linux-gnueabi-gcc make V=1 でビルドを実行するともう少し詳しいログが出力されます。
> > > >
> > > >
> > > > > 高木様
> > > > >
> > > > > yoshizuです
> > > > > お世話になっています
> > > > >
> > > > > 意味が理解できたわけではありませんが
> > > > > まずは教えて頂いた操作を確認しました。
> > > > >
> > > > > openssl-1.0.1eのビルド成功
> > > > >
> > > > > libnl-3.2.21のビルド成功
> > > > >
> > > > > hostapd-2.0が失敗
> > > > >
> > > > > で以下が失敗メッセージ
> > > > >
> > > > > atmark@atde5:~/hostapd-2.0/hostapd$ CC=arm-linux-gnueabihf-gcc make
> > > > > CC main.c
> > > > > CC config_file.c
> > > > > CC ../src/ap/hostapd.c
> > > > > CC ../src/ap/wpa_auth_glue.c
> > > > > CC ../src/ap/drv_callbacks.c
> > > > > CC ../src/ap/ap_drv_ops.c
> > > > > CC ../src/ap/utils.c
> > > > > CC ../src/ap/authsrv.c
> > > > > CC ../src/ap/ieee802_1x.c
> > > > > CC ../src/ap/ap_config.c
> > > > > CC ../src/ap/eap_user_db.c
> > > > > CC ../src/ap/ieee802_11_auth.c
> > > > > CC ../src/ap/sta_info.c
> > > > > CC ../src/ap/wpa_auth.c
> > > > > CC ../src/ap/tkip_countermeasures.c
> > > > > CC ../src/ap/ap_mlme.c
> > > > > CC ../src/ap/wpa_auth_ie.c
> > > > > CC ../src/ap/preauth_auth.c
> > > > > CC ../src/ap/pmksa_cache_auth.c
> > > > > CC ../src/ap/ieee802_11_shared.c
> > > > > CC ../src/ap/beacon.c
> > > > > CC ../src/drivers/drivers.c
> > > > > CC ../src/utils/eloop.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/ip_addr.c
> > > > > CC ../src/common/ieee802_11_common.c
> > > > > CC ../src/common/wpa_common.c
> > > > > CC ../src/eapol_auth/eapol_auth_sm.c
> > > > > CC dump_state.c
> > > > > CC ../src/eapol_auth/eapol_auth_dump.c
> > > > > CC ../src/radius/radius.c
> > > > > CC ../src/radius/radius_client.c
> > > > > CC ../src/radius/radius_das.c
> > > > > CC ../src/ap/accounting.c
> > > > > CC ../src/ap/vlan_init.c
> > > > > CC ctrl_iface.c
> > > > > CC ../src/ap/ctrl_iface_ap.c
> > > > > CC ../src/crypto/md5.c
> > > > > CC ../src/ap/iapp.c
> > > > > CC ../src/ap/peerkey_auth.c
> > > > > CC ../src/drivers/driver_hostap.c
> > > > > CC ../src/drivers/driver_nl80211.c
> > > > > CC ../src/utils/radiotap.c
> > > > > CC ../src/drivers/netlink.c
> > > > > CC ../src/drivers/linux_ioctl.c
> > > > > CC ../src/drivers/rfkill.c
> > > > > CC ../src/l2_packet/l2_packet_linux.c
> > > > > CC ../src/eap_server/eap_server_md5.c
> > > > > CC ../src/eap_server/eap_server_tls.c
> > > > > CC ../src/eap_server/eap_server_peap.c
> > > > > CC ../src/eap_common/eap_peap_common.c
> > > > > CC ../src/eap_server/eap_server_ttls.c
> > > > > CC ../src/eap_server/eap_server_mschapv2.c
> > > > > CC ../src/eap_server/eap_server_gtc.c
> > > > > CC eap_register.c
> > > > > CC ../src/eap_server/eap_server.c
> > > > > CC ../src/eap_common/eap_common.c
> > > > > CC ../src/eap_server/eap_server_methods.c
> > > > > CC ../src/eap_server/eap_server_identity.c
> > > > > CC ../src/crypto/ms_funcs.c
> > > > > CC ../src/eap_common/chap.c
> > > > > CC ../src/eap_server/eap_server_tls_common.c
> > > > > CC ../src/crypto/tls_openssl.c
> > > > > CC ../src/crypto/crypto_openssl.c
> > > > > CC ../src/crypto/aes-wrap.c
> > > > > CC ../src/crypto/sha1-prf.c
> > > > > CC ../src/crypto/sha1-tlsprf.c
> > > > > CC ../src/crypto/random.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/drivers/driver_common.c
> > > > > /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-3
> > > > > /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lnl-genl-3
> > > > > collect2: ld returned 1 exit status
> > > > > make: *** [hostapd] エラー 1
> > > > >
> > > > >
> > > > > どのあたりの設定を確認すればよいでしょうか?
> > > > > あるいは足らないモジュールがあるのでしょうか?
> > > > >
> > > > > 以上よろしくお願いいたします
> > > > >
> > > > >
> > > > > > 高木@sifiです
> > > > > >
> > > > > > 以前別のARM用にクロスビルドした時の手順メモです。
> > > > > > armadillo向けではないですがビルドの手順としては参考になるかと思います。
> > > > > >
> > > > > > kernel 3.9 と kernel 3.12 の環境でUSB無線LAN(WLI-UC-GNM2)と組み合わせて使っています。
> > > > > >
> > > > > > ==== 作業メモここから ====
> > > > > >
> > > > > > 事前準備
> > > > > > ~/tmp で作業します
> > > > > > ~/tmp に以下のソースコードを用意します
> > > > > >
> > > > > > openssl-1.0.1e
> > > > > > libnl-3.2.21
> > > > > > hostapd-2.0
> > > > > >
> > > > > > 環境変数 CROSS_COMPILE を適宜設定する
> > > > > > 以下のクロスコンパイラ名(arm-linux-gnueabi-gcc)は環境に合わせて設定する
> > > > > >
> > > > > >
> > > > > > opensslのビルド
> > > > > > MakefileのCC=arm-linux-gnueabi-gccに変更する
> > > > > > make を実行する
> > > > > > libssl.a が作成される
> > > > > >
> > > > > >
> > > > > > libnlのビルド
> > > > > > 以下を実行する
> > > > > > ./configure CC=${CROSS_COMPILE}gcc --host=arm-linux LD=${CROSS_COMPILE}ld --prefix=${HOME}/tmp/usr
> > > > > >
> > > > > > make を実行する
> > > > > > make install を実行する
> > > > > >
> > > > > > ~/tmp/usr 以下にライブラリ等がインストールされる
> > > > > >
> > > > > >
> > > > > > hostapdのビルド
> > > > > > hostapd-2.0/hostapdに移動
> > > > > > defconfig を .config にコピー
> > > > > > .config に CONFIG_LIBNL32=y の記述を追加
> > > > > >
> > > > > > Makefile に以下の記述を追加
> > > > > >
> > > > > > CFLAGS += -I../../openssl-1.0.1e/include/
> > > > > > CFLAGS += -I../../libnl-3.2.21/include/
> > > > > >
> > > > > > LDFLAGS += -L../../openssl-1.0.1e/
> > > > > > LDFLAGS += -L../../usr/lib
> > > > > >
> > > > > > 以下のコマンドでビルド
> > > > > >
> > > > > > CC=arm-linux-gnueabi-gcc make
> > > > > >
> > > > > >
> > > > > > ==== 作業メモここまで ====
> > > > > >
> > > > > >
> > > > > > > yoshizuです
> > > > > > >
> > > > > > > 回答が得られないので
> > > > > > > 自分なりに進めていますが。
> > > > > > >
> > > > > > > armadillo-840にGW-900D(USB無線LAN)の接続を想定して
> > > > > > > GW-900Dがサポートするhostapdのコンパイルにトライしています。
> > > > > > >
> > > > > > > GW-900DはLinuxのドライバーが公開されており
> > > > > > > RTL8812AU_linux_v425.zipをダウンロードして展開し
> > > > > > > その中のwpa_supplicant_hostapdフォルダーにある
> > > > > > > wpa_supplicant_8_jb_4.3_rtw_r9301.20131011.tar.gz
> > > > > > > をATDE5へ転送し展開します。
> > > > > > >
> > > > > > > 事前にATDE5でlibnl-1.1.4.tar.gzを展開しlibnlをインストールします
> > > > > > >
> > > > > > > ATDE5で 
> > > > > > > cdでwpa_supplicant_8_jb_4.3_rtw_r9301.20131011/hostapdへ移動し
> > > > > > > make実施
> > > > > > >
> > > > > > > makeが完了しhostapdが作成される。
> > > > > > >
> > > > > > > このhostapdはATDEのdebian Linux上で実行可能なファイルのはずです
> > > > > > >
> > > > > > > 次ステップとしてはarmadillo-840上で実行可能なhostapdの作成が必要です。
> > > > > > > しかしながら現状の知識では そのmake環境を作成する方法が判りません。
> > > > > > >
> > > > > > > ご教授願います
> > > > > > >
> > > > > > > 以上よろしくお願い致します。
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > > yoshizuです
> > > > > > > > いつもお世話になっています
> > > > > > > >
> > > > > > > > hostapを使って無線LANアクセスポイントの実現を試みています。
> > > > > > > >
> > > > > > > > あるサイトに「アクセス・ポイントは hostapd 0.6.8 またはそれ以降のバージョンをサポートしている必要があります」との説明があります
> > > > > > > >
> > > > > > > > 現状利用している
> > > > > > > > atmark-dist-20140602、inux-3.4-at9の配下では
> > > > > > > >
> > > > > > > > # hostapd -v
> > > > > > > > hostapd v0.5.10
> > > > > > > > とversionは低いです
> > > > > > > >
> > > > > > > > hostapd 0.6.8以上にする方法をご教授願います。
> > > > > > > >
> > > > > > > > 以上よろしくお願い致します。
> > > > > > > >
> > > > > > > >