1 votes

Contourner l'erreur non résolvable lors du nettoyage des paquets avec le gestionnaire de paquets ?

En utilisant MacPorts, lorsque je lance

sudo port -f clean --all all

J'obtiens alors une erreur. Voici un extrait de la sortie :

--->  Cleaning ml
--->  Cleaning mldonkey
--->  Cleaning mlpack
--->  Cleaning mlt
Error: Unable to open port: Package Qt5Core was not found in the pkg-config search path.
Perhaps you should add the directory containing `Qt5Core.pc'
to the PKG_CONFIG_PATH environment variable

Je ne sais pas lequel est à l'origine du problème (j'ai essayé de désinstaller/installer mlt mais cela ne suffit pas). Ce n'est peut-être pas spécifique à MacPorts, mais Je vois la même erreur avec homebrew posté Il s'agit donc peut-être d'une question plus générale.

J'ai cherché dans /opt/local/ qui est le répertoire d'installation de MacPorts mais je n'ai pas Qt5Core.pc.

Existe-t-il un moyen de faire en sorte que cette commande MacPorts continue à s'exécuter (un peu comme dans le cas de la gestion des exceptions) et continue à nettoyer d'autres paquets après que l'erreur a été rencontrée ?

1voto

Carlos Points 11

L'erreur a été signalée à l'adresse suivante https://trac.macports.org/ticket/54861 . Un correctif de contournement a été fourni.

diff --git a/multimedia/mlt/Portfile b/multimedia/mlt/Portfile
--- a/multimedia/mlt/Portfile
+++ b/multimedia/mlt/Portfile
@@ -42,7 +42,7 @@ if {${subport} eq "${name}"} {
     if {[info procs qt5.active_version] eq ""} {
         proc qt5.active_version {} {
             global prefix
-            if {[file exists ${prefix}/bin/pkg-config]} {
+            if {[file exists ${prefix}/bin/pkg-config/Qt5Core.pc]} {
                 set av [exec ${prefix}/bin/pkg-config --modversion Qt5Core]
                 return ${av}
             } else {
@@ -53,10 +53,15 @@ if {${subport} eq "${name}"} {

     qt5.depends_component \
                     qtsvg
-    if {[vercmp [qt5.active_version] 5.7.0] >= 0} {
-        configure.cxxflags-append \
-                    -stdlib=libc++ \
-                    -std=c++11
+    pre-configure {
+        # qt5.active_version only works if Qt is installed; we can
+        # be certain that is the case in the pre-configure phase.
+        if {[vercmp [qt5.active_version] 5.7.0] >= 0} {
+            ui_debug "Qt 5.7.0 and up require at least C++11"
+            configure.cxxflags-append \
+                        -stdlib=libc++ \
+                        -std=c++11
+        }
     }
 }

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X