+To build findobject and the other plugins using OpenCV, access the src using git:
+
+\begin{lstlisting}[style=sh]
+git clone -depth 1 "git://git.cinelerra-gg.org/goodguy/cinelerra.git" cinelerra5
+\end{lstlisting}
+To use the latest version, the method for creating a tarball is:
+
+\begin{enumerate}
+ \item download both opencv and opencv\_contrib source tarballs from the web:
+ {\small \url{https://sourceforge.net/projects/opencvlibrary/files/4.2.0/}}
+ {\small \url{https://github.com/opencv/opencv\_contrib/archive/4.2.0.tar.gz}}
+ \item create a temporary directory opencv\_src and unpack the tarballs into the src directory
+ \item rename these sources to opencv and opencv\_contrib
+ \item run a test build, using opencv\_build for config:
+\end{enumerate}
+
+\begin{lstlisting}[style=sh]
+cd opencv\_src
+mkdir build
+cd build && cmake \
+ -DCMAKE\_BUILD\_TYPE=RELEASE \
+ -DWITH\_IPP=OFF \
+ -DWITH\_LAPACK=OFF \
+ -DWITH\_GPHOTO2=OFF \
+ -DBUILD\_SHARED\_LIBS=ON \
+ -DINSTALL\_C\_EXAMPLES=ON \
+ -DINSTALL\_PYTHON\_EXAMPLES=ON \
+ -DBUILD\_EXAMPLES=ON .. \
+ -DBUILD\_opencv\_python3=no \
+ -DCMAKE\_INSTALL\_PREFIX=/usr/local \
+ -DOPENCV\_EXTRA\_MODULES\_PATH="\$(opencv)\_contrib/modules/"
+\end{lstlisting}
+
+Next configure the build, but add the \texttt{-{}-with-opencv} configure parameter. An example
+of usage of shown next.
+
+\begin{lstlisting}[style=sh]
+cd <path>/cinelerra-5.1
+./autogen.sh
+./configure <add std params, eg: --with-single-user> --with-findobect=sta
+--with-opencv may be set to [<bld>][,<src>]
+bld=typ sta,dyn,sys: sta=static, dyn=shared, sys=system libraries
+src=typ git,tar,git=url,tar=url: git (default git\_url), tar (default: tar\_url)
+
+# Use one of the following:
+--with-opencv=sta
+--with-opencv=dyn
+--with-opencv=sta,tar=https://cinelerra-gg.org/download/opencv/opencv-20180401.tgz
+
+# For example: ./configure <params> --with-opencv=sta,git
+\end{lstlisting}
+
+Once thirdparty/opencv is built, it will be reused. To remove \texttt{thirdparty/opencv*}, use
+\texttt{mrclean}.
+
+Ordinarily OpenCV requires the network to download pieces. But to avoid downloading the same
+source multiple times as you do test builds, you can instead use the following procedure.
+
+\begin{enumerate}
+ \item Create a new opencv\_src directory with the needed source (src) files, plus
+the missing pieces in ./opencv/.cache/; This source base does not require the network, and
+so is usable for batch builds.
+ \item Store the tarballs in a safe location, and reference them from an httpd server
+running locally on the build system. for example:\newline
+/var/www/html/cinelerra.patch\newline
+/var/www/html/opencv-20180401.tgz -> /mnt0/opencv-20180401.tgz\newline
+/var/www/html/opencv-20200306.tgz -> /mnt0/opencv-20200306.tgz\newline
+ \item systemctl start httpd
+\end{enumerate}