Toybrick

MPP/RK MPI学习问题

bluelight3

注册会员

积分
125
楼主
发表于 2022-8-22 16:40:54    查看: 12685|回复: 16 | [复制链接]    打印 | 只看该作者
最近在学习瑞芯微的MPP/RK MPI,碰到了一些问题,请各位大神不吝赐教。

碰到的问题:
1.之前是在学习瑞芯微的MPP文档和demo,学习中途中在externel文件夹下发现了rk mpi相关文档。似乎rk mpi包含的功能更加丰富完善,请问一下 mpp 与 rk mpi的关系?
2.在学习rk mpi的过程中,试图交叉编译rk_mpi包含的测试代码,但是在make过程中出现了如下错误


在此之前,还提示缺少librockchip_mpp.so文件,将mpp demo编译之后生成的librockchip_mpp.so放到librockit.so同级文件夹下这个报错消失。

此外,在Linux虚拟机上进行了如下尝试
root@ubuntu:/home/topeet/gSir/rk3568/rockit_backUp/build# cd /usr/lib/x86_64-linux-gnu/
root@ubuntu:/usr/lib/x86_64-linux-gnu# file libdrm.so
libdrm.so: symbolic link to libdrm.so.2
root@ubuntu:/usr/lib/x86_64-linux-gnu# file libdrm.so.2
libdrm.so.2: symbolic link to libdrm.so.2.4.0

root@ubuntu:/usr/lib/x86_64-linux-gnu# file libdrm.so.2.4.0
libdrm.so.2.4.0: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=a2181b9804670894e9db0a5c1228c42be4aad0b6, stripped

自己认为似乎是因为依赖的lib为x86-64位的缘故,不知道是不是这个原因。如果是,想请问aarch64版本的libdrm.so及libasound.so在哪里下载
回复

使用道具 举报

bluelight3

注册会员

积分
125
沙发
 楼主| 发表于 2022-8-22 16:43:46 | 只看该作者
错误发不出来 大概就是缺少libdrm和libasound
回复

使用道具 举报

jefferyzhang

版主

积分
13578
板凳
发表于 2022-8-23 11:23:43 | 只看该作者
缺什么就用apt install装什么...
回复

使用道具 举报

bluelight3

注册会员

积分
125
地板
 楼主| 发表于 2022-8-23 13:27:52 | 只看该作者
jefferyzhang 发表于 2022-8-23 11:23
缺什么就用apt install装什么...

aarch64的这些lib怎么install啊.. 请大佬赐教
回复

使用道具 举报

bluelight3

注册会员

积分
125
5#
 楼主| 发表于 2022-8-23 14:37:54 | 只看该作者
ld: warning: libasound.so.2, needed by librockit.so, not found (try using -rpath or -rpath-link)
ld: warning: libdrm.so.2, needed by librockit.so, not found (try using -rpath or -rpath-link)
中间的错误是这样的,路径被我删掉了(论坛发帖带路径好像会被吞) ,反正大概是aarch64-linux-gnu/bin这个目录
回复

使用道具 举报

bluelight3

注册会员

积分
125
6#
 楼主| 发表于 2022-8-24 14:16:09 | 只看该作者
求助... 自己的虚拟机只有x86_64架构下的libdrm和libasound....
回复

使用道具 举报

jefferyzhang

版主

积分
13578
7#
发表于 2022-8-24 14:50:45 | 只看该作者
bluelight3 发表于 2022-8-24 14:16
求助... 自己的虚拟机只有x86_64架构下的libdrm和libasound....

你到底在问什么,mpp跟你x86虚拟机有什么关系
回复

使用道具 举报

bluelight3

注册会员

积分
125
8#
 楼主| 发表于 2022-8-24 15:56:03 | 只看该作者
jefferyzhang 发表于 2022-8-24 14:50
你到底在问什么,mpp跟你x86虚拟机有什么关系

就是我想在开发板上跑这个mpp平台的测试代码 需要aarch64的交叉编译器
然后mpp的测试代码依赖于librockit.so的这个库,这个库是aarch64架构的
并且这个库依赖于librockchip_mpp.so, libdrm.so, libasound.so 这三个文件
(这一点是在编译时报错才发现的)
第一个文件我想办法得到了,后面两个文件我在Ubuntu虚拟机中使用whereis命令
发现他们也存在,都存在于x86_64-linux-gnu文件夹下,大概是gcc的默认文件夹
然后用file命令发现这两个文件是x86_64架构的
想请问如何得到aarch64架构下的libdrm.so和libasound.so文件,否则测试代码无法编译
后续开发也肯定要依赖librockit.so这个库文件的
回复

使用道具 举报

jefferyzhang

版主

积分
13578
9#
发表于 2022-8-24 16:21:57 | 只看该作者
bluelight3 发表于 2022-8-24 15:56
就是我想在开发板上跑这个mpp平台的测试代码 需要aarch64的交叉编译器
然后mpp的测试代码依赖于librockit ...

不知道你在说什么,toybrick rk3588根本没有librockit.so的依赖.
你x86交叉编译的依赖跟你x86 host本身的库有什么关系!

libdrm.so就是drm标准库,asound.so就是alsa标准库,这两个文件源码很难找么
回复

使用道具 举报

bluelight3

注册会员

积分
125
10#
 楼主| 发表于 2022-8-25 09:27:55 | 只看该作者
jefferyzhang 发表于 2022-8-24 16:21
不知道你在说什么,toybrick rk3588根本没有librockit.so的依赖.
你x86交叉编译的依赖跟你x86 host本身的 ...

首先这边确实是我发错板块了,我购买的是3568,之前在3568板块发帖一直发不出来,我一开始以为是3568板块的问题,后来发现应该是论坛不能带我的错误消息里的链接。
其次我们是想用sdk中rk356x_linux 文件夹下的rk mpi平台,和mpp平台大概是有区别的。编译测试代码是有librockit.so依赖的
另外自己确实也是刚转linux嵌入式,有些标准库不太懂也不太好意思。 编译过程是发现有上述依赖的
可是虚拟机中的drm标准库和alsa标准库没有aarch64架构的(llibrockit.so这个文件是依赖于他们并且自身是
aarch64架构的)
还是谢谢大佬解答了
回复

使用道具 举报

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

本版积分规则

产品中心 购买渠道 开源社区 Wiki教程 资料下载 关于Toybrick


快速回复 返回顶部 返回列表