Эти шаги, скорее всего, являются одним из коротких путей к цели.Местоположение начального каталога не имеет значения, так как первая строка гарантирует нормальный (~ / build) начальный рабочий каталог:
cd ~/ && mkdir build && cd build/
sudo yum install git cmake gcc-c++
Сборка libav для кодеков (опция --prefix, вероятно, не нужна, но это проверенои рабочая версия)
wget https://libav.org/releases/libav-12.3.tar.xz
tar xzf libav-12.3.tar.gz
mkdir libav-12.3-build && cd libav-12.3-build
/home/ec2-user/build/libav-12.3/configure --prefix=/usr --enable-shared --disable-static
make && sudo make install
По умолчанию в программе amazon по умолчанию pkg-config вещь не учитывает все стандартные пути, поэтому следующие строки символически связывают соответствующие файлы * .pc с местом, где находится pkg-config (используется opencv) может найти их.
cd /usr/share/pkgconfig
for t in `find /usr -name "libav*.pc"`; do sudo ln -s $t .; done
cd ~/build
Разделяемые библиотеки libav также должны быть доступны компоновщику
echo /usr/lib/ > libav.conf
sudo mv libav.conf /etc/ld.so.conf.d/
sudo ldconfig
Проверьте доступность libav pkg-config с помощью команды
pkg-config --list-all
и убедитесь, что libavcodec,Перечислены пакеты libavformat, libav ... и т. д.
На этом этапе библиотека opencv может быть собрана и установлена с использованием инструментов по умолчанию
git clone https://github.com/Itseez/opencv.git
mv opencv opencv.git
cd opencv.git/
git branch -r
git checkout 3.4
cd .. && mkdir opencv && cd opencv
cmake ../opencv.git/ && make && sudo make install
cd ..
В конечном двоичном файле требуется путь компоновщикасодержит путь '' '/ usr / local / lib64' ''.
echo /usr/local/lib64 > opencv.conf
sudo mv opencv.conf /etc/ld.so.conf.d/
sudo ldconfig
Последний трюк - это включение pkg-config для opencv
cd /usr/share/pkg-config && ln -s `find /usr/local/ -name "opencv.pc"` . && cd ~/build
Проверьте pkg-конфигурировать доступность командой
pkg-config --list-all
и проверить, что opencv присутствует в списке.
Готово