vs2013编译ffmpeg之六 gsm、game-music-emu、gmp、gnutls

gsm

gsm音频编解码库。
http://www.imagemagick.org/download/delegates/ffmpeg/下载gsm-1.0-pl13,用msys编译的。
在其根目录下执行:

make addtst; make V=1

会报错,但不用管,已经生成了libgsm.a。

./src/toast.o:toast.c:(.text+0xb57): undefined reference to `fchmod'
./src/toast.o:toast.c:(.text+0xbcc): undefined reference to `fchown'

game-music-emu

ShiftMediaProject上下载的game-music-emu-master,MSVC2013打开sln文件就可以编译。

gmp

ShiftMediaProject上下载的gmp-master,编译没有报错。

gnutls

ShiftMediaProject上下载的gnutls-master
编译libgnutls需要yasm、vsyasm、libgcc_s_dw2-1.dll、libiconv-2.dll、libintl-8.dll,放到C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin下面,后三个文件在/MinGW/bin下面;vsyasm.props、vsyasm.targets、vsyasm.xml,放到C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\BuildCustomizations下面,这三个文件在yasm的源代码下面。

下面这个错误:

C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\BuildCustomizations\vsyasm.targets(45,5): error MSB3721: The command ""C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\"vsyasm.exe -Xvc -f Win32 -d "__NASM_VERSION_ID__=0" -o "K:\MinGW\msys\1.0\home\AA\contribute\MSVC\gnutls-master_20160630\SMP\obj\Debug\Win32\libgnutls\\" -rnasm -pnasm   "lib\accelerated\x86\nasm\aes-ssse3-x86.asm"  "lib\accelerated\x86\nasm\aesni-x86.asm"  "lib\accelerated\x86\nasm\cpuid-x86.asm"  "lib\accelerated\x86\nasm\e_padlock-x86.asm"  "lib\accelerated\x86\nasm\sha1-ssse3-x86.asm"  "lib\accelerated\x86\nasm\sha256-ssse3-x86.asm"" exited with code -1073741515.

vsyasm.exe的位置要放正确,按前面描述的拷贝就不会有这个错误。命令里面包含vsyasm.exe及其参数,这个命令行是在vsyasm.props里面定义的。不只是需要vsyasm,还需要yasm、libgcc_s_dw2-1.dll、libiconv-2.dll、libintl-8.dll,放到C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin下面。错误打印中的命令放到脚本中执行则没有问题,因为/MinGW/bin下面已经有yasm了。
工程里面yasm的设置如下:
这里写图片描述

下面这个错误:

fatal error LNK1241: resource file zlib1d.lib(zlib1.res) 

将“Link Time Code Generation”设置为yes可以解决该问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值