Как мне скомпилировать 32-битный модуль apache для 64-битной платформы? - PullRequest
0 голосов
/ 18 июля 2009

Я пытаюсь завершить mod_auth_kerb для Apache на Mac OS X 10.5.7. Я не получаю ошибок компиляции, но когда apache пытается загрузить его:

org.apache.httpd [95092]: httpd: синтаксическая ошибка в строке 160 файла /private/etc/apache2/httpd.conf: невозможно загрузить /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 64-битный с нуля в этой версии Mac-сервера, так что это, вероятно, проблема. Я просто не знаю, как пройти через это.

Строка 160 - красная сельдь в файле httpd.conf (в ней ##).

Я не знаю, как правильно его скомпилировать и надеялся на помощь.

У меня G5 PPC 64.

Спасибо.

EDIT:

Что странно, это:

otool -hv mod_auth_kerb.so mod_auth_kerb.so: заголовок Mach Волшебный cutype cpusubtype caps тип файла ncmds sizeofcmds flags

MH_MAGIC_64 PPC64 ALL 0x00 BUNDLE 10 1328 NOUNDEFS DYLDLINK TWOLEVEL

Так что я не знаю, что случилось.

Я на PPC64, и вот как это выглядит, я скомпилировал.

1 Ответ

1 голос
/ 18 июля 2009

Если я правильно понимаю вопрос, я думаю вам нужно будет собрать / установить кросс-компиляцию для сборки из PPC в x86_64 или другой не-PPC-архитектуры или даже в некоторых случаях от PPC до PPC64 и наоборот .

Я бы не советовал, если вы не знакомы с GCC, набором инструментов Unix и основами Darwin в целом.

Возможно, вы сможете найти настройки цепочки инструментов Дарвина в Интернете. Некоторые ссылки в правильном направлении:

  1. http://lists.apple.com/archives/darwin-development/2002/Dec/msg00062.html
  2. http://ranger.befunk.com/fink/darwin-cross/
  3. http://myownlittleworld.com/miscellaneous/computers/darwin-cross-distcc.html
  4. http://www.google.com/search?q=Darwin+cross+compilation
...