it-swarm.com.de

OpenCV-Quelldatei (C ++) kann nicht mit 'pkg-config --cflags --libs opencv' kompiliert werden

Ich kompilierte eine OpenCV-Datei (C++) über die Befehlszeile

g++ facedetect.cpp -o facedetect 'pkg-config --cflags --libs opencv'

aber ich hatte fehler

g++: error: pkg-config --cflags opencv: No such file or directory 
g++: error: pkg-config --libs opencv: No such file or directory

Wohingegen, wenn ich die Bibliotheken von diesem Befehl kopiere:

pkg-config --cflags --libs opencv

Und fügen Sie es manuell in den Befehl g ++ ein, dann wird es ausgeführt. Das Problem ist, dass es die Bibliotheken von pkg-config --cflags --libs opencv nicht erkennen kann, aber ich weiß nicht, wie ich es beheben soll. Wenn jemand Erfahrung damit hat, hilf mir bitte, diese zu lösen! Danke vielmals!

4
Alex

Verwenden Sie die Syntax $(...), um die Ausgabe eines Befehls abzurufen, der in einen anderen Befehl eingefügt wurde.

g++ facedetect.cpp -o facedetect $(pkg-config --cflags --libs opencv)
4
Mark H

Sie haben die falschen Anführungszeichen verwendet. Sie sollten das Backtic "nicht das Apostroph" verwendet haben. Oder es wurde darauf hingewiesen, dass das Konstrukt $ () auch funktioniert und sogar das Verschachteln ermöglicht.

3
ubfan1