Ошибка установки PostgreSQL на Mac OS X 10.5 с использованием MacPorts

StackOverflow https://stackoverflow.com/questions/582447

  •  06-09-2019
  •  | 
  •  

Вопрос

Я установил 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.

Я тщетно искал в Google подробную информацию о том, что это значит.Есть какие-нибудь предложения?Спасибо!

Обновить:Я подумай это то, что вызывает сбой (из 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 и устанавливаю их заново, так что посмотрим, что получится.

Это было полезно?

Решение

Это был ключ к разгадке:

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

Другие советы

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

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

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top