前提・実現したいこと
Dockerfileをビルドしたいです。
DOckerのmakeの部分でエラーが起きています。
マシン
macOS Big Sur (11.0.1) MacBook Pro (13-inch, 2020, Four Thunderbolt 3 ports) cou 2 GHz クアッドコアIntel Core i5 メモリ 16 GB 3733 MHz LPDDR4X GPU Intel Iris Plus Graphics 1536 MB Docker version 20.10.0,
c++のopencvをmakeする所で詰まっています。
また、他のプロジェクトでビルドしたときは、ここのmakeは通りました。
発生している問題・エラーメッセージ
以下がエラーが出ている場所です。
..... #34 776.8 [ 81%] Building CXX object modules/core/CMakeFiles/opencv_perf_core.dir/perf/perf_umat.cpp.o #34 782.5 [ 81%] Building CXX object modules/datasets/CMakeFiles/opencv_datasets.dir/src/fr_lfw.cpp.o #34 835.3 c++: internal compiler error: 強制終了 (program cc1plus) #34 835.3 Please submit a full bug report, #34 835.3 with preprocessed source if appropriate. #34 835.3 See <file:///usr/share/doc/gcc-7/README.Bugs> for instructions. #34 835.3 modules/core/CMakeFiles/opencv_test_core.dir/build.make:782: recipe for target 'modules/core/CMakeFiles/opencv_test_core.dir/test/test_intrin128.sse2.cpp.o' failed #34 835.3 make[2]: *** [modules/core/CMakeFiles/opencv_test_core.dir/test/test_intrin128.sse2.cpp.o] Error 4 #34 835.4 make[2]: *** 未完了のジョブを待っています.... #34 835.6 [ 81%] Building CXX object modules/objdetect/CMakeFiles/opencv_objdetect.dir/src/cascadedetect_convert.cpp.o #34 839.5 [ 81%] Building CXX object modules/ccalib/CMakeFiles/opencv_ccalib.dir/src/omnidir.cpp.o .... #34 911.9 [ 84%] Building CXX object modules/datasets/CMakeFiles/opencv_datasets.dir/src/tr_chars.cpp.o #34 911.9 [ 84%] Building CXX object modules/datasets/CMakeFiles/opencv_datasets.dir/src/tr_icdar.cpp.o #34 912.2 CMakeFiles/Makefile2:2674: recipe for target 'modules/core/CMakeFiles/opencv_test_core.dir/all' failed #34 912.2 make[1]: *** [modules/core/CMakeFiles/opencv_test_core.dir/all] Error 2 #34 912.2 make[1]: *** 未完了のジョブを待っています.... #34 912.2 [ 84%] Linking CXX shared library ../../lib/libopencv_objdetect.so ... #34 922.2 [ 84%] Linking CXX shared library ../../lib/libopencv_videostab.so #34 922.4 [ 84%] Built target opencv_videostab #34 923.2 [ 84%] Linking CXX shared library ../../lib/libopencv_xfeatures2d.so #34 923.5 [ 84%] Built target opencv_xfeatures2d #34 923.5 Makefile:162: recipe for target 'all' failed #34 923.5 make: *** [all] Error 2 ------ executor failed running [/bin/sh -c make -j11]: exit code: 2
該当のソースコード
対象のDockerファイルです。
FROM ubuntu:18.04 WORKDIR /root ENV DEBIAN_FRONTEND noninteractive # sh->bash RUN mv /bin/sh /bin/sh_tmp && ln -s /bin/bash /bin/sh # apt-get更新 wget取得 RUN sed -i.bak -e "s%http://archive.ubuntu.com/ubuntu/%http://ftp.iij.ad.jp/pub/linux/ubuntu/archive/%g" /etc/apt/sources.list RUN apt-get update RUN apt-get upgrade -y RUN apt-get install -y wget RUN apt-get install -y apt-utils RUN apt-get install -y nano RUN apt-get install -y less RUN apt-get install -y vim RUN apt-get install -y git # opencv install RUN apt-get install -y build-essential cmake unzip pkg-config libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libxvidcore-dev libx264-dev libgtk-3-dev libatlas-base-dev gfortran python3-dev WORKDIR /root/tmp/ RUN unzip opencv344.zip RUN unzip opencv344cont.zip WORKDIR /root/tmp/opencv-3.4.4 RUN mkdir build WORKDIR /root/tmp/opencv-3.4.4/build RUN cmake -D CMAKE_BUILD_TYPE=RELEASE -D PYTHON_EXECUTABLE=$(which python3) -D BUILD_opencv_python2=OFF -D BUILD_opencv_python3=ON -D INSTALL_PYTHON_EXAMPLES=ON -D OPENCV_EXTRA_MODULES_PATH=/root/tmp/opencv_contrib-3.4.4/modules .. RUN make -j11 >>ここでエラー RUN make install RUN /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf' RUN ldconfig # sh->bashを元に戻す RUN rm /bin/sh && mv /bin/sh_tmp /bin/sh
試したこと
計4回ほどビルドを試しました。
初めは最初の方で、
g++: internal compiler error: Killed (program cc1plus)
が表示されていて、
https://omohikane.com/centos_internal_compiler_error/
をみたところ、マシンのメモリが足りていないとのことだったので、起動プロセスを停止して再度ビルドしてみたのですが、
上記の場所でエラーになってしまいました。
34 835.3 c++: internal compiler error: 強制終了 (program cc1plus)
で再び同じエラーということはメモリが足りていないということですか???
それとも他の原因があるのでしょうか??
一回のビルドに15分ほどかかるので怖くてビルドができなくなってしまっています。
回答2件
あなたの回答
tips
プレビュー