如何在 Snow Leopard 上编译 mod_xsendfile.c

如何在 Snow Leopard 上编译 mod_xsendfile.c

我在编译 Apache 的 X-Sendfile 扩展时遇到了问题(http://tn123.ath.cx/mod_xsendfile/) 在 Snow Leopard 上。我尝试设置各种 archflag,甚至有一个组合编译时没有错误,但每次 Apache 都无法启动。它不会向日志文件报告任何错误,但使用 apachectl 检查配置时显示“无法将 /usr/libexec/apache2/mod_xsendfile.so 加载到服务器:无法创建目标文件映像或添加库”

请注意,模块源代码是作为一个简单的 C 文件提供的,没有提供 makefile 或 configure 脚本。因此我使用 apxs 进行编译并安装到 apache 中。

以下是迄今为止我尝试过的命令:

$ sudo apxs -cia /Users/chrisbloom7/Downloads/xsendfile/mod_xsendfile-0.9/mod_xsendfile.c

$ sudo apxs -cia -Wc,"-arch x86_64 -arch ppc -arch i386 -arch ppc64" -Wl,"-arch x86_64 -arch ppc -arch i386 -arch ppc64" /Users/chrisbloom7/Downloads/xsendfile/mod_xsendfile-0.9/mod_xsendfile.c

$ sudo apxs -cia -Wc,"-arch x86_64" -Wc,"-arch i386" -Wc,"-arch ppc7400" /Users/chrisbloom7/Downloads/xsendfile/mod_xsendfile-0.9/mod_xsendfile.c

命令 #1 和 #3 编译无误,但无法在 Apache 中加载。命令 #2 抱怨缺少必需的体系结构并退出并出现错误。

答案1

经过更多测试后,我发现它确实可以在 Snow Leopards 的 Apache 本机实例中加载(即使在没有任何特定 arch 标志的情况下进行编译),只有 MAMP Pro 的 Apache 实例似乎无法加载它。所以我会向他们提出这个问题。

相关内容