Ich versuche, eine Umgebungsvariable so einzustellen, dass sie auf das Verzeichnis verweist, in das ich die neueste Version von OpenCV extrahiert habe. Befolgen Sie dazu die Anweisungen in OpenCV Installation unter Windows Tutorial.
Hier ist meine erhöhte Befehlszeilenliste.
C:\>cd C:\OpenCV2.4.6\build\x64\vc11
C:\OpenCV2.4.6\build\x64\vc11>cd ../../../..
C:\>setx -m OPENCV_DIR C:\OpenCV2.4.6\build\x64\vc11
SUCCESS: Specified value was saved.
C:\>cd %OPENCV_DIR%
The system cannot find the path specified.
C:\>echo %OPENCV_DIR%
%OPENCV_DIR%
- Zuerst wechsle ich in das Verzeichnis
C:\OpenCV2.4.6\build\x64\vc11
um sicherzustellen, dass es existiert. - Nachdem dies erfolgreich war, ändere ich das Verzeichnis wieder in das Stammverzeichnis des Laufwerks C.
- Dann benutze ich
setx
zu machenOPENCV_DIR
eine systemweite Umgebungsvariable mit Wert derC:\OpenCV2.4.6\build\x64\vc11
Pfad, den ich in Schritt 1 verifiziert habe. - Beachten Sie den Erfolg von
setx
Im vorigen Schritt ändere ich jetzt das Verzeichnis mit der neuen Umgebungsvariablen. Aber es schlägt mit der Nachricht fehlThe system cannot find the path specified.
- Wenn ich es versuche
echo
der Wert vonOPENCV_DIR
Umgebungsvariable scheint nicht gesetzt zu sein.
In der Systemsteuerung sieht die Umgebungsvariable OPENCV_DIR richtig eingestellt aus:
Was ist falsch? Warum funktioniert die Variable nicht? Bekomme ich es falsch, wenn ich es verwende, um ein Verzeichnis zu ändern oder seinen Wert wiederzugeben?
windows
command-line
environment-variables
dumbledad
quelle
quelle
Antworten:
Nächstes Mal einfach versuchen, den Prozess zu schließen und wieder zu öffnen (hehe was für ein Klischee ...)
Der Grund ist, dass nach dem Start eines Prozesses alle Variablen in den eigenen Adressraum geschrieben werden.
Wenn Sie die Variablen Benutzer \ System ändern, werden die geöffneten cmd.exe (z. B.) nicht die neuen Werte erhalten, aber ein neuer cmd.exe-Prozess ...
gl,
Refael
quelle
Neustart des PCs hat das Problem behoben!
quelle