![](/img/trans.png)
[英]Compiling FFMPEG with x265 has ERROR: x265 not found using pkg-config
[英]FFmpeg build error pkg-config can't find x265 /usr/bin/ld: cannot find -lnuma: No such file or directory
我正在嘗試使用源代碼中的自定義庫構建 ffmpeg。
我的腳本中的每個 package 都按應有的方式構建,但是當它有時間使用所有包運行 ffmpeg 構建時,它會失敗,並在 ffmpeg 構建日志的底部顯示一個奇怪的錯誤代碼。
BEGIN /home/jman/tmp/ffconf.JouXp6kg/test.c
1 #include <x265.h>
2 #include <stdint.h>
3 long check_x265_api_get(void) { return (long) x265_api_get; }
4 int main(void) { int ret = 0;
5 ret |= ((intptr_t)check_x265_api_get) & 0xFFFF;
6 return ret; }
END /home/jman/tmp/ffconf.JouXp6kg/test.c
gcc -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -DPIC -I/home/jman/Documents/ffmpeg-build/workspace/include -I/home/jman/Documents/ffmpeg-build/workspace/include/lilv-0 -I/usr/local/cuda/include -std=c11 -fomit-frame-pointer -fPIC -I/home/jman/Documents/ffmpeg-build/workspace/include -pthread -DLILV_STATIC -DSRATOM_STATIC -DSORD_STATIC -DSERD_STATIC -I/home/jman/Documents/ffmpeg-build/workspace/include/lilv-0 -I/home/jman/Documents/ffmpeg-build/workspace/include/sratom-0 -I/home/jman/Documents/ffmpeg-build/workspace/include -I/home/jman/Documents/ffmpeg-build/workspace/include/sord-0 -I/home/jman/Documents/ffmpeg-build/workspace/include/serd-0 -I/home/jman/Documents/ffmpeg-build/workspace/include -I/home/jman/Documents/ffmpeg-build/workspace/include/opus -I/home/jman/Documents/ffmpeg-build/workspace/include/opus -I/home/jman/Documents/ffmpeg-build/workspace/include -I/home/jman/Documents/ffmpeg-build/workspace/include/srt -I/home/jman/Documents/ffmpeg-build/workspace/include/svt-av1 -I/home/jman/Documents/ffmpeg-build/workspace/include -I/home/jman/Documents/ffmpeg-build/workspace/include -I/home/jman/Documents/ffmpeg-build/workspace/include -I/home/jman/Documents/ffmpeg-build/workspace/include -I/home/jman/Documents/ffmpeg-build/workspace/include -I/home/jman/Documents/ffmpeg-build/workspace/include -I/home/jman/Documents/ffmpeg-build/workspace/include -I/home/jman/Documents/ffmpeg-build/workspace/include -L/usr/lib/x86_64-linux-gnu -c -o /home/jman/tmp/ffconf.JouXp6kg/test.o /home/jman/tmp/ffconf.JouXp6kg/test.c
gcc -L/home/jman/Documents/ffmpeg-build/workspace/lib -L/usr/local/cuda/lib64 -Wl,--as-needed -Wl,-z,noexecstack -L/usr/lib/x86_64-linux-gnu -o /home/jman/tmp/ffconf.JouXp6kg/test /home/jman/tmp/ffconf.JouXp6kg/test.o -lx265 -lstdc++ -lm -lgcc_s -lgcc -lgcc_s -lgcc -lrt -ldl -lnuma -ldl -lpthread -lm -lz
/usr/bin/ld: cannot find -lnuma: No such file or directory
collect2: error: ld returned 1 exit status
ERROR: x265 not found using pkg-config
有誰知道這個-lnuma
指的是什么?
就在幾天前,當我最后一次運行我的構建腳本時我沒有遇到任何問題,然后突然出現了這個問題。
這是我的完整構建腳本: FFmpeg-build.sh
更新:Per Allan Winds 的說明是 output:
find /usr/lib -name libnuma\* -ls
4987897 48 -rw-r--r-- 1 root root 48152 Mar 24 2022 /usr/lib/x86_64-linux-gnu/libnuma.so.1.0.0
4992286 76 -rw-r--r-- 1 root root 77086 Mar 24 2022 /usr/lib/x86_64-linux-gnu/libnuma.a
4987896 0 lrwxrwxrwx 1 root root 16 Dec 29 12:03 /usr/lib/x86_64-linux-gnu/libnuma.so.1 -> libnuma.so.1.0.0
4992287 0 lrwxrwxrwx 1 root root 16 Mar 24 2022 /usr/lib/x86_64-linux-gnu/libnuma.so -> libnuma.so.1.0.0
這意味着您的構建在嘗試鏈接numa
庫時失敗。 linker 將使用內置路徑以及 -L 指定的路徑搜索庫。 具體來說,-lnuma 將搜索 libnuma.a 和 libnuma.so(per man ld(1))。 從 libnuma.so 到實際庫的符號鏈接鏈接是 libnuma-dev package。您安裝 package 時:
sudo apt install libnuma-dev
-dev package 取決於實際庫 libnuma1。 如果需要,您可以直接使用-l:libnuma.so.1
而不是-lnuma
指定版本庫。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.