qt-vlc代码的编译问题

1,项目代码下载地址:https://github.com/vlc-qt/vlc-qt

2,参考编译教程:https://blog.csdn.net/octdream/article/details/82079907

3,编译环境 :系统 windows7 64位 ,vs2015

正文:

代码下载问题可参考上面csdn网址。

1,cmake过程中 ,可以不必把vlc代码放到qt目录,只需要引用相关的 include lib文件夹即可。运行时把plugins和vlc.dll和vlccore.dll放到exe同一目录即可

2,编译问题。本人在编译过程中遇到的问题。

  1,ssize_t问题。参考其他教程 说需要在 vlc.h头文件中增加( typedef __int64 ssize_t;)。本人增加后,编译过程提示ssize_t重载。说明代码中已经定义了    ssize_t.(所以不需增加 typedef  __int64 ssize_t; ) 但是不加会报其他错误。本人的解决方案是吧ssize_t 类型改成__int64 此问题解决(但由于ssize_t是跨平台类型,所以程序移植后可能会出问题)。

  2,poll问题 提示找不到poll标识符。 解决方案:定位到poll代码区。会看到一个poll的宏定义。需要把这个宏定义剪贴到 poll代码区的上方。问题应该是hi在    下面定义的

  3,提示vlc.lib文件读取错误,文件破坏。打开vlc.lib文件 发现他input了另一个libvlc.lib文件 问题可能出在vs2015不支持这个input 解决方法是直接把libvlc.lib改成vlc.lib  把原始的vlc.lib改成其他文件名。同理vlccore.lib提示文件被破坏 更改对应的libvlccore.lib为 vlccore.lib

  4,关闭SAFESEH警告 不关闭会把这个警告认为错误 关闭方法 分别修改Core,PluginQml,Qml,Widgets工程的属性>>调试/发布>>链接器>>命令行>>其它选项下填入   /SAFESEH:NO   斜杠后面不能有空格

扫描二维码关注公众号,回复: 5483061 查看本文章

  

猜你喜欢

转载自www.cnblogs.com/dagao/p/10505572.html
今日推荐