2

我正在尝试使用 LAME (3.99.5) 在 Cygwin 中构建具有 MP3 支持的 SoX (14.4.1)。我一直在关注本指南:http ://bencos.googlecode.com/svn-history/r137/trunk/out/sox/README.win32.txt 运行“./configure”时它告诉我“找不到瘸”。我已将lame-enc.dll 放在sox 目录中,但未检测到。谁能帮我弄清楚为什么会失败?这是命令和日志文件的输出:

./configure --with-lame

...
configure:13645: checking whether to dlopen lame
configure:13654: result: no
configure:13664: checking lame/lame.h usability
configure:13664: gcc -c -g -O2 -D_FORTIFY_SOURCE=2 -Wall -W -Wmissing-prototypes -Wstrict-prototypes -pedantic -fopenmp  conftest.c >&5
configure:13664: $? = 0
configure:13664: result: yes
configure:13664: checking lame/lame.h presence
configure:13664: gcc -E  conftest.c
configure:13664: $? = 0
configure:13664: result: yes
configure:13664: checking for lame/lame.h
configure:13664: result: yes
configure:13689: checking for lame_get_lametag_frame in -lmp3lame
configure:13714: gcc -o conftest.exe -g -O2 -D_FORTIFY_SOURCE=2 -Wall -W -Wmissing-prototypes -Wstrict-prototypes -pedantic -fopenmp   conftest.c -lmp3lame   >&5
conftest.c:53:1: warning: function declaration isn't a prototype
conftest.c:55:1: warning: function declaration isn't a prototype
/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../i686-pc-cygwin/bin/ld: cannot find -lmp3lame

编辑:我通过在 cygwin 中安装几个包并更新路径配置和运行。专业提示是阅读安装文件以查看它们是否列出了所需的包并可能检查 Linux 发行版,因为它们的包引用依赖项和构建依赖项。

4

2 回答 2

1

zlib-devel软件包提供了 -lz 所需的库。

于 2013-05-19T23:32:40.970 回答
1

您还需要--enable-dl-lame使用动态库:

./configure --with-lame --enable-dl-lame

编辑以合并来自评论讨论的信息:

可能需要更多 Cygwin 包,例如libltdllibtool-*(用于动态加载支持)、zlib 相关包(用于libid3tag)等。

此外,configure.ac需要修补(更改*mingw*)*cygwin* | *mingw*)第 175 行),然后必须通过(Cygwin 包)configure重新生成脚本。或者,您可以尝试找到与第 175行对应的行并更改它;在这种情况下不需要再生。autoreconfgcc-toolsconfigureconfigure.ac

于 2013-05-15T12:40:32.200 回答