调整linux编译

This commit is contained in:
modehua 2023-01-11 18:59:04 +08:00
parent ceb5cbbb24
commit 293f86aaaa
3 changed files with 58 additions and 109 deletions

View File

@ -18,70 +18,51 @@ message(STATUS ${CMAKE_SYSTEM_NAME})
message(STATUS ${CMAKE_HOST_SYSTEM})
message(STATUS ${CMAKE_SYSTEM_PROCESSOR})
message(STATUS ${CMAKE_HOST_SYSTEM_NAME})
message(STATUS ${PROJECT_SOURCE_DIR})
if(CMAKE_HOST_SYSTEM_NAME MATCHES "Linux")
target_link_libraries(${PROJECT_NAME} PRIVATE
${PROJECT_SOURCE_DIR}/../lib/libgdev.a
${PROJECT_SOURCE_DIR}/../lib/libgimgproc.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libopencv_imgproc.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libopencv_imgcodecs.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libopencv_highgui.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libopencv_core.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libIlmImf.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibjasper.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibjpeg-turbo.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibpng.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibprotobuf.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibtiff.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libquirc.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libzlib.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibwebp.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/libusb-1.0/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libusb-1.0.a #kylin
udev pthread dl m)
endif()
#
if(CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "x86_64")
add_definitions(-Dx86_64="x86_64")
target_link_libraries(${PROJECT_NAME} PRIVATE
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libittnotify.a
#message("静态库预留01")
#message("静态库预留02")
)
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libopencv_imgcodecs.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libopencv_imgproc.a
message("cpu is x86_64")
elseif(CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "aarch64")
target_link_libraries(${PROJECT_NAME} PRIVATE
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libittnotify.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libtegra_hal.a #uos kylin
#message("静态库预留03")
#message("静态库预留04")
)
message("cpu is arm64")
elseif(CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "mips64")
target_link_libraries(${PROJECT_NAME} PRIVATE
#message("静态库预留03")
#message("静态库预留04")
)
message("cpu is mips64")
elseif(CMAKE_HOST_SYSTEM_NAME MATCHES "Windows")
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libopencv_highgui.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libopencv_core.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libIlmImf.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibjasper.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibjpeg-turbo.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibpng.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibprotobuf.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibtiff.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libquirc.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libzlib.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibwebp.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libittnotify.a
${PROJECT_SOURCE_DIR}/../../../../release/kylin/${CMAKE_SYSTEM_PROCESSOR}/libsane-hgsane.so
${PROJECT_SOURCE_DIR}/../../../../release/kylin/${CMAKE_SYSTEM_PROCESSOR}/libhgdriver.so
${PROJECT_SOURCE_DIR}/../../../../release/kylin/${CMAKE_SYSTEM_PROCESSOR}/libHGBase.so
${PROJECT_SOURCE_DIR}/../../../../release/kylin/${CMAKE_SYSTEM_PROCESSOR}/libHGScannerLib.so
${PROJECT_SOURCE_DIR}/../../../../release/kylin/${CMAKE_SYSTEM_PROCESSOR}/libHGImgFmt.so
${PROJECT_SOURCE_DIR}/../../../../release/kylin/${CMAKE_SYSTEM_PROCESSOR}/libHGImgProc.so
)
message("cpu is windows")
else()
message(FATAL_ERROR "not find cpu and exit cmake ...")
endif()
if(CMAKE_HOST_SYSTEM_NAME MATCHES "Linux")
target_link_libraries(${PROJECT_NAME} PRIVATE -static-libgcc -static-libstdc++ -Wl,--exclude-libs,ALL -zdefs -Bdirect pthread dl -Wl,-rpath=.)
endif()
target_include_directories(${PROJECT_NAME} PRIVATE ${PROJECT_SOURCE_DIR}
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/libusb-1.0/include
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/nick
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/include
${PROJECT_SOURCE_DIR}/../ImageProcess
${PROJECT_SOURCE_DIR}/../hgdev
${PROJECT_SOURCE_DIR}/../../../../sdk/include
${PROJECT_SOURCE_DIR}/../../../../sdk/include/opencv
)
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/../lib)

View File

