Skip to content

Commit d4bd8de

Browse files
committed
Update for macOS
1 parent 71dfff1 commit d4bd8de

3 files changed

Lines changed: 27 additions & 1042 deletions

File tree

examples/qt_barcode_scanner/CMakeLists.txt

Lines changed: 27 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,20 @@ add_definitions(-DENABLE_OPENCV_CAMERA=1)
3131
# Include DCR headers
3232
include_directories("${PROJECT_SOURCE_DIR}/../../dcv/include/")
3333

34-
# Include OpenCV headers
35-
include_directories("${PROJECT_SOURCE_DIR}/../../cvcamera/include/")
34+
# OpenCV setup - different approach for each platform
35+
if(WINDOWS)
36+
# Include OpenCV headers from bundled libraries
37+
include_directories("${PROJECT_SOURCE_DIR}/../../cvcamera/include/")
38+
else()
39+
# Use system OpenCV on macOS and Linux
40+
find_package(OpenCV REQUIRED)
41+
if(OpenCV_FOUND)
42+
include_directories(${OpenCV_INCLUDE_DIRS})
43+
message(STATUS "OpenCV found: ${OpenCV_VERSION}")
44+
else()
45+
message(FATAL_ERROR "OpenCV not found. Please install OpenCV development packages.")
46+
endif()
47+
endif()
3648

3749
# Find Qt6 - Core, Widgets, and Multimedia components
3850
find_package(Qt6 REQUIRED COMPONENTS Core Widgets Multimedia MultimediaWidgets)
@@ -84,13 +96,18 @@ if(WINDOWS)
8496
"${OPENCV_LIB_DIR}/opencv_imgcodecs480.lib"
8597
)
8698
elseif(MACOS)
87-
link_directories("${PROJECT_SOURCE_DIR}/../../dcv/lib/mac/")
99+
# Set library directories - use absolute path
100+
set(DCR_LIB_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../dcv/lib/mac")
101+
102+
# Link DCR libraries with full paths and proper dylib names
88103
target_link_libraries(QtBarcodeScanner PRIVATE
89-
"DynamsoftCaptureVisionRouter"
90-
"DynamsoftLicense"
91-
"DynamsoftCore"
92-
"DynamsoftUtility"
93-
"DynamsoftBarcodeReader"
104+
"${DCR_LIB_DIR}/libDynamsoftCaptureVisionRouter.dylib"
105+
"${DCR_LIB_DIR}/libDynamsoftLicense.dylib"
106+
"${DCR_LIB_DIR}/libDynamsoftCore.dylib"
107+
"${DCR_LIB_DIR}/libDynamsoftUtility.dylib"
108+
"${DCR_LIB_DIR}/libDynamsoftBarcodeReader.dylib"
109+
# Link system OpenCV libraries
110+
${OpenCV_LIBS}
94111
)
95112
elseif(LINUX)
96113
link_directories("${PROJECT_SOURCE_DIR}/../../dcv/lib/linux/")
@@ -100,6 +117,8 @@ elseif(LINUX)
100117
"DynamsoftCore"
101118
"DynamsoftUtility"
102119
"DynamsoftBarcodeReader"
120+
# Link system OpenCV libraries
121+
${OpenCV_LIBS}
103122
)
104123
endif()
105124

0 commit comments

Comments
 (0)