i386 の FreeBSD で TARGET=amd64 を作る2017年11月19日 13時44分54秒

FreeBSD でのクロスコンパイルを試みていた。素のターゲットのみで、母艦と違うアーキテクチャのバイナリもそのまま作れる様だ。xdev ターゲットがあったのでそれを使うのを前提で試してみたが、必要なかった。

TARGET= や TARGET_ARCH= で指定するだけで全てが作れる。

% make buildworld buildkernel TARGET=amd64

もし、互換アーキテクチャに上書きインストールをするのなら buildworld も必要にある。buildkernel は buildworld に依存しているので、逆に置いても問題はない。

カーネルだけを作りたいのなら、kernel-toolchain をやらないと、異った toolchain を使うのでコンパイルに失敗する。また、buildkernel ターゲットは toolchain に依存していないので、並べて一度の make で起動すると、buildkernel が先に始まってしまう。

% make kernel-toolchain TARGET=amd64
% make buildkernel TARGET=amd64

前回

コメント

コメントをどうぞ

※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。

※なお、送られたコメントはブログの管理者が確認するまで公開されません。

名前:
メールアドレス:
URL:
コメント:

トラックバック

このエントリのトラックバックURL: http://uyota.asablo.jp/blog/2017/11/19/8730646/tb

※なお、送られたトラックバックはブログの管理者が確認するまで公開されません。