OBS找不到OBSApi.dll libx264-146.dll......
今天一下午都在折腾OBS,从官网下载了源码编译出来一堆一堆的问题,然后考虑没有安装directx, 从官网下载后安装出现问题。。。总是提示安装不了,后来发现原来是需要将原先的Microsoft Visual C++ 2010 x86 Redistributable、Microsoft Visual C++ 2010 x64 Redistributable之类的先卸载,因为在安装DirectX SDK (June 2010)之前我电脑里面已经安装了VS2013,过段卸载VS先安装directx在安装VS,后来又安装了directshow sdk在微软官网下载的。一堆软件安装完,重新打开OBS工程,编译还是未果,依旧错误不断。。。当时很崩溃,搞软件真是个累。。。其实还是自己基础差了点。
直接打开github上下载的OBS工程,一上来就编译最后弹出找不到OSB.exe,错误是
错误 2 error LNK1104: 无法打开文件“libsamplerate.lib” D:\Otherwork\Visual Studio 2013\OBSb\OBSApi\LINK OBSApi
错误 4 error LNK1181: 无法打开输入文件“librtmp.lib” D:\Otherwork\Visual Studio 2013\OBSb\LINK OBS
先忽略2个警告,这两个错误怎么解决了,我简单粗暴地分别打开libsamplerate.vcxproj和librtmp.vcxproj,然后重新生成,果然文件夹了有了那两个lib......
错误 1 error LNK1181: 无法打开输入文件“libfaac.lib” D:\Otherwork\Visual Studio 2013\OBSb\LINK OBS
继续这种简单粗暴的方法。。。有多少来多少,重要没有出现找不到OBS.exe问题了,虽然我也不知道具体为什么,可能是链接问题吧。
后来对项目里面OBS工程点击属性,在VC++目录里面对于包含目录和库目录增加了安装的directx及directshow sdk的相关库,管它有没有用,先添加了进去。对于win7 64bit的系统,添加进目录的时候路径里面加进去开始显示是C:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Include 对于括号变成%28 %29 这是个什么鬼。。。没办法手动修改了,点击宏编辑,手动改成括号,就成了C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Include。继续编译已经问题不断。。。老是弹出计算机丢失OBSApi.dll,我查找工程里面有这个dll啊。。。累觉不爱啊。。。后来百度也没查到任何相关消息,自己摸索吧。(这部分好像可有可无的,不加目我后面试了也可以)
头痛出去站在窗子面前,看着学校对面的山,呆呆地发了很久呆,回过神还是老实回实验室继续看一会,心想再不出来就不弄了,还是看文献去。编译依旧计算机丢失OBSApi.dll我滴个神啊。。。眼睛瞥了一眼错误,SysWOW64没有什么dll...这是个什么鬼,我自己也不知道为什么,然后就把OBSApi.dll复制粘贴到这个文件夹里面去了,再次编译居然不出现这个问题了,当时那个眼泪激动啊(好吧,我表示我太菜了)。但是继续弹出缺少libx264-146.dll,我依葫芦画瓢拷贝到SysWOW64里面,编译终于没有任何错误了。。。终于可以编译了,点击运行后弹出OBS已经触发了一个断点(这又是个什么鬼?)好吧我先忽略看看能不能用,果断能用啊。
至于触发一个断点,我后面在来看看了,热泪盈眶啊,当时怎么就没有想到这么简单粗暴的方法了。。。果然太菜了,加油加油,小菜鸟需要进阶~