質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
CMake

CMakeはクロスプラットフォームで作動するオープンソースのビルドシステムです。コマンドライン又は組み込まれた開発環境で使うことができる元のmakefileとプロジェクトファイルを生成します。

makefile

make は、プログラムのビルド作業を自動化するツールです。コンパイル、リンク、インストール等のルールを記述したテキストファイルをmakefileと呼び、このルールに従ってmakeが自動的にビルドを実行する。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

自然言語処理

自然言語処理は、日常的に使用される自然言語をコンピューターに処理させる技術やソフトウェアの総称です。

Q&A

解決済

1回答

1862閲覧

Alpine Linux に Juman++ V2をインストールしたい

NCC1701

総合スコア1680

CMake

CMakeはクロスプラットフォームで作動するオープンソースのビルドシステムです。コマンドライン又は組み込まれた開発環境で使うことができる元のmakefileとプロジェクトファイルを生成します。

makefile

make は、プログラムのビルド作業を自動化するツールです。コンパイル、リンク、インストール等のルールを記述したテキストファイルをmakefileと呼び、このルールに従ってmakeが自動的にビルドを実行する。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

自然言語処理

自然言語処理は、日常的に使用される自然言語をコンピューターに処理させる技術やソフトウェアの総称です。

0グッド

0クリップ

投稿2019/08/17 07:58

前提・実現したいこと

Docker上のAlpine Linuxにおいて、Juman++ V2(2.0.0-rc2)をインストールしようとしています。

発生している問題・エラーメッセージ

以下のとおりsys/sysctl.hが無いと言われてmakeで失敗しました。
(その前にもwarningあり)

・・・略・・・ [ 1%] Building CXX object src/util/CMakeFiles/jpp_util.dir/mmap.cc.o In file included from /tmp/src/jumanpp-2.0.0-rc2/src/util/mmap_impl_unix.h:4, from /tmp/src/jumanpp-2.0.0-rc2/src/util/mmap.cc:15: /usr/include/sys/fcntl.h:1:2: warning: #warning redirecting incorrect #include <sys/fcntl.h> to <fcntl.h> [-Wcpp] #warning redirecting incorrect #include <sys/fcntl.h> to <fcntl.h> ^~~~~~~ [ 2%] Building CXX object src/util/CMakeFiles/jpp_util.dir/memory.cpp.o ・・・略・・・ [ 6%] Building CXX object src/util/CMakeFiles/jpp_util.dir/assert.cc.o /tmp/src/jumanpp-2.0.0-rc2/src/util/assert.cc:12:10: fatal error: sys/sysctl.h: No such file or directory #include <sys/sysctl.h> ^~~~~~~~~~~~~~ compilation terminated. make[2]: *** [src/util/CMakeFiles/jpp_util.dir/build.make:193: src/util/CMakeFiles/jpp_util.dir/assert.cc.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:197: src/util/CMakeFiles/jpp_util.dir/all] Error 2 make: *** [Makefile:141: all] Error 2

該当のソースコード

Dockerfile

1FROM alpine:latest 2 3RUN apk --no-cache update && apk --no-cache upgrade && apk --no-cache --update --virtual=build-deps add \ 4 build-base \ 5 boost-dev \ 6 libexecinfo-dev \ 7 linux-headers \ 8 g++ \ 9 make \ 10 protobuf-dev \ 11 protobuf \ 12 eigen-dev \ 13 automake \ 14 autoconf \ 15 cmake \ 16 curl 17 18ENV LANG=C.UTF-8 \ 19 JUMANPP_VERSION=2.0.0-rc2 20 21WORKDIR /tmp/src 22ADD jumanpp-$JUMANPP_VERSION.tar.xz . 23WORKDIR jumanpp-$JUMANPP_VERSION 24 25### Install Juman++ V2 26# 27RUN pwd &&\ 28# curl -OL https://github.com/ku-nlp/jumanpp/releases/download/v$JUMANPP_VERSION/jumanpp-$JUMANPP_VERSION.tar.xz && \ 29# tar xf jumanpp-$JUMANPP_VERSION.tar.xz && \ 30# cd jumanpp-$JUMANPP_VERSION && \ 31 mkdir build && \ 32 cd build && \ 33 cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local && \ 34# make install -j 35 pwd 36 37#RUN rm -rf /tmp/src 38WORKDIR /home

試したこと

上記のDockerfileではjuman++V2のソースファイルのダウンロードをコメントアウトしています(いろいろ試す度にダウンロードするのを避けるため)
また、makeは今のところ手作業で進めているためにコメントアウトしてます

docker build -t juman/v2 .ののちにdocker run -v $(pwd):/home --name jumanpp -it juman/v2 /bin/shして作業している状態です。

一般的にAlpine Linuxでビルド・コンパイルするための共通しているツール・パッケージが足りていないからではないかと思っているのですが、そのツール(群)を教えていただけるとうれしいです

MacOS上ではmakeできました。

補足情報(FW/ツールのバージョンなど)

Docker 2.1.0.1 (Docker for Mac)
Alpine Linux 3.10 (Latest)
Juman++ V2 2.0.0-rc2

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

linux/sysctl.hがあるらしいので、こちらにしてみては?

投稿2019/08/17 08:24

hayataka2049

総合スコア30933

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

NCC1701

2019/08/17 09:29

ありがとうございました。linux/sysctl.h -> sys/sysctl.h のリンクを作りうまくいきました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問