在Qt中移植VPU编解码程序时遇到的问题

标签: Qt
1218人阅读 评论(1) 收藏 举报
分类:


在使用freescale开发板实现VPU的硬编码过程中,将测试程序中关于vpu编码函数移植到Qt中,在pro文件中包含 "vpu_lib.h"、"vpu_io.h"的文件路径以及对应的链接库文件:
  INCLUDEPATH  += "/mnt/hgfs/window_share/linux-3.0.35/include"
  INCLUDEPATH  += "/home/imx6/rootfs/usr/include"
  LIBS += -L"/home/imx6/rootfs/usr/lib" -lvpu


在源文件中包含了vpu的两个头文件:
#include "vpu_lib.h"
#include "vpu_io.h"


但会出现如下错误提示,经过排查,上面的路径设置都没有问题,那么问题在哪呢?
undefined reference to `vpu_Init(void*)'
undefined reference to `vpu_GetVersionInfo(vpu_versioninfo*)'
undefined reference to `vpu_UnInit()'
undefined reference to `IOGetPhyMem(vpu_mem_desc*)'
undefined reference to `IOGetVirtMem(vpu_mem_desc*)'
undefined reference to `vpu_DecOpen(CodecInst**,........)


解决办法:
对于在C++中调用C语言编写的函数或C编译器生成的链接库文件,需要添加extern "C"{ },因为C编译器编译生成的函数名与C++编译器生成的函数名不同的。
在源文件中包含了vpu的两个头文件则修改为如下形式即可运行通过:
#ifdef __cplusplus
extern "C" {
#endif
#include "vpu_lib.h"
#include "vpu_io.h"
#ifdef __cplusplus
}

#endif


查看评论

mxc_vpu_test的获取

最近要做解码方面的工作,首先呢是学习官方的一个测试程序和文档。得到这个测试程序一周前了,具体细节都忘了,在此整理一下思路,即使不从事嵌入式这块,别过一段时间什么都没有留下。             ...
  • alihonglong
  • alihonglong
  • 2014-05-17 12:15:46
  • 3061

飞思卡尔 I.MX6Q-vpu视频编解码

前言 对应使用飞思卡尔的vpu进行硬件编解码,你需要配置出你linux下LTIB环境,导出imx-test中的mxc_vpu_test源码,这方面的内容在之前文档已经说明,可以去查看,这篇文章主要...
  • u012478275
  • u012478275
  • 2016-04-25 16:19:57
  • 7589

VPU_API文档-imx6

  • 2018年02月27日 15:53
  • 444KB
  • 下载

I.MX6Q(TQIMX6Q/TQE9)学习笔记——新版BSP之LCD移植

经过前面的移植,eMMC已经可以在tqimx6q上正常运行了,本文将来移植LCD驱动。 DTS编写 imx6的LCD控制器与之前的芯片略有不同,详细的信息可以阅读芯片手册。参考sabrelite开...
  • girlkoo
  • girlkoo
  • 2015-05-16 23:20:51
  • 10589

VPU硬编码

平台是RK3066(福州瑞芯微公司),Android 4.2.0,其实时VP8硬编码,与软件编码是ffpmeg,x264,xvid等软编码是有区别的。硬编码主要是依赖于 硬件。   硬编码:通...
  • zqf_office
  • zqf_office
  • 2016-12-13 14:15:40
  • 463

undefined reference to错误的解决方法

陈运文 Linux下编译程序时,经常会遇到“undefined reference to XXX” 报错,这里总结一些可能的原因和解决方案,给需要的朋友: 说道undefined reference ...
  • cserchen
  • cserchen
  • 2010-04-19 17:44:00
  • 142920

linux常用查看硬件设备信息命令

查看USB设备:cat /proc/bus/usb/devices  查看键盘和鼠标:cat /proc/bus/input/devices  查看系统硬盘信息和使用情况:fdisk & di...
  • shaozengwei
  • shaozengwei
  • 2014-09-04 16:14:49
  • 2346

IMX6 android_M6.0.1技术文档

Freescale i.MX <em>6Q</em>平台移植Android MNC C#技术文档...Freescale iMX6 <em>Linux</em>文档 立即下载 上传者: kingj...<em>VPU</em>_API文档-imx6 立即下载 上传者: 然心向往之...
  • 2018年04月17日 00:00

使用QT时出现中文乱码的解决方法

加上 #pragma execution_character_set("utf-8") 即可解决
  • baitaibai
  • baitaibai
  • 2016-12-16 17:55:01
  • 337

i.Mx27 vpu encode|decode code

  • 2013年01月31日 14:14
  • 90KB
  • 下载
    个人资料
    持之以恒
    等级:
    访问量: 3万+
    积分: 797
    排名: 6万+
    最新评论
    Android基础学习