Mulitarch時代のクロスコンパイル
Debian 7.0 から multiarch への移行が行われる。 これにより、Debianでの今までのクロスコンパイルとは異なる方法になる。 ホストをamd64、ターゲットを armhf をした場合。
まず、multiarchするアーキテクチャを追加する。
# dpkg --add-architecture armhf
追加できたか確認する
# dpkg --print-foreign-architectures
armhf
aptline に以下の行を追加する。このaptlineでは、multiarchに対応したクロスコンパイラが提供されている。
deb http://emdebian.org/~thibg/repo/ sid main
apt-get updateを実行し、リポジトリ情報を取得する。 # apt-get update
クロスコンパイラをインストールする。armhf バイナリをダウンロードしていることがわかる。
# apt-get install gcc-4.7-arm-linux-gnueabihf
<snip>
取得:12 http://ftp.jp.debian.org/debian/ unstable/main libgcc1 amd64 1:4.7.2-2 [43.1 kB]
取得:13 http://ftp.jp.debian.org/debian/ unstable/main gcc-4.7-base armhf 4.7.2-2 [143 kB]
取得:14 http://ftp.jp.debian.org/debian/ unstable/main libc6 armhf 2.13-35 [4,005 kB]
取得:15 http://emdebian.org/~thibg/repo/ sid/main gcc-4.7-arm-linux-gnueabihf-base amd64 4.7.1-7 [140 kB]
取得:16 http://emdebian.org/~thibg/repo/ sid/main cpp-4.7-arm-linux-gnueabihf amd64 4.7.1-7 [5,133 kB]