zoukankan      html  css  js  c++  java
  • 【开发记录】TSINGSEE青犀视频平台开发Visual Studio 2017自建WebRTC中peerconnection_client程序报错无法解析的外部符号

    由于webrtc技术相对其他协议的视频直播来说,具备更低的延迟,因此对webrtc的开发和编译成了TSINGSEE青犀视频研发人员的一个重要任务。关于webrtc的开发需求,大家可以看TSINGSEE青犀视频云边端架构视频智能分析平台低延迟直播可以用webrtc实现吗一文了解一下。

    对于webrtc的编译以及开发,TSINGSEE青犀视频研发人员在之前解决了Visual Studio 2017自建WebRTC中peerconnection_client程序编译报错不匹配问题,以及其他不同的问题,但是在解决这些问题之后,再次编译,仍然会出现其他问题。

    当我们再次编译该项目时,还是出现了“LIBCMD.lib(exe_main.obj) : error LNK2019: 无法解析的外部符号 _main”的问题,该符号在函数 “int __cdecl invoke_main(void)” (?invoke_main@@YAHXZ) 中被引用,导致程序继续编译无法通过。

    分析问题

    产生这个问题的真正原因是c语言运行时找不到适当的程序入口函数。一般情况下,如果是windows程序,那么WinMain是入口函数,而如果入口函数指定不当,很显然c语言运行时找不到配合函数,它就会报告错误。

    解决问题

    本项目是windows程序。
    1、在项目属性依次选择:属性 -> C/C++ ->预处理器 -> 预处理器定义;然后对应删除_CONSOLE,并添加_WINDOWS.
    2、在项目属性依次选择:属性 -> 链接器 -> 系统 -> 子系统;然后把“控制台 (/SUBSYSTEM:CONSOLE)”改为“窗口 (/SUBSYSTEM:WINDOWS)”

    这样程序就最终修改完成,即可编译成(.exe)工程。

    Visual Studio 2017自建WebRTC中peerconnection_client程序的编译已经差不多结束了,不过TSINGSEE青犀视频研发团队即将开始编译其他版本,如果大家感兴趣,可以关注我们,也欢迎大家和我们做探讨交流。

    TSINGSEE青犀视频云边端架构视频智能分析平台包括EasyNVR、EasyGBS、EasyDSS等,均支持下载试用,欢迎大家测试了解。

  • 相关阅读:
    20190912
    20190825
    20190818
    20190811
    20190804
    数据结构与算法之顺序表
    数据结构与算法之顺序表
    数据结构与算法之单链表
    数据结构与算法之循环双链表
    数据结构与算法之循环单链表
  • 原文地址:https://www.cnblogs.com/TSINGSEE/p/14031696.html
Copyright © 2011-2022 走看看