Closed otegami closed 4 months ago
https://github.com/pgroonga/docker/pull/48 のレビュー対応から進めていく。
b60fd22098f3:/# ruby -v
bash: ruby: command not found
Ruby を入れてあげる。
# apk add ruby
b60fd22098f3:/# cd build/groonga-14.0.4/vendor/
/build/groonga-14.0.4/vendor# ruby download_mecab.rb
download_mecab.rb:62:in `spawn': No such file or directory - patch (Errno::ENOENT)
from download_mecab.rb:62:in `block (4 levels) in download'
from download_mecab.rb:61:in `pipe'
from download_mecab.rb:61:in `block (3 levels) in download'
from download_mecab.rb:60:in `chdir'
from download_mecab.rb:60:in `block (2 levels) in download'
from /usr/lib/ruby/3.3.0/open-uri.rb:162:in `open_uri'
from /usr/lib/ruby/3.3.0/open-uri.rb:750:in `open'
from download_mecab.rb:59:in `block in download'
from download_mecab.rb:57:in `each'
from download_mecab.rb:57:in `download'
from download_mecab.rb:73:in `<main>'
b60fd22098f3:/build/groonga-14.0.4/vendor# cat download_mecab.rb
patch コマンドがなさそう。 下記を試すところから、次再開する。
# apk add patch
問題なくうまく行った。
/build/groonga-14.0.4/vendor# ruby download_mecab.rb
patching file src/dictionary.cpp
次にダウンロードしてビルドが通るところまで確認する。
次にダウンロードしてビルドが通るところまで確認する。
ここまで確認できた。
/build/groonga-14.0.4# psql -U pgroonga
psql (12.19)
Type "help" for help.
pgroonga=# CREATE TABLE memos (
pgroonga(# id integer,
pgroonga(# content text
pgroonga(# );
CREATE TABLE
pgroonga=# CREATE EXTENSION IF NOT EXISTS pgroonga;
CREATE EXTENSION
pgroonga=# CREATE INDEX pgroonga_content_index
pgroonga-# ON memos
pgroonga-# USING pgroonga (content)
pgroonga-# WITH (tokenizer='TokenMecab');
CREATE INDEX
一気に変更を入れると差分が多いから下記の2つに分けて PR を出していこう。
download_mecab
をインストールするのに必要な ruby
と patch
を導入する PRbuild.sh
で download_mecab
経由でインストールする対応を導入する PRいやぁ、これは一緒じゃないかなぁ。
わけるならまずはalpine/16/
だけdoewnload_mecab.rb
で、他のalpine/*/
はそのまま、とかじゃないかな。でも、そのアプローチでレビューしやすいPRにするのはまだむずかしいんじゃないかな。
了解です。 そしたら今回は少しボリュームが増えてしまいますが、分けずにそのまま行こうと思います。
わけるならまずはalpine/16/だけdoewnload_mecab.rbで、他のalpine/*/はそのまま、とかじゃないかな。
build.sh
にて、OS バージョンで分岐する or 別のファイルを呼んで呼び出すくらいしか思いついていないのですが、
今度お時間のあるときにこんなパターンが良いんじゃないみたいなのあったら教えてくださいmm
私なら別のファイルでやってみるかな。
ちょっと次回チャレンジしてみます!
ref: https://github.com/pgroonga/docker/issues/40
Now, Groonga can build MeCab together with CMake. So we can remove its build step from alpine/build.sh
ref: https://github.com/groonga/groonga/blob/e5ecc368e7825621374d7b0c7662fa455ebd8dd3/CMakeLists.txt#L764-L769 ref: https://github.com/groonga/groonga/tree/main/vendor/mecab