首页 > 系统相关 >windows编译freeswitch-1.8.5

windows编译freeswitch-1.8.5

时间:2023-06-05 18:36:13浏览次数:46  
标签:obj libsrtp lib windows srtp 1.8 LNK2005 SocketNotificationRetrieveEvents freesw

我的windows环境是WIN10 编译器是vs2022

下载好freeswitch-1.8.5代码解压后 直接打开sln文件,开始编译。报错如下:

6>libsrtp.lib(crypto_kernel.obj) : error LNK2005: SocketNotificationRetrieveEvents 已经在 libsrtp.lib(srtp.obj) 中定义
6>libsrtp.lib(alloc.obj) : error LNK2005: SocketNotificationRetrieveEvents 已经在 libsrtp.lib(srtp.obj) 中定义
6>libsrtp.lib(datatypes.obj) : error LNK2005: SocketNotificationRetrieveEvents 已经在 libsrtp.lib(srtp.obj) 中定义
6>libsrtp.lib(err.obj) : error LNK2005: SocketNotificationRetrieveEvents 已经在 libsrtp.lib(srtp.obj) 中定义
6>libsrtp.lib(rdbx.obj) : error LNK2005: SocketNotificationRetrieveEvents 已经在 libsrtp.lib(srtp.obj) 中定义
6>libsrtp.lib(rdb.obj) : error LNK2005: SocketNotificationRetrieveEvents 已经在 libsrtp.lib(srtp.obj) 中定义
6>libsrtp.lib(cipher.obj) : error LNK2005: SocketNotificationRetrieveEvents 已经在 libsrtp.lib(srtp.obj) 中定义
6>libsrtp.lib(auth.obj) : error LNK2005: SocketNotificationRetrieveEvents 已经在 libsrtp.lib(srtp.obj) 中定义
6>libsrtp.lib(key.obj) : error LNK2005: SocketNotificationRetrieveEvents 已经在 libsrtp.lib(srtp.obj) 中定义
6>libsrtp.lib(ekt.obj) : error LNK2005: SocketNotificationRetrieveEvents 已经在 libsrtp.lib(srtp.obj) 中定义
6>libsrtp.lib(stat.obj) : error LNK2005: SocketNotificationRetrieveEvents 已经在 libsrtp.lib(srtp.obj) 中定义
6>libsrtp.lib(null_cipher.obj) : error LNK2005: SocketNotificationRetrieveEvents 已经在 libsrtp.lib(srtp.obj) 中定义
6>libsrtp.lib(aes_icm_ossl.obj) : error LNK2005: SocketNotificationRetrieveEvents 已经在 libsrtp.lib(srtp.obj) 中定义
6>libsrtp.lib(aes_gcm_ossl.obj) : error LNK2005: SocketNotificationRetrieveEvents 已经在 libsrtp.lib(srtp.obj) 中定义
6>libsrtp.lib(null_auth.obj) : error LNK2005: SocketNotificationRetrieveEvents 已经在 libsrtp.lib(srtp.obj) 中定义
6>libsrtp.lib(hmac_ossl.obj) : error LNK2005: SocketNotificationRetrieveEvents 已经在 libsrtp.lib(srtp.obj) 中定义

经过比价发现这些文件有共同点就是包含了datatypes.h 经过确认是这个头文件引起的报错。

改法如下:把datatypes.h里面的# include <winsock2.h>替换成_declspec(dllimport) unsigned long ntohl(unsigned long netlong);

标签:obj,libsrtp,lib,windows,srtp,1.8,LNK2005,SocketNotificationRetrieveEvents,freesw
From: https://www.cnblogs.com/yuandaozhe/p/17458666.html

相关文章

  • DOS创建/删除/描述 windows服务
    1、以管理员运行cmd,输入sccreatetestbinPath=程序路径\xxx.exe,主要“=”后面必须要空格在服务里面查看结果2、设置服务格式:scconfig服务名start=AUTO   (自动) scconfig服务名start=DEMAND (手动) scconfig服务名start=DISABLED(禁用)    注意:等号......
  • Windows和Linux的环境变量
    环境变量概述环境变量(EnvironmentVariables)一般是指在操作系统中用来指定操作系统运行环境的一些参数,如:临时文件夹位置和系统文件夹位置等。环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。例如Windows和DOS操作系统中的pat......
  • Windows AD域查询属性-密码过期时间
    WindowsAD域查询属性-密码过期时间WindowsPowerShell命令方式查询:netuserzhou/domain找出SamAccountName的值为zhou的用户部分信息PSC:\user\admin>netuserzhou/domainUsernamezhouFullnamezhouCommentUser'scomment......
  • openssl编译 windows
    由于需要使用rsa非对称加密开发一个注册机功能,所以需要使用openssl1下载openssl源码,github搜索一下2安装perl3安装nasm并设置为环境变量4使用vsdev命令提示符,加载64位的编译环境5配置openssl6nmake编译7nmaketest7nmakeinstallhttps://github.com/open......
  • 【Windows】TreeSoft数据库管理系统 TreeDMS 和 TreeNMS
    官方地址:http://www.treesoft.cn/dms.html#learningTreeSoft数据库管理系统TreeDMS支持MySQL,MariaDB,Oracle,PostgreSQL,SQLServer,DB2,MongoDB,Hive,SAPHANA,Sybase,Caché,Informix,Impala,ElasticSearch,clickHouse,cassandra,AmazonRedshift,达梦DM,金仓Kin......
  • node.js安装及环境配置教程【Windows系统安装包方式】
    一、下载安装包:https://nodejs.org/zh-cn/download/注:根据自己电脑系统及位数选择,我的电脑是Windows系统、64位、想下载稳定版的.msi(LTS为长期稳定版)这里选择windows64位.msi格式安装包。.msi和.zip格式区别:.msi是Windowsinstaller开发出来的程序安装文件,它可以让你安装,修改,......
  • 如何在windows 11中安装WSLG(WSL2)
    什么是WSLWSL(WindowsSubsystemforLinux):Windows 系统中的一个子系统,在这个子系统上可以运行 Linux 操作系统。可以让开发人员直接在 Windows 上按原样运行 GNU/Linux 环境(包括大多数命令行工具、实用工具和应用程序),且不会产生传统虚拟机或双启动设置开销。什么是WSL2?W......
  • PECMD 是一种管理和调试 Windows PE 系统的命令行工具,主要用于在 WinPE 环境下进行系
    PECMD是一种管理和调试WindowsPE系统的命令行工具,主要用于在WinPE环境下进行系统管理、修复和救援等操作。根据资料记录,PECMD已经发布了如下版本:PECMD2003:发布于2003年,适用于WindowsPE1.0版本。PECMD2005:发布于2005年,适用于WindowsPE2.0版本,新增支持更......
  • 5、半虚拟化驱动--virtio(linux和windows)和安装Windows server虚拟机
    KVM的功能主要体现在利用KVM的硬件辅助性虚拟化可以提高处理速度。但在虚拟机中,有些硬件不是KVM来实现加速的,如磁盘、内存、网络的性能,如果更好的提升速度,需要安装半虚拟化驱动半虚拟化驱动在软件层通过修改源代码让硬件的操作被虚拟机和宿主机所识别半虚拟化驱动--virtio红帽RHE......
  • mysql-5.6.13在windows平台下的安装、使用(图解)
    一、首先电脑要具备.NetFramework4以上环境二、MySQL下载、安装、执行1.下载http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.13-win32.zip2.安装点击“installMySQLproducts”选中“Iacceptthelicenceterms”,点击next选中“Skipthecheckforupdate......