Question

J'ai installé PostgreSQL en utilisant MacPorts sur deux ordinateurs différents, pas de problème, mais quand il vient à mon ordinateur portable, je ne peux pas le faire pour construire.

Quand je fais cette commande:

sudo port install postgresql83

Je reçois cette erreur:

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.

Le fichier est config.log 7000 lignes longue sans problèmes évidents que je peux voir (il est dit « exit 1 » sur la dernière ligne, bien que!).

J'ai les outils de développement et ce ne est pas installé et je l'ai mis à jour à la dernière version de MacPorts et sync'ed mon arbre des ports. Je peux installer d'autres choses via MacPorts.

Je l'ai googlé en vain pour plus de détails sur ce que cela signifie. Aucune suggestion? Merci!

Mise à jour: I pense c'est c'est à l'origine à l'échec (de 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

J'ai libxml2 installé, mais peut-être il est foiré. Je libxml2 et libxslt désinstallé et je les réinstallant frais, donc nous allons voir ce qui se passe.

Était-ce utile?

La solution

Ce fut la clé:

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

Ce ne fut pas près du fond du config.log, il était à peu près la ligne 700.

En dépit du fait que je l'avais déjà mis à jour libxml à la version appropriée (qui a été un problème que j'ai dû répondre précédemment lors de l'installation postgresql) il ne fonctionnait pas avec libxslt.

Je désinstallées libxml (les deux versions que j'avais installé) et libxslt, puis de nouveau installé postgresql, et cette fois il a pu construire.

Si vous obtenez une erreur comme celle postgresql de construction, consultez les bibliothèques.

BTW, le fichier config.log se trouve dans un endroit comme celui-ci:

/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_databases_postgresql83/work/postgresql-8.3.6/config.log

Autres conseils

postgresql83 est à la version 8.3.6 à MacPorts. Est-ce la même version que votre copie travaille avec? "Postgresql83 info port" Si elles sont différentes, faites "sudo port selfupdate && sudo port de mise à niveau -u pas à jour && sudo port postgresql83 propre" pour faire tout, puis essayez à nouveau la mise à jour.

D'après ce que je peux voir, postgresql83 devrait dépendre de libxml2, non libxml. Cela devrait déjà être pris en charge par MacPorts. Vous pouvez faire les commandes ci-dessus dans les deux cas (assurez-vous que les dépendances sont mis à jour et nettoyer le répertoire pour essayer à nouveau).

Je sais que c'est une réponse qui ne résout pas le problème, mais comme un utilisateur mac qui n'est pas fan des ports mac, j'ai cherché une autre solution pour l'installation postgres. Et pas depuis longtemps, le site postgres téléchargements section a commencé à promouvoir un seul clic d'installation de EnterpriseDB.

Je l'ai essayé de l'installer via les ports mac dans le passé, et éventuellement installés sur l'installation manuelle de la source, et ce fut une douleur. Ce programme d'installation est assez agréable. Il met executables dans des endroits mac-appropriés, met ses bibliothèques dans / Bibliothèque et comprend même un couple de programmes supplémentaires pour aider à travailler avec Postgres. Donnez un coup de feu, il n'y a pas besoin d'être tirer vos cheveux avec un mac ports squameuse installer quand il y a un installateur de bonne qualité disponible.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top