我正在尝试在mac os x 10.5.7上为apache补充mod_auth_kerb。我没有编译错误,但是当apache尝试加载它时:
org.apache.httpd [95092]:httpd:/private/etc/apache2/httpd.conf第160行的语法错误:无法将/usr/libexec/apache2/mod_auth_kerb.so加载到服务器:dlopen(/ usr) /libexec/apache2/mod_auth_kerb.so,10):找不到合适的图像。找到了:\ n \ t / usr / libexec / apache2 / mod_auth_kerb.so:mach-o,但架构错误
我在make文件中尝试了以下内容:
ARCHFLAGS =' - arch ppc64' CPPFLAGS = -I。 -Ispnegokrb5 $(KRB5_CPPFLAGS)$(KRB4_CPPFLAGS)$(DEFS)-mpowerpc64 -mcpu = G5 -mtune = G5 -arch ppc64 LDFLAGS = $(KRB5_LDFLAGS)$(KRB4_LDFLAGS)$(LIB_resolv)-mpowerpc64 -mcpu = G5 -mtune = G5 -arch ppc64 CFLAGS = -mpowerpc64 -mcpu = G5 -mtune = G5 -arch ppc64
我查看了这些主题:
http://lists.apple.com/archives/unix-porting/2008/Mar/msg00061.html
http://objectmix.com/apache/690208-re-mod_auth_kerb-mac-os-x-10-5-client.html
我也在源代码中改变了这一点:
这
krb5_rc_resolve_full
至
__KerberosInternal_krb5_rc_resolve_full
我无法获得apache加载它并声称它是错误的架构。我认为apache在这个版本的mac服务器中是64位的,所以这可能就是问题所在。我只是不知道如何度过难关。
第160行是httpd.conf文件中的红色鲱鱼(它有##)。
我不知道如何正确编译它并希望得到帮助。
我有一台G5 PPC 64。
谢谢。
编辑:
奇怪的是:
otool -hv mod_auth_kerb.so mod_auth_kerb.so:Mach header magic cputype cpusubtype caps filetype ncmds sizeofcmds flags
MH_MAGIC_64 PPC64 ALL 0x00 BUNDLE 10 1328 NOUNDEFS DYLDLINK TWOLEVEL
所以我不知道出了什么问题。
我在PPC64上,这就是我编译的样子。
答案 0 :(得分:1)
如果我正确地关注了这个问题,我认为你需要构建/安装一个交叉编译工具链来构建它从PPC到x86_64或其他非PPC架构,甚至在某些情况下, PPC到PPC64,反之亦然。
如果您不熟悉GCC,Unix工具链和Darwin基础知识,我不会建议这样做。
您可以在网上找到Darwin工具链设置。一些正确方向的链接: