OpneCV
ubuntu20, openCV450, java14
닉의네임
2020. 12. 15. 16:47
반응형
사전작업 : 서버에 docker 설치
ubuntu20 기반에 openjdk 14를 포함한 이것저것 설치되어 있는 docker image
docker run -i -t -d -p 8080:8080 --name api -v /Users/doo/imagesearch:/imagesearch ldh3855/web:latest /bin/bash
접속해보자
docker exec -it api /bin/bash
빈껍대기만 있으니까..
설치 들어간다..
apt-get install build-essential
apt update && apt install -y cmake g++ wget unzip ant libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
경로를 잡아주자
export ANT_HOME=/usr/share/ant/
export PATH=${PATH}:${ANT_HOME}/bin
export JAVA_HOME=/usr/lib/jvm/java-14-openjdk-amd64/
export PATH=$PATH:$JAVA_HOME/bin
ant , jdk 경로 잡아줌 빌드에서 ant, JNI No 라고 에러가 난다면 위의 경로 문제
mkdir -p opencv && cd opencv
wget -O opencv.zip https://github.com/opencv/opencv/archive/4.5.0.zip
unzip opencv.zip
wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.5.0.zip
unzip opencv_contrib.zip
mkdir -p build && cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D BUILD_SHARED_LIBS=OFF \
-D JAVA_INCLUDE_PATH=$JAVA_HOME/include \
-D OPENCV_EXTRA_MODULES_PATH= ../opencv_contrib-4.5.0/modules ../opencv-4.5.0
-D BUILD_SHARED_LIBS=OFF 이 옵션이 자바를 쓰겠다
cmake --build .
make -j8
make install

열심히 설치되는 중..
드릅게 오래걸림
프로젝트안에 libs 디렉토리를 만들고 jar 와 so 파일을 복사해서 넣고
라이브러리 패스를 잡아줌
-Djava.library.path=libs
jar 랑 so 파일을 libs 에 옮겨야함

빌드후 .jar 위치


빌드후 so 위치


잘되나 보까..

잘되는듯..
반응형