无法在Mac OSX Lion上构建最新的Freeswitch

时间:2012-05-25 21:55:38

标签: compiler-errors osx-lion freeswitch

在尝试在Mac OSX Lion上使用git构建Freeswitch的最新代码时,我遇到了这个错误,在新结帐并运行./boostraph.sh和./configure之后:

making all mod_amr 
Creating mod_amr.so... 
i686-apple-darwin11-llvm-gcc-4.2: -bundle not allowed with -dynamiclib 
gcc -I/usr/local/src/freeswitch/libs/curl/include -I/usr/local/src/freeswitch/src/include -I/usr/local/src/freeswitch/src/include -I/usr/local/src/freeswitch/libs/libteletone/src -Werror -fvisibility=hidden -DSWITCH_API_VISIBILITY=1 -DHAVE_VISIBILITY=1 -g -ggdb -DMACOSX -DHAVE_OPENSSL -g -O2 -Wall -std=c99 -pedantic -Wdeclaration-after-statement -D_GNU_SOURCE -DAMR_PASSTHROUGH -shared -o .libs/mod_amr.so -dynamic -bundle -force-flat-namespace .libs/mod_amr.o /usr/local/src/freeswitch/.libs/libfreeswitch.dylib -lodbc -lresolv -L/usr/local/src/freeswitch/libs/apr-util/xml/expat/lib -lpq /usr/local/src/freeswitch/libs/apr-util/xml/expat/lib/.libs/libexpat.a /usr/local/src/freeswitch/libs/apr/.libs/libapr-1.a -lpthread -lm -L/usr/local/src/freeswitch/libs/srtp -ldl -lssl -lcrypto -lz -lncurses /usr/local/lib/libjpeg.dylib /usr/local/lib/libodbc.dylib -liconv 
make[5]: *** [mod_amr.so] Error 1 
make[4]: *** [all] Error 1 
make[3]: *** [mod_amr-all] Error 1 
make[2]: *** [all-recursive] Error 1 
make[1]: *** [all-recursive] Error 1 
make: *** [all] Error 2 

如果我要评论有问题的模块,那么任何数量的其他mod都会出现相同的“不允许使用-dynamiclib”。我已经安装了Mac OSX的所有先决条件(据我所知),包括Apple和Unix开发工具。我是100%macports / fink / brew,AFAIK。

我觉得这是我的设置缺少工具或配置问题(非常新鲜的Lion安装)。在此先感谢您的帮助!

2 个答案:

答案 0 :(得分:1)

我认为这是Freeswitch构建系统的问题。它向编译器提供了两个互斥的标志-bundle-dynamiclib

您可能希望查看他们的错误跟踪器,并可能提交错误。

答案 1 :(得分:1)

我得到了同样的错误,但来自不同的起源。我正在编译Cython,我正在链接的外部库有一些额外的CFLAGS。这些标记包括shared,而Cython自动包含-bundle(使用distutils内的setup.py进行编译。

-shared标志未明确显示在选项中,这令人困惑。通过this suggestion删除-shared选项解决了问题。

对于使用Cython搜索此错误的任何人来说也是注意到的。