Kdenlive官方提供的是Ubuntu的编译方法,本问内容是在
openSUSE 15.2下编译方法,编译过程相同,只是依赖包名称上存在一些不同。
编译依赖条件: Qt >= 5.7, KF5 >= 5.50,MLT >= 6.20.0
如果你是第一次编译源码,那么你必须安装编译器套件后才可以编译代码。
sudo zypper install gcc gcc-c++ git cmake cmake-gui extra-cmake-modules libSM-devel
sudo zypper install karchive-devel kbookmarks-devel kcoreaddons-devel kconfig-devel \
kconfigwidgets-devel kdbusaddons-devel kio-devel kwidgetsaddons-devel \
knotifyconfig-devel knewstuff-devel kxmlgui-devel kdeclarative-devel \
knotifications-devel kguiaddons-devel ktextwidgets-devel purpose-devel \
kiconthemes-devel kdoctools-devel kcrash-devel kfilemetadata5-devel kio \
kinit libqt5-qtdeclarative-devel libqt5-qtsvg-devel libqt5-qtquickcontrols \
libqt5-qtmultimedia-devel libQt5QuickControls2-devel breeze5-icons \
libmlt-devel libmlt++-devel rttr-devel libqt5-qtnetworkauth-devel
从“21.08.1”版本之后就需要使用
mlt++7.0.0版本库了,所以如果不满足要求的用户可以自己升级或者按照下面方法源码安装一下。
下载源码地址 https://github.com/mltframework/mlt/releases/latest
当前2021/09时间的最新版本为7.0.1,我们就以这个版本为例:
wget -c https://github.com/mltframework/mlt/releases/download/v7.0.1/mlt-7.0.1.tar.gz
tar zxvf mlt-7.0.1.tar.gz
cd mlt-7.0.1
mkdir build/
cd ./build/
cmake -DCMAKE_INSTALL_PREFIX=/usr ../
make -j$(nproc)
# 安装
sudo make install
如果不希望影响当前系统使用的mlt库,可以自定义安装目录,例如: -DCMAKE_INSTALL_PREFIX=/apps/mlt7。
自定义mlt++库时需要设置一些环境变量,保证编译环境可以找到这个库,例如设置 PKG_CONFIG_PATH 变量:
export PKG_CONFIG_PATH=/apps/mlt7/lib64/pkgconfig:$PKG_CONFIG_PATH
export PATH=/apps/mlt7/bin:$PATH
当前2021/09最新版本是 v21.08.1(使用命令
git tag|tail -5获取)
git clone https://invent.kde.org/multimedia/kdenlive
git checkout v21.08.1
运动跟踪功能需要使用opencv,因此需要先下载opencv模块,然后编译再使用
-DMOD_OPENCV=ON参数重新编译MLT才可以支持。
wget https://github.com/opencv/opencv/archive/4.3.0.tar.gz -O opencv-4.3.0.tar.gz
wget https://github.com/opencv/opencv_contrib/archive/4.3.0.tar.gz -O opencv_contrib-4.3.0.tar.gz
tar xaf opencv-4.3.0.tar.gz
tar xaf opencv_contrib-4.3.0.tar.gz
cd opencv-4.3.0
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DOPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-4.3.0/modules \
-DOPENCV_GENERATE_PKGCONFIG=ON -DBUILD_LIST=tracking -DOPENCV_BUILD_3RDPARTY_LIBS=OFF
如果是使用自定义环境记得执行如下两个环境变量设置:
git clone https://github.com/mltframework/mlt.git
INSTALL_PREFIX=/apps/mlt7 # or any other choice
# Only if you want to compile MLT manually
cd mlt
mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=$INSTALL_PREFIX -DMOD_OPENCV=ON
make -j$(nproc)
make install
export PKG_CONFIG_PATH=/apps/mlt7/lib64/pkgconfig:$PKG_CONFIG_PATH
export PATH=/apps/mlt7/bin:$PATH
接下来,开始编译代码吧:
git clone https://invent.kde.org/multimedia/kdenlive.git
cd kdenlive
git checkout v21.08.1
mkdir build
cd build
cmake .. -DKDE_INSTALL_USE_QT_SYS_PATHS=ON -DCMAKE_INSTALL_PREFIX=/usr -DRELEASE_BUILD=OFF
make -j$(nproc)
# 安装编译完的kdenlive程序
sudo make install
安装好后,可以直接执行 kdenlive 验证是否成功运行。