エラー make できない
たとえば、
ports から nginx を設定して make すると下のメッセージが表示されて、make させてくれませんでした。
今回の例は、www/nginx です。
/usr/ports/www/nginx # make
/!\ ERROR: /!\
Ports Collection support for your FreeBSD version has ended, and no ports are
guaranteed to build on this system. Please upgrade to a supported release.
No support will be provided if you silence this message by defining
ALLOW_UNSUPPORTED_SYSTEM.
*** Error code 1
Stop.
make[1]: stopped in /usr/ports/www/nginx
*** Error code 1
Stop.
メッセージをみると、
あなたのFreeBSDのバージョンのサポートは終わっているので、アップグレードしてね!
サポートが必要ないのならば、
ALLOW_UNSUPPORTED_SYSTEM
と定義してね。
みたいなことが書かれています。
原因 FreeBSDのバージョンのサポート終了
Ports Collection support for your FreeBSD version has ended, and no ports are
guaranteed to build on this system. Please upgrade to a supported release.
お使いの FreeBSD バージョンのポート コレクションのサポートは終了しており、ポートはありません。
このシステムに基づいて構築されることが保証されています。 サポートされているリリースにアップグレードしてください。
解決方法
FreeBSD のバージョンアップ方法
動作中FreeBSDサーバーのバージョンアップは、うまく動かなくなる可能性があるので、オススメできません。
新しい環境で、最新バージョンを新規インストールして、新たにサーバーを構築した方が安全です。
不具合の解決には多くの時間を消費されることが多い。
サポートを無視する方法
No support will be provided if you silence this message by defining
ALLOW_UNSUPPORTED_SYSTEM.
ALLOW_UNSUPPORTED_SYSTEMを定義してこのメッセージを沈黙させた場合、サポートは提供されません。
サポートを無視すればmake コンパイルできる可能性があります。
当然、不具合が発生する可能性はあると考えます。
bash と tcsh で環境変数の変更の方法は異なるので注意してください。
bashの場合
# export ALLOW_UNSUPPORTED_SYSTEM=1
tcshの場合
# setenv ALLOW_UNSUPPORTED_SYSTEM 1
動作確認
環境変数を
ALLOW_UNSUPPORTED_SYSTEM 1
としてから ports の make をしてみると、
/usr/ports/www/nginx # make
/!\ ERROR: /!\
Ports Collection support for your FreeBSD version has ended, and no ports are
guaranteed to build on this system. Please upgrade to a supported release.
===> License BSD2CLAUSE accepted by the user
====> Compressing man pages (compress-man)
===> Staging rc.d startup script(s)
make が通りました。
/usr/ports/www/nginx # make install
===> Installing for nginx-1.24.0_11,3
===> Checking if nginx is already installed
今回は、インストールもできて、動作もOK でした。