FreeSwitch Windows 源码编译

下载根路径: http://files.freeswitch.org/         // 也可以从这里获取源码

依赖库文件下载:Index of /downloads/libs

  • VS2019编译问题汇总
  1.  编译FreeSwitchCoreLib

错误:w32\switch_version.props(128,7): error MSB4044: 未给任务“SwitchVersionTask”的必需参数“revision”赋值。

直接注释调GitCommits

     2. switch_version.c(37,10): fatal error C1083: 无法打开包括文件: “switch_version.h”: No such file or directory

因为下载的是git 上托管的项目,没有版本信息,需要自己根据template 自己定义,搜索

switch_version.h.template,拷贝重命名switch_version.h

#define SWITCH_VERSION_MAJOR            "1"
#define SWITCH_VERSION_MINOR            "10"
#define SWITCH_VERSION_MICRO            "8"
#define SWITCH_VERSION_REVISION            "" "~" _fs__bits
#define SWITCH_VERSION_REVISION_HUMAN        "" " " _fs__bits
#define SWITCH_VERSION_FULL            SWITCH_VERSION_MAJOR "." SWITCH_VERSION_MINOR "." SWITCH_VERSION_MICRO SWITCH_VERSION_REVISION
#define SWITCH_VERSION_FULL_HUMAN        SWITCH_VERSION_MAJOR "." SWITCH_VERSION_MINOR "." SWITCH_VERSION_MICRO " " SWITCH_VERSION_REVISION_HUMAN

     3. 1>switch_version.rc2(1): fatal error RC1015: cannot open include file 'switch_version.inc'.

 同上,

#define TOSTR(x)    #x
#define STR(x)        TOSTR(x)
#define SWITCH_VERSION_MAJOR            1
#define SWITCH_VERSION_MAJOR_STR        STR(SWITCH_VERSION_MAJOR)
#define SWITCH_VERSION_MINOR            10
#define SWITCH_VERSION_MINOR_STR        STR(SWITCH_VERSION_MINOR)
#define SWITCH_VERSION_MICRO            7
#define SWITCH_VERSION_MICRO_STR        STR(SWITCH_VERSION_MICRO)
#define SWITCH_VERSION_REVISION            ""
#define SWITCH_VERSION_REVISION_HUMAN    ""
#define SWITCH_VERSION_YEAR                "2021"
#define SWITCH_VERSION_ALL                "1.10.8"

    基本修改完成后,FreeSwitchCoreLib就可以编译完成了。如果下载官方发布的release版本,应该不会有上述问题。

  • 编译FreeSwitchConsole, 没啥问题,一把过
  • 如果需要完整编译整个解决方案,需要下载好多依赖的第三方库,需要网速稳定,下载失败了也可以手动下载。下载地址见上方【依赖库文件下载】。
  • 最后安装程序报错

E:\WorkSpace\FreeSwitch\freeswitch-master\w32\Setup\Product.2017.wxs(94,0): error LGHT0103: The system cannot find the file 'd:\setup\Microsoft Visual Studio\2019\Enterprise\\VC\Redist\MSVC\14.29.30133\MergeModules\\Microsoft_VC142_DebugCRT_x64.msm'.
1>已完成生成项目“Setup.2017.wixproj”的操作 - 失败。

打开Product2017.wxs 看这句

<?if $(var.Platform) != x64 ?>
                        <Merge Id="CrtFiles_x86"
                        SourceFile="$(var.MergeModules)\Microsoft_VC$(var.VCVer)_$(var.CRT_Configuration)CRT_x86.msm"
                        DiskId="1"
                        Language="1033"/>
                    <?endif ?>
                    <?if $(var.Platform) = x64 ?>
                        <Merge Id="CrtFiles_x64"
                        SourceFile="$(var.MergeModules)\Microsoft_VC$(var.VCVer)_$(var.CRT_Configuration)CRT_x64.msm"
                            DiskId="1"
                            Language="1033"/>
                            <?endif ?>

用everything 搜一下,当前电脑上没有 Microsoft_VC142_DebugCRT_x64.msm这个文件。

     目前不知道这个文件哪儿来的,我就借用Microsoft_VC142_DebugCRT_x64.msm 来尝试基本打包程序的安装包(这个安装包可能有问题,最终merge的资源不一定能保证安装包最终可运行-待测试)。

        至此,从git上拉下来的代码,就在本地全部编译完成了。最后列一下我的编译顺序

FreeSwitchCoreLib

FreeSwitchConsole

编译整个解决方案(依赖的项目报错,多半是文件下载不完成,删掉重新下载编译)

SetUp.2017 缺少Microsoft_VC142_DebugCRT_x64.msm文件,用其他版本替换待测试。

提示SSL certifficate 已过期。

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

老朱自强不息

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值