Ошибка установки PostgreSQL на Mac OS X 10.5 с использованием MacPorts - PullRequest
1 голос
/ 24 февраля 2009

Я установил PostgreSQL с помощью MacPorts на нескольких разных компьютерах, нет проблем, но когда дело доходит до моего ноутбука, я не могу его собрать.

Когда я делаю эту команду:

sudo port install postgresql83

Я получаю эту ошибку:

checking test program... failed
configure: error:
Could not execute a simple test program.  This may be a problem
related to locating shared libraries.  Check the file 'config.log'
for the exact reason.

Error: The following dependencies failed to build: postgresql83
Error: Status 1 encountered during processing.

Файл config.log имеет длину 7000 строк, без видимых проблем (хотя на последней строке написано "exit 1"!).

У меня действительно есть инструменты для разработчиков и то, что не установлено, и я обновил до последней версии MacPorts и синхронизировал мое дерево портов. Я могу установить другие вещи через MacPorts.

Я напрасно гуглил подробности о том, что это значит. Какие-либо предложения? Спасибо!

ОБНОВЛЕНИЕ: я думаю это то, что вызывает его сбой (из config.log):

configure:8307: ./conftest
dyld: Library not loaded: /opt/local/lib/libxml2.2
  Referenced from: /opt/local/lib/libxslt.1.dylib
  Reason: image not found

У меня установлен libxml2, но, возможно, он облажался. Я удалил libxml2 и libxslt и заново их устанавливаю, так что посмотрим, что произойдет.

Ответы [ 3 ]

2 голосов
/ 24 февраля 2009

Это был ключ:

configure:8307: ./conftest
dyld: Library not loaded: /opt/local/lib/libxml2.2
  Referenced from: /opt/local/lib/libxslt.1.dylib
  Reason: image not found

Это не было в нижней части config.log, это было примерно в строке 700.

Несмотря на то, что я уже обновил libxml до соответствующей версии (с которой я сталкивался ранее при установке postgresql), он не работал с libxslt.

Я удалил libxml (обе версии, которые я установил) и libxslt, затем снова установил postgresql, и на этот раз он смог собрать.

Если вы получаете сообщение об ошибке, например, это здание postgresql, проверьте библиотеки.

Кстати, файл config.log можно найти в таком месте:

/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_databases_postgresql83/work/postgresql-8.3.6/config.log
0 голосов
/ 02 марта 2009

Я понимаю, что это ответ, который не решает проблему, но как пользователь Mac, который не является поклонником портов Mac, я искал другое решение для установки postgres. И не так давно на сайте postgres раздел загрузок начали продвигать Установщик EnterpriseDB в один клик .

В прошлом я пытался установить его через порты Mac, и в конце концов остановился на ручной установке из источника, и это было больно. Этот установщик довольно хорош. Он помещает исполняемые файлы в соответствующие Mac места, помещает свои библиотеки в / Library и даже включает несколько дополнительных программ, помогающих работать с postgres. Сделайте это, нет необходимости выдергивать волосы из-за ненадежной установки Mac-портов при наличии качественного инсталлятора.

0 голосов
/ 25 февраля 2009

postgresql83 - версия 8.3.6 для MacPorts. Это та же версия, с которой работает ваша копия? "port info postgresql83" Если они разные, выполните команду "sudo port selfupdate && sudo port upgrade -u устаревшее && sudo port clean postgresql83", чтобы обновить все, а затем повторите попытку.

Из того, что я вижу, postgresql83 должен зависеть от libxml2, а не от libxml. Это уже должно быть обработано MacPorts. Возможно, вы захотите выполнить приведенные выше команды в любом случае (убедитесь, что зависимости обновлены, и очистите каталог, чтобы повторить попытку).

...