当社はIT技術のオンライン教育を得意としたセミナー専門会社です。

ITエンジニアの技術力UPをお約束します。

NetBSDをレビュー中、備忘録として残しておこう! その2

今回は前回の記事の続きでWORDPRESSが動作する環境を作ってゆく箇所でデフォルトではインストールしてすんなり動作しないためそれをどう攻略するかなどをまとめてゆこうと思う.

H2O WEBサーバの設定を行う

まず最初に設定フォルダーの作成とファイルの作成だな。ここは既存の設定をパクれば簡単に作れる。

h2oには調整しないと動かないプログラムがある.

内部で呼び出す常駐プログラムがh2oにはある。/usr/pkg/share/h2o/start_serverがそれです。このファイルを修正しないとエラーが出ます。今迄Linuxで何度もh2oサーバは使ってきましたがこんなプログラムが内部にあるんだなーNetBSDの場合に限りかどうかはわからないけれど。

サーバ起動スクリプトを記述

/etc/rc.d/h2oとして設置します。設置したら実行権つけましょうね。

PHP FastCGIの設定を行う

phpのFastCGIをh2oで使う場合は2通りありphp-fpmとphp-cgiを使うが今回はphp-fpmを使う。

はまりまくったのが,php81-gdとphp81-magickのモジュール。このライブラリはWORDPRESSの中で画像のサムネイルや画像編集で内部的に利用するため必要だ。
実際に起こるのはこの2つのライブラリーが他のライブラリーや他のパッケージが必要と延々とエラーを出してくる。
メモを取らなかったので忘れたが10個前後はこの関連でインストールした。また導入したパッケージと要求されるパッケージのライブラリーマイナー番号が合わない。
ここは単純にソフトリンク(ln -s)で対応したが一応この方法で現状サーバーは動作しています。

ところで、Cコンパイラーがまともに動かないんだけど。がっくり!!

パッケージとしていくつかのgccバージョンが登録されておりインストールするが、エラーのオンパレードなんだなこれが!! つまりヘッダファイルやライブラリーがどうもおかしいのだ。インクルードするヘッダファイルやライブラリが足りないとか例えばcrt1.oがないとかcdefs.hファイルがないとかといったエラーになる。 printf(“hello in the world”); たったこれだけ出力するコンパイルでそれがでるのって欠陥でしょう。インストーラのパッケージ不足なのか、それとも構成ファイルの問題 なのかわけが分からない。調べてみるとcrt1.oは古いgccで必要とされていたファィルなのできっと構成ミスだな。完全にお手上げだ。環境はCONOHA VPSで提供されたイメージでインスタンス作っているがさすがにそこは素のNetBSDイメージだと思う。

—–後日談——-
自前のPCにfull install NetBSD9.1を行ったらしっかりコンパイラが動く。犯人はCONOHAのイメージだったか!!(^_^;)
正確にはCONOHAのイメージが悪いカスタマイズしていたという意味ではない。元々のNetBSDのインストールレベルの構成問題だろう。
レベルによってファイルに欠品が合ったということだ。
最初からfullでインストール時にgccやmake関連のツールを入れて上げないと単品インストールで構築できないケースがLinuxでもごく稀にあるが、まさに今回のNetBSDがそのような感じみたい。
VPSのテンプレートに入ってくるのはminimalのケースが多いよね。
とりあえず足りないファイルを圧縮してホスティングへ送ってあげようと思う。