Comments (1)
i cooked a docker file then build it, it worked. Would be great to have env variable to enable it.
FROM denismakogon/gocv-alpine:4.0.1-buildstage as build-stage
ENV OPENCV_VERSION=4.0.1
ENV BUILD="ca-certificates \
git \
build-base \
musl-dev \
alpine-sdk \
make \
gcc \
g++ \
libc-dev \
linux-headers \
libjpeg-turbo \
libpng \
libwebp \
libwebp-dev \
tiff \
libavc1394 \
jasper-libs \
openblas \
libgphoto2 \
gstreamer \
gst-plugins-base"
ENV DEV="clang clang-dev cmake pkgconf \
openblas-dev gstreamer-dev gst-plugins-base-dev \
libgphoto2-dev libjpeg-turbo-dev libpng-dev \
tiff-dev jasper-dev libavc1394-dev"
RUN apk update && \
apk add --no-cache ${BUILD} ${DEV}
RUN mkdir /tmp/opencv && \
cd /tmp/opencv && \
wget -O opencv.zip https://github.com/opencv/opencv/archive/${OPENCV_VERSION}.zip && \
unzip opencv.zip && \
wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/${OPENCV_VERSION}.zip && \
unzip opencv_contrib.zip && \
mkdir /tmp/opencv/opencv-${OPENCV_VERSION}/build && cd /tmp/opencv/opencv-${OPENCV_VERSION}/build && \
cmake \
-D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D OPENCV_EXTRA_MODULES_PATH=/tmp/opencv/opencv_contrib-${OPENCV_VERSION}/modules \
-D WITH_FFMPEG=YES \
-D OPENCV_ENABLE_NONFREE=YES \
-D INSTALL_C_EXAMPLES=NO \
-D INSTALL_PYTHON_EXAMPLES=NO \
-D BUILD_ANDROID_EXAMPLES=NO \
-D BUILD_DOCS=NO \
-D BUILD_TESTS=NO \
-D BUILD_PERF_TESTS=NO \
-D BUILD_EXAMPLES=NO \
-D BUILD_opencv_java=NO \
-D BUILD_opencv_python=NO \
-D BUILD_opencv_python2=NO \
-D BUILD_opencv_python3=NO \
-D OPENCV_GENERATE_PKGCONFIG=YES .. && \
make -j4 && \
make install && \
cd && rm -rf /tmp/opencv
RUN apk del ${DEV_DEPS} && \
rm -rf /var/cache/apk/*
ENV PKG_CONFIG_PATH /usr/local/lib64/pkgconfig
ENV LD_LIBRARY_PATH /usr/local/lib64
ENV CGO_CPPFLAGS -I/usr/local/include
ENV CGO_CXXFLAGS "--std=c++1z"
ENV CGO_LDFLAGS "-L/usr/local/lib -lopencv_core -lopencv_face -lopencv_videoio -lopencv_imgproc -lopencv_highgui -lopencv_imgcodecs -lopencv_objdetect -lopencv_features2d -lopencv_video -lopencv_dnn -lopencv_xfeatures2d -lopencv_plot -lopencv_tracking"
FROM build-stage
RUN go get -u -d gocv.io/x/gocv
RUN cd $GOPATH/src/gocv.io/x/gocv && go build -o $GOPATH/bin/gocv-version ./cmd/version/main.go
RUN go env
RUN mkdir -p /go/src/opencv
WORKDIR /go/src/opencv
COPY . .
ENTRYPOINT ["go", "run", "main.go"]
from gocv-alpine.
Related Issues (11)
- gocv.io/x/gocv.NewWindow() exception HOT 5
- Dockerfile symbol not found
- OpenCV 4 compatible image HOT 1
- libavcodec.so symbols not found HOT 1
- Unable to link go app against gocv in container
- when update opencv to 4.1.0? HOT 4
- Upgrade to Golang v1.20
- error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory HOT 2
- Not updated to OpenCV4 HOT 4
- 4.0.1 runtime is not building properly HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gocv-alpine.