Firefly开源社区

123
发表新贴

rk3308 buildroot 编译出错

44

积分

0

威望

0

贡献

技术小白

积分
44
发表于 2021-8-12 17:03:42     
执行 ./build.sh roc-rk3308b-cc-plus_rgb-4.0inch_qt_release_BoardConfig.mk
./build.sh
后 出现如下错误

/usr/bin/make  all-recursive
Making all in ext
Making all in libav
  CC       libgstlibav_la-gstav.lo
  CC       libgstlibav_la-gstavcodecmap.lo
  CC       libgstlibav_la-gstavaudenc.lo
  CC       libgstlibav_la-gstavauddec.lo
  CC       libgstlibav_la-gstavvidenc.lo
  CC       libgstlibav_la-gstavviddec.lo
  CC       libgstlibav_la-gstavcfg.lo
gstavviddec.c: 在函数‘gst_ffmpegviddec_class_init’中:
gstavviddec.c:242:15: 错误:‘CODEC_CAP_FRAME_THREADS’未声明(在此函数内第一次使用)
   if (caps & (CODEC_CAP_FRAME_THREADS | CODEC_CAP_SLICE_THREADS)) {
               ^~~~~~~~~~~~~~~~~~~~~~~
gstavviddec.c:242:15: 附注:每个未声明的标识符在其出现的函数内只报告一次
gstavviddec.c:242:41: 错误:‘CODEC_CAP_SLICE_THREADS’未声明(在此函数内第一次使用)
   if (caps & (CODEC_CAP_FRAME_THREADS | CODEC_CAP_SLICE_THREADS)) {
                                         ^~~~~~~~~~~~~~~~~~~~~~~
gstavauddec.c: 在函数‘gst_ffmpegauddec_propose_allocation’中:
gstavviddec.c: 在函数‘gst_ffmpegviddec_open’中:
gstavviddec.c:372:7: 错误:‘CODEC_FLAG_OUTPUT_CORRUPT’未声明(在此函数内第一次使用)
       CODEC_FLAG_OUTPUT_CORRUPT, ffmpegdec->output_corrupt);
       ^~~~~~~~~~~~~~~~~~~~~~~~~
gstavauddec.c:290:20: 错误:‘FF_INPUT_BUFFER_PADDING_SIZE’未声明(在此函数内第一次使用)
   params.padding = FF_INPUT_BUFFER_PADDING_SIZE;
回复

使用道具 举报

44

积分

0

威望

0

贡献

技术小白

积分
44
发表于 2021-8-12 17:46:27     
cheney@LinuxPC:~/work/source$ uname -a
Linux LinuxPC 4.15.0-142-generic #146~16.04.1-Ubuntu SMP Tue Apr 13 09:27:15 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
回复

使用道具 举报

891

积分

18

威望

20

贡献

技术大神

Rank: 3Rank: 3

积分
891
发表于 2021-8-12 23:48:31     
可以检查一下是否有安装包安装漏掉了,然后可以尝试一下source buildroot/build/envsetup.sh后再执行
回复

使用道具 举报

44

积分

0

威望

0

贡献

技术小白

积分
44
发表于 2021-8-13 11:00:07     
我把 安装的命令 重新检查一下
cheney@LinuxPC:~/work/source$ sudo apt-get install libfile-which-perl sed make binutils gcc g++ bash \
> patch gzip bzip2 perl tar cpio python unzip rsync file bc libmpc3 \
> git repo texinfo pkg-config cmake tree
[sudo] cheney 的密码:
正在读取软件包列表... 完成
正在分析软件包的依赖关系树      
正在读取状态信息... 完成      
bc 已经是最新版 (1.06.95-9build1)。
g++ 已经是最新版 (4:5.3.1-1ubuntu1)。
gcc 已经是最新版 (4:5.3.1-1ubuntu1)。
gzip 已经是最新版 (1.6-4ubuntu1)。
libfile-which-perl 已经是最新版 (1.19-1)。
libmpc3 已经是最新版 (1.0.3-1)。
make 已经是最新版 (4.1-6)。
pkg-config 已经是最新版 (0.29.1-0ubuntu1)。
sed 已经是最新版 (4.2.2-7)。
repo 已经是最新版 (1.12.32-2)。
texinfo 已经是最新版 (6.1.0.dfsg.1-5)。
tree 已经是最新版 (1.7.0-3)。
bash 已经是最新版 (4.3-14ubuntu1.4)。
binutils 已经是最新版 (2.26.1-1ubuntu1~16.04.8)。
bzip2 已经是最新版 (1.0.6-8ubuntu0.2)。
cmake 已经是最新版 (3.5.1-1ubuntu3)。
cpio 已经是最新版 (2.11+dfsg-5ubuntu1.1)。
file 已经是最新版 (1:5.25-2ubuntu1.4)。
git 已经是最新版 (1:2.7.4-0ubuntu1.10)。
patch 已经是最新版 (2.7.5-1ubuntu0.16.04.2)。
perl 已经是最新版 (5.22.1-9ubuntu0.9)。
python 已经是最新版 (2.7.12-1~16.04)。
rsync 已经是最新版 (3.1.1-3ubuntu1.3)。
tar 已经是最新版 (1.28-2.1ubuntu0.2)。
unzip 已经是最新版 (6.0-20ubuntu1.1)。
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。
cheney@LinuxPC:~/work/source$ sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl \
> zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev \
> x11proto-core-dev libx11-dev lib32z1-dev ccache libgl1-mesa-dev \
> libxml2-utils xsltproc unzip device-tree-compiler
正在读取软件包列表... 完成
正在分析软件包的依赖关系树      
正在读取状态信息... 完成      
bison 已经是最新版 (2:3.0.4.dfsg-1)。
build-essential 已经是最新版 (12.1ubuntu2)。
ccache 已经是最新版 (3.2.4-1)。
device-tree-compiler 已经是最新版 (1.4.0+dfsg-2)。
flex 已经是最新版 (2.6.0-11)。
g++-multilib 已经是最新版 (4:5.3.1-1ubuntu1)。
gcc-multilib 已经是最新版 (4:5.3.1-1ubuntu1)。
lib32ncurses5-dev 已经是最新版 (6.0+20160213-1ubuntu1)。
zip 已经是最新版 (3.0-11)。
gperf 已经是最新版 (3.0.4-2)。
curl 已经是最新版 (7.47.0-1ubuntu2.19)。
git-core 已经是最新版 (1:2.7.4-0ubuntu1.10)。
gnupg 已经是最新版 (1.4.20-1ubuntu3.3)。
lib32z1-dev 已经是最新版 (1:1.2.8.dfsg-2ubuntu4.3)。
libc6-dev-i386 已经是最新版 (2.23-0ubuntu11.3)。
libgl1-mesa-dev 已经是最新版 (18.0.5-0ubuntu0~16.04.1)。
libx11-dev 已经是最新版 (2:1.6.3-1ubuntu2.2)。
libxml2-utils 已经是最新版 (2.9.3+dfsg1-1ubuntu0.7)。
unzip 已经是最新版 (6.0-20ubuntu1.1)。
x11proto-core-dev 已经是最新版 (7.0.31-1~ubuntu16.04.2)。
xsltproc 已经是最新版 (1.1.28-2.1ubuntu0.3)。
zlib1g-dev 已经是最新版 (1:1.2.8.dfsg-2ubuntu4.3)。
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。
cheney@LinuxPC:~/work/source$ sudo apt-get install genext2fs gawk libncurses5-dev
正在读取软件包列表... 完成
正在分析软件包的依赖关系树      
正在读取状态信息... 完成      
gawk 已经是最新版 (1:4.1.3+dfsg-0.1)。
libncurses5-dev 已经是最新版 (6.0+20160213-1ubuntu1)。
genext2fs 已经是最新版 (1.4.1-4build1)。
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。
cheney@LinuxPC:~/work/source$

回复

使用道具 举报

44

积分

0

威望

0

贡献

技术小白

积分
44
发表于 2021-8-13 11:02:49     
md5sum Firefly-RK3308_Linux_SDK_git_20190924.7z
97837ef273541b45ab12260db6c01fdd  Firefly-RK3308_Linux_SDK_git_20190924.7z

mkdir -p ~/prj/Firefly-RK3308
cd ~/prj/Firefly-RK3308
7zr x Firefly-RK3308_Linux_SDK_git_20190924.7z
git reset --hard HEAD

git remote -v
gitlab git@gitlab.com/TeeFirefly/rk3308-linux.git (fetch)
gitlab git@gitlab.com/TeeFirefly/rk3308-linux.git (push)

git remote set-url gitlab https://gitlab.com/TeeFirefly/rk3308-linux.git

git pull gitlab firefly:firefly

rm buildroot/output -rf

source buildroot/build/envsetup.sh 选4

make


错误 依旧存在

回复

使用道具 举报

44

积分

0

威望

0

贡献

技术小白

积分
44
发表于 2021-8-13 11:06:29     
cheney@LinuxPC:~/work/source$ make
umask 0022 && make -C /home/cheney/work/source/buildroot O=/home/cheney/work/source/buildroot/output/firefly_rk3308_qt_release
>>> gst1-libav 1.14.4 Building
PATH="/home/cheney/work/source/buildroot/output/firefly_rk3308_qt_release/host/bin:/home/cheney/work/source/buildroot/output/firefly_rk3308_qt_release/host/sbin:/home/cheney/bin:/home/cheney/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin" RecoveryNoUi=true  /usr/bin/make -j24  -C /home/cheney/work/source/buildroot/output/firefly_rk3308_qt_release/build/gst1-libav-1.14.4/
/usr/bin/make  all-recursive
Making all in ext
Making all in libav
  CC       libgstlibav_la-gstav.lo
  CC       libgstlibav_la-gstavcodecmap.lo
  CC       libgstlibav_la-gstavauddec.lo
  CC       libgstlibav_la-gstavvidenc.lo
  CC       libgstlibav_la-gstavcfg.lo
  CC       libgstlibav_la-gstavviddec.lo
  CC       libgstlibav_la-gstavaudenc.lo
gstav.c:33:39: 致命错误:libavfilter/avfiltergraph.h:没有那个文件或目录
#include <libavfilter/avfiltergraph.h>
                                       ^
编译中断。
gstavaudenc.c: 在函数‘gst_ffmpegaudenc_set_format’中:
gstavaudenc.c:282:5: 警告:‘rtp_payload_size’ is deprecated [-Wdeprecated-declarations]
     ffmpegaudenc->context->rtp_payload_size = ffmpegaudenc->rtp_payload_size;
     ^~~~~~~~~~~~
In file included from gstavaudenc.c:33:0:
/home/cheney/work/source/buildroot/output/firefly_rk3308_qt_release/host/aarch64-rockchip-linux-gnu/sysroot/usr/include/libavcodec/avcodec.h:2520:9: 附注:在此声明
     int rtp_payload_size;   /* The size of the RTP payload: the coder will  */
         ^~~~~~~~~~~~~~~~
gstavaudenc.c:286:24: 错误:‘AVCodecContext {或称 struct AVCodecContext}’ has no member named ‘rc_strategy’; did you mean ‘b_frame_strategy’?
   ffmpegaudenc->context->rc_strategy = 2;
                        ^~
gstavaudenc.c:287:3: 警告:‘b_frame_strategy’ is deprecated [-Wdeprecated-declarations]
   ffmpegaudenc->context->b_frame_strategy = 0;
   ^~~~~~~~~~~~
In file included from gstavaudenc.c:33:0:
/home/cheney/work/source/buildroot/output/firefly_rk3308_qt_release/host/aarch64-rockchip-linux-gnu/sysroot/usr/include/libavcodec/avcodec.h:1816:9: 附注:在此声明
     int b_frame_strategy;
         ^~~~~~~~~~~~~~~~
gstavaudenc.c:288:3: 警告:‘coder_type’ is deprecated [-Wdeprecated-declarations]
   ffmpegaudenc->context->coder_type = 0;
   ^~~~~~~~~~~~
In file included from gstavaudenc.c:33:0:
/home/cheney/work/source/buildroot/output/firefly_rk3308_qt_release/host/aarch64-rockchip-linux-gnu/sysroot/usr/include/libavcodec/avcodec.h:2455:9: 附注:在此声明
     int coder_type;
         ^~~~~~~~~~
gstavaudenc.c:289:3: 警告:‘context_model’ is deprecated [-Wdeprecated-declarations]
   ffmpegaudenc->context->context_model = 0;
   ^~~~~~~~~~~~
In file included from gstavaudenc.c:33:0:
/home/cheney/work/source/buildroot/output/firefly_rk3308_qt_release/host/aarch64-rockchip-linux-gnu/sysroot/usr/include/libavcodec/avcodec.h:2461:9: 附注:在此声明
     int context_model;
         ^~~~~~~~~~~~~
gstavaudenc.c:290:3: 警告:‘scenechange_threshold’ is deprecated [-Wdeprecated-declarations]
   ffmpegaudenc->context->scenechange_threshold = 0;
   ^~~~~~~~~~~~
In file included from gstavaudenc.c:33:0:
/home/cheney/work/source/buildroot/output/firefly_rk3308_qt_release/host/aarch64-rockchip-linux-gnu/sysroot/usr/include/libavcodec/avcodec.h:2052:9: 附注:在此声明
     int scenechange_threshold;
         ^~~~~~~~~~~~~~~~~~~~~
gstavaudenc.c:333:44: 错误:‘CODEC_CAP_EXPERIMENTAL’未声明(在此函数内第一次使用)
     if ((oclass->in_plugin->capabilities & CODEC_CAP_EXPERIMENTAL) &&
回复

使用道具 举报

891

积分

18

威望

20

贡献

技术大神

Rank: 3Rank: 3

积分
891
发表于 2021-8-13 15:16:58     
本帖最后由 zyk 于 2021-8-13 15:23 编辑

有试过单独编译吗,之前是否有成功编译过buildroot
回复

使用道具 举报

44

积分

0

威望

0

贡献

技术小白

积分
44
发表于 2021-8-13 15:38:25     
buildroot 没有成功过,uboot 和kernel成功了,后面那一次,就是单独编译的,也是一样的错误
回复

使用道具 举报

196

积分

0

威望

0

贡献

技术小白

积分
196
发表于 2021-8-13 15:45:17     
删除 buildroot/output/firefly_rk3308_qt_release/build/ffmpeg-3.4.2,重新试下
回复

使用道具 举报

891

积分

18

威望

20

贡献

技术大神

Rank: 3Rank: 3

积分
891
发表于 2021-8-13 15:46:32     
有试过执行sudo apt-get update && sudo apt-get upgrade再安装软件包吗
回复

使用道具 举报

返回列表
123
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表