前回、Yoctoでiwとlibnlを追加パッケージとしてビルドを試みたらエラー発生。素直にクロスコンパイルしようと思います。

【関連記事】
【組込ボードで無線LAN】②(無線LANカードN-6300を組込ボードに接続するには?)
【組込ボードで無線LAN】⑧(iwのビルド:後編-1)
  • iwとlibnlをクロスコンパイル
【組込Linuxボードを動かしてみた】③(i.MX6:Boundary Devices社のSabre Liteボードを動かしてみた)でBD-SABRE-LITE向けYoctoのSDK(ツールチェーン)が生成されている前提で話を進める。ちなみにツールチェーンの定義はこんな感じ。
コンパイル言語におけるソースコードからバイナリを生成するツールチェーンでは、エディタ(含めないとする場合もある)、コンパイラ、アセンブラ、リンカなどで構成される。複雑な製品、例えばゲームなどでは、効果音、音楽、テクスチャ、3Dモデル、アニメーションなどを作成するためのツールも必要とされる。
①SDKの環境変数を設定する

クロスコンパイル実行時は以下のスクリプトを実行して環境変数を設定する。
$ . /opt/poky/1.8.2/environment-setup-cortexa9hf-vfp-neon-poky-linux-gnueabi
echoしてみる。大丈夫そうだ。
$ echo $ARCH
arm
$ echo $CROSS_COMPILE
arm-poky-linux-gnueabi-

$ echo $CC
arm-poky-linux-gnueabi-gcc -march=armv7-a -marm -mthumb-interwork -mfloat-abi=hard -mfpu=neon -mtune=cortex-a9 --sysroot=/opt/poky/1.8.2/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi
②libnlをクロスコンパイルする
【組込ボードで無線LAN】⑦(iwのビルド:中編)でビルドしたlibnlの環境を使う。

まず./configureを実施。ARM向けに再コンフィグされたかに見えたがエラー発生。
$ cd ~/libnl-3.4.0/
./configure
configure: loading site script /opt/poky/1.8.2/site-config-cortexa9hf-vfp-neon-poky-linux-gnueabi
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether make supports nested variables... (cached) yes
checking for style of include used by make... GNU
checking for gcc... arm-poky-linux-gnueabi-gcc  -march=armv7-a -marm  -mthumb-interwork -mfloat-abi=hard -mfpu=neon -mtune=cortex-a9 --sysroot=/opt/poky/1.8.2/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... configure: error: in `/home/pavement1234/libnl-3.4.0':
configure: error: cannot run C compiled programs.
If you meant to cross compile, use `--host'.
See `config.log' for more details

一難去ってまた一難。./configureのオプション--hostを使えと言われてる気がするので、次回調べてみる。

続く
IMG_20190930_082825

スポンサードリンク