権限のないユーザーとしてFreeBSDパッケージをクロスコンパイルする

権限のないユーザーとしてFreeBSDパッケージをクロスコンパイルする

私の目標は、amd64 FreeBSDホストからarmv6 RaspberryPi FreeBSDターゲットにバイナリをクロスコンパイルすることです。

make install私が経験している問題は、コマンドを実行するにはルートでなければならないということですmake PREFIX=/home/arm/install_dir NO_PKG_REGISTER=1 install。より良い方法make packageは、ターゲットに簡単に転送するために使用することです。

問題は、私がはいシステムの単独管理者であり、するmake installルート機能を使用すると、間違い(たとえば、PREFIX=省略)によってNO_PKG_REGISTER=1ホストシステムが破損しないようにしたいと思います。

arm予防策として、ホストコンピュータにarmバイナリを誤ってインストールするのを防ぐために、すべてのビルドを別々のユーザーとして実行してください。さらに、ユーザーは/usr/srcFreeBSDソースコードとポートツリーの独自のコピーを別々に持っています/usr/ports

makeルートアクセスなしでパッケージを作成する方法はありますか?

それとも、私のホストPREFIXが不適切なバイナリで汚染されるのを防ぎますか?NO_PKG_REGISTERmake package

編集:によるとhttp://forums.freebsd.org/showpost.php?p=1518&postcount=7、PREFIXの方法は良くありません...うーん。私の言葉は、デスティル?

答え1

ポートクロスコンパイルはサポートされている構成ではありません。権限のないユーザーでパッケージをビルドする場合も同様です。

うまくいくかもしれませんが、時にはうまくいかないかもしれません。

chrootを設定すると、誤ってホストシステムにARMバイナリをインストールするのを防ぐことができるので、良いアイデアだと思います。刑務所は利用可能ですが、必須ではありません。

関連情報