Docker内でのopencv buildでerror…
とあるDocker imageをbuildしようとしていたところ…
opencvのbuild中にerrorが
Dockerfileはこんな感じ…
FROM ubuntu:18.04 --中略-- # install & build opencv RUN git clone https://github.com/opencv/opencv.git ~/opencv RUN git clone https://github.com/opencv/opencv_contrib.git ~/opencv_contrib RUN cd ~/opencv && \ mkdir build && \ cd build && \ cmake -D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_INSTALL_PREFIX=/usr/local \ -D INSTALL_PYTHON_EXAMPLES=ON \ -D INSTALL_C_EXAMPLES=OFF \ -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules ~/opencv \ -D BUILD_EXAMPLES=ON .. && \ make -j4 && \ make install && \ /sbin/ldconfig --以下略--
makeの部分でerrorが出た模様。
c++: internal compiler error: Killed (program cc1plus)
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-7/README.Bugs> for instructions.
make[2]: *** [modules/python2/CMakeFiles/opencv_python2.dir/__/src2/cv2.cpp.o] Error 4
make[1]: *** [modules/python2/CMakeFiles/opencv_python2.dir/all] Error 2
CMakeFiles/Makefile2:19251: recipe for target 'modules/python2/CMakeFiles/opencv_python2.dir/all' failed
make[1]: *** Waiting for unfinished jobs....
error文で検索すると。
github.com
ちゃんと読んでないけどRAMが何たらかんたらと書いてある。
Linuxのサーバ上では同じDockerfileでbuildできていたのでおそらくPCの性能的な問題。
Macのスペック
OS: macOS Catalina 10.15.4
機種名: iMac(21.5-inch, 2019)
プロセッサ: 3.2 GHz 6Core Intel Core i7
メモリ: 16 GB 2667 MHz DDR4
グラフィックス: Radeon Pro 555X 2 GB
コア数は足りているはずなのにうまく行ってない。
ということで
make -j4 → make -j2
ちゃんとmakeできました。
まだしっかり調べていないですが、docker内でのcpu使用に制限があるのか…
またわかったら記事にします。