Uważam to za podstawowy krok do tworzenia projektów wykorzystujących biblioteki OpenCV, więc nie trzeba ręcznie włączać wszystkich bibliotek. Nie ma szczegółowych informacji na ten temat, przynajmniej dla początkujących, którzy chcą używać OpenCV tak szybko, jak to tylko możliwe, więc:Konfigurowanie projektu C++ OpenCV z Cmake
Jaki jest najprostszy i skalowalny sposób na stworzenie wieloplatformowego OpenSS z Cmake?
Nie polecam używania "link_directories" - zamiast tego podaj pełne nazwy ścieżek do bibliotek wymaganych jako argumenty dla target_link_libraries. Dokumenty dla katalogów linków (http://cmake.org/cmake/help/v2.8.10/cmake.html#command:link_directories) mówią "Zauważ, że to polecenie rzadko jest konieczne." – DLRdave
Możesz pominąć NAME_HEADERS - CMake skanuje pliki źródłowe, aby określić zależności plików nagłówkowych. –
@DLRdave W Windows będziesz potrzebował 'link_directories ($ {OpenCV_LIB_DIR})' ponieważ wartość zwrócona w '$ {OpenCV_LIBS}' zawiera tylko nazwy bibliotek (nie pełną ścieżkę). Jeśli chcesz, aby '$ {OpenCV_LIBS}' zawierało ścieżki biblioteki, potrzebujesz 'find_package (Open Core REQUIRED core imgproc ...)'. Podczas budowania statycznego oznacza to dodanie każdego modułu opencv do wywołania 'find_package'. –