Verwenden einer Umgebungsvariablen mit einem Pfadwert: Das System kann den für% OPENCV_DIR% angegebenen Pfad nicht finden.

0

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%
  1. Zuerst wechsle ich in das Verzeichnis C:\OpenCV2.4.6\build\x64\vc11 um sicherzustellen, dass es existiert.
  2. Nachdem dies erfolgreich war, ändere ich das Verzeichnis wieder in das Stammverzeichnis des Laufwerks C.
  3. Dann benutze ich setx zu machen OPENCV_DIR eine systemweite Umgebungsvariable mit Wert der C:\OpenCV2.4.6\build\x64\vc11 Pfad, den ich in Schritt 1 verifiziert habe.
  4. 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 fehl The system cannot find the path specified.
  5. Wenn ich es versuche echo der Wert von OPENCV_DIR Umgebungsvariable scheint nicht gesetzt zu sein.

In der Systemsteuerung sieht die Umgebungsvariable OPENCV_DIR richtig eingestellt aus:

OPENCV_DIR environment variable in the control panel screenshot

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?

dumbledad
quelle
Ich werde versuchen, den PC neu zu starten - das habe ich nicht versucht. & lt;
dumbledad

Antworten:

4

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

Refael
quelle
Funktioniert jedes Mal!
bot1131357
0

Neustart des PCs hat das Problem behoben!

C:\windows\system32>cd %OPENCV_DIR%
C:\OpenCV2.4.6\build\x64\vc11>echo %OPENCV_DIR%
C:\OpenCV2.4.6\build\x64\vc11
dumbledad
quelle