解壓
./configure \
--enable-nonfree \
--enable-shared \
--disable-static \
--enable-gpl \
--enable-libx264 \
--enable-ffmpeg \
--disable-asm \
--disable-optimizations \
--disable-stripping
--prefix
: 指定安裝路徑
配置 makefile 遇到的一些問題參考問題記錄裡的內容
make
make
install
編譯安裝之後遇到的問題
error: libx264 not found
原因:libx264
庫沒有找到
解決方法: 配置一下環境變數
指定的路徑就是x264
的安裝路徑, 在lib
目錄下面的pkgconfig
目錄
warning: using libfdk without pkg-config
warning: using libx264 without pkg-config
這個問題我的解決方式是安裝pkg-config
這個安裝包
sudo apt install pkg-config
在去執行configure
就沒有錯誤了
編譯之後檢視目標檔案的鏈結情況ldd ffmpeg
看到的結果是有幾個庫沒有找到鏈結庫檔案, 顯示*** not found
, 但是庫檔案是存在的.
查詢資料得知, 由於我們的編譯安裝路徑是在自己的目錄下,ld
鏈結找不到這個庫檔案, 需要將庫的安裝路徑新增到ld config
中.
# 編輯 /etc/ld.conf 檔案
vim /etc/ld.conf
include ld.so.conf.d/*.conf
# 然後執行命令
ldconfig
當然, 更好的方式不是編輯/etc/ld.conf
檔案, 而是在/etc/ld.conf.d/
目錄下建立乙個屬於自己的檔案, 不過需要注意的是, 檔案的結尾必須是以.conf
為字尾.
最後說一下
pkg-config
是乙個第三方庫的管理工具, 當需要引用第三方庫時, 通常的做法是將庫的標頭檔案路徑和庫的路徑都加到編譯選項中, 如果使用pkg-config
會幫我們省去這一步驟.
第三方庫在編譯完成之後會在 庫的安裝路徑之下生成乙個pkgconfig
的目錄, 如果編譯的時候需要第三方庫, 直接將這個目錄的路徑設定到pkg_config_path
環境變數中, 在編譯的時候會去自動查詢第三方庫.
參考鏈結
鏈結出錯
pkg-config 介紹
FFmpeg編譯記錄
參照官方wiki編譯,鏈結為 一 copy and paste the whole code box for each step.sudo apt get update sudo apt get y install autoconf automake build essential git liba...
FFMPEG交叉編譯記錄
記錄一下自己踩過的坑,linux小白 1 ndk版本17之後使用clang編譯器,不使用gcc 2 初裝linux可能未安裝clang編譯器,需要先檢查下 終端輸入clang,若提示 not input file 則已安裝 sudo yum install epel release sudo yum...
opencv編譯相關問題記錄
在編譯opencv時,一般都是編譯成為動態庫,但是有時為了方便移植或者在其他地方安裝,會需要將其編譯成靜態庫的形式。這個時候只需要將cmake的 build shared libs 引數設為 off即可 可以採用如下命令來進行編譯 cmake d cmake build type release d...