TSINGSEE青犀视频平台开发Visual Studio 2017自建WebRTC中peerconnection_client程序报错无法解析的外部符号

本文主要是介绍TSINGSEE青犀视频平台开发Visual Studio 2017自建WebRTC中peerconnection_client程序报错无法解析的外部符号,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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

WebRTC.png

对于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青犀视频研发团队即将开始编译其他版本,如果大家感兴趣,可以关注我们,也欢迎大家和我们做探讨交流。

云边端2.png

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

这篇关于TSINGSEE青犀视频平台开发Visual Studio 2017自建WebRTC中peerconnection_client程序报错无法解析的外部符号的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/930758

相关文章

无法启动此程序因为计算机丢失api-ms-win-core-path-l1-1-0.dll修复方案

《无法启动此程序因为计算机丢失api-ms-win-core-path-l1-1-0.dll修复方案》:本文主要介绍了无法启动此程序,详细内容请阅读本文,希望能对你有所帮助... 在计算机使用过程中,我们经常会遇到一些错误提示,其中之一就是"api-ms-win-core-path-l1-1-0.dll丢失

使用Java实现Navicat密码的加密与解密的代码解析

《使用Java实现Navicat密码的加密与解密的代码解析》:本文主要介绍使用Java实现Navicat密码的加密与解密,通过本文,我们了解了如何利用Java语言实现对Navicat保存的数据库密... 目录一、背景介绍二、环境准备三、代码解析四、核心代码展示五、总结在日常开发过程中,我们有时需要处理各种软

Python多进程、多线程、协程典型示例解析(最新推荐)

《Python多进程、多线程、协程典型示例解析(最新推荐)》:本文主要介绍Python多进程、多线程、协程典型示例解析(最新推荐),本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定... 目录一、multiprocessing(多进程)1. 模块简介2. 案例详解:并行计算平方和3. 实现逻

Spring Boot拦截器Interceptor与过滤器Filter深度解析(区别、实现与实战指南)

《SpringBoot拦截器Interceptor与过滤器Filter深度解析(区别、实现与实战指南)》:本文主要介绍SpringBoot拦截器Interceptor与过滤器Filter深度解析... 目录Spring Boot拦截器(Interceptor)与过滤器(Filter)深度解析:区别、实现与实

解决Java异常报错:java.nio.channels.UnresolvedAddressException问题

《解决Java异常报错:java.nio.channels.UnresolvedAddressException问题》:本文主要介绍解决Java异常报错:java.nio.channels.Unr... 目录异常含义可能出现的场景1. 错误的 IP 地址格式2. DNS 解析失败3. 未初始化的地址对象解决

SpringBoot后端实现小程序微信登录功能实现

《SpringBoot后端实现小程序微信登录功能实现》微信小程序登录是开发者通过微信提供的身份验证机制,获取用户唯一标识(openid)和会话密钥(session_key)的过程,这篇文章给大家介绍S... 目录SpringBoot实现微信小程序登录简介SpringBoot后端实现微信登录SpringBoo

uniapp小程序中实现无缝衔接滚动效果代码示例

《uniapp小程序中实现无缝衔接滚动效果代码示例》:本文主要介绍uniapp小程序中实现无缝衔接滚动效果的相关资料,该方法可以实现滚动内容中字的不同的颜色更改,并且可以根据需要进行艺术化更改和自... 组件滚动通知只能实现简单的滚动效果,不能实现滚动内容中的字进行不同颜色的更改,下面实现一个无缝衔接的滚动

C#通过进程调用外部应用的实现示例

《C#通过进程调用外部应用的实现示例》本文主要介绍了C#通过进程调用外部应用的实现示例,以WINFORM应用程序为例,在C#应用程序中调用PYTHON程序,具有一定的参考价值,感兴趣的可以了解一下... 目录窗口程序类进程信息类 系统设置类 以WINFORM应用程序为例,在C#应用程序中调用python程序

Python报错ModuleNotFoundError的10种解决方案

《Python报错ModuleNotFoundError的10种解决方案》在Python开发中,ModuleNotFoundError是最常见的运行时错误之一,通常由模块路径配置错误、依赖缺失或命名冲... 目录一、常见错误场景与原因分析二、10种解决方案与代码示例1. 检查并安装缺失模块2. 动态添加模块

MyBatis分页插件PageHelper深度解析与实践指南

《MyBatis分页插件PageHelper深度解析与实践指南》在数据库操作中,分页查询是最常见的需求之一,传统的分页方式通常有两种内存分页和SQL分页,MyBatis作为优秀的ORM框架,本身并未提... 目录1. 为什么需要分页插件?2. PageHelper简介3. PageHelper集成与配置3.