@ -701,8 +701,8 @@ int SetDeviceParam(HG_Scanner_Handle pScanner)
doubleValue = m_params.ImageProcess.Gamma;
HGLib_SetDeviceParam((HGLibDevice)pScanner, HGLIB_OPTION_NAME_GMZ, &doubleValue);
boolValue = m_params.ImageProcess.FillBlackRect;
HGLib_SetDeviceParam((HGLibDevice)pScanner, HGLIB_OPTION_NAME_XCHK, &boolValue);
//boolValue = m_params.ImageProcess.FillBlackRect;
//HGLib_SetDeviceParam((HGLibDevice)pScanner, HGLIB_OPTION_NAME_XCHK, &boolValue);
intValue = m_params.ImageProcess.Indent;
HGLib_SetDeviceParam((HGLibDevice)pScanner, HGLIB_OPTION_NAME_BYSJ, &intValue);
@ -942,4 +942,4 @@ DLL_HG_SCHANNER_API int HG_Create_MultiTiff(char** srcFiles, int srcnum, char* d
hgret = HGImgFmt_CloseTiffWriter(tifwriter);
printf("\nHGImgFmt_CloseTiffWriter %d", hgret);
return 1;
}
}

View File

@ -22,65 +22,33 @@ message(STATUS ${CMAKE_HOST_SYSTEM_NAME})
if(CMAKE_HOST_SYSTEM_NAME MATCHES "Linux")
target_link_libraries(${PROJECT_NAME} PRIVATE
${PROJECT_SOURCE_DIR}/../staticlib/libgdev.a
${PROJECT_SOURCE_DIR}/../staticlib/libgimgproc.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libopencv_imgproc.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libopencv_imgcodecs.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libopencv_highgui.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libopencv_core.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libIlmImf.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibjasper.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibjpeg-turbo.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibpng.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibprotobuf.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibtiff.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libquirc.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libzlib.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibwebp.a
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/libusb-1.0/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libusb-1.0.a #kylin
udev pthread dl m)
endif()
#
if(CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "x86_64")
add_definitions(-Dx86_64="x86_64")
target_link_libraries(${PROJECT_NAME} PRIVATE
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libittnotify.a
#message("静态库预留01")
#message("静态库预留02")
)
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libopencv_imgcodecs.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libopencv_imgproc.a
message("cpu is x86_64")
elseif(CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "aarch64")
target_link_libraries(${PROJECT_NAME} PRIVATE
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libittnotify.a
#message("静态库预留03")
#message("静态库预留04")
)
message("cpu is arm64")
elseif(CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "mips64")
target_link_libraries(${PROJECT_NAME} PRIVATE
#message("静态库预留03")
#message("静态库预留04")
)
message("cpu is mips64")
elseif(CMAKE_HOST_SYSTEM_NAME MATCHES "Windows")
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libopencv_highgui.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libopencv_core.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libIlmImf.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibjasper.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibjpeg-turbo.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibpng.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibprotobuf.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibtiff.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libquirc.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libzlib.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/liblibwebp.a
${PROJECT_SOURCE_DIR}/../../../../code_device/hgdriver/3rdparty/opencv/lib/kylin/${CMAKE_SYSTEM_PROCESSOR}/libittnotify.a
message("cpu is windows")
else()
message(FATAL_ERROR "not find cpu and exit cmake ...")
${PROJECT_SOURCE_DIR}/../lib/libhgscannersdk.so
)
endif()
if(CMAKE_HOST_SYSTEM_NAME MATCHES "Linux")
target_link_libraries(${PROJECT_NAME} PRIVATE -static-libgcc -static-libstdc++ -Wl,--exclude-libs,ALL -zdefs -Bdirect pthread dl -Wl,-rpath=.)
endif()
target_include_directories(${PROJECT_NAME} PRIVATE ${PROJECT_SOURCE_DIR}
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/libusb-1.0/include
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/nick
${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/opencv/include
${PROJECT_SOURCE_DIR}/../ImageProcess
${PROJECT_SOURCE_DIR}/../hgdev
${PROJECT_SOURCE_DIR}/../../../../sdk/include
${PROJECT_SOURCE_DIR}/../../../../sdk/include/opencv
${PROJECT_SOURCE_DIR}/../hgscannersdk
)
target_include_directories(${PROJECT_NAME} PRIVATE /usr/lib/jvm/java-1.8.0-openjdk-amd64/include
/usr/lib/jvm/java-1.8.0-openjdk-amd64/include/linux