使用CMake将Visual Studio C ++项目移植到Linux的操作方法

下载

  • Dynamsoft Barcode Reader SDK

  • C ++条形码阅读器示例

构建OpenCV

无论您使用何种操作系统,都可以从源代码构建OpenCV库。

视窗

安装Visual Studio 2017和cmake-3.15.2-win64-x64.msi

解压OpenCV源代码并创建一个临时目录:

cd opencv-3.4.7mkdir buildcd build

构建OpenCV库:

cmake -G"Visual Studio 15 2017 Win64" ..cmake --build . --target install

Linux

安装所需的包

sudo apt install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libjpeg-dev libpng-dev libtiff-dev

解压OpenCV源代码并创建一个临时目录:

cd opencv-3.4.7mkdir buildcd build

构建OpenCV库:

cmake ..cmake --build . --target install

用CMake替换Visual Studio项目

在Windows中提取条形码阅读器示例:

使用CMake将Visual Studio C ++项目移植到Linux的操作方法

删除* .sln和* .vcproj文件。

重新组织项目结构并为构建配置创建CMakeLists.txt文件。

使用CMake将Visual Studio C ++项目移植到Linux的操作方法

检查平台:

if (CMAKE_HOST_WIN32)    set(WINDOWS 1)elseif(CMAKE_HOST_UNIX)    set(LINUX 1)endif()

配置头文件以将一些CMake设置传递给源代码:

configure_file (    "${PROJECT_SOURCE_DIR}/BarcodeReaderConfig.h.in"    "${PROJECT_BINARY_DIR}/BarcodeReaderConfig.h")

添加Dynamsoft Barcode Reader和OpenCV的链接目录:

if(WINDOWS)    link_directories("${PROJECT_SOURCE_DIR}/platforms/win/lib/") elseif(LINUX)    link_directories("${PROJECT_SOURCE_DIR}/platforms/linux/")     find_package(OpenCV REQUIRED)endif()

添加头文件目录:

include_directories("${PROJECT_BINARY_DIR}" "${PROJECT_SOURCE_DIR}/include/")

添加目标可执行文件和链接依赖库:

add_executable(BarcodeReader BarcodeReader.cxx)if(WINDOWS)    target_link_libraries (BarcodeReader "DBRx64" "opencv_core347d.lib" "opencv_highgui347d.lib" "opencv_videoio347d.lib")else()    target_link_libraries (BarcodeReader "DynamsoftBarcodeReader" ${OpenCV_LIBS})endif()

将DLL文件复制到Windows的输出目录:

if(WINDOWS)    add_custom_command(TARGET BarcodeReader POST_BUILD         COMMAND ${CMAKE_COMMAND} -E copy_directory        "${PROJECT_SOURCE_DIR}/platforms/win/bin/"             $)endif()

适用于Windows的CMake构建

从DynamsoftBarcode Reader 7.1ComponentsC_C++Lib,复制DBRx64.lib到platformswinlib。

从opencv-3.4.7buildlib,复制opencv_core347d.lib,  opencv_highgui347d.lib,opencv_videoio347d.lib来platformswinlib。

从DynamsoftBarcode Reader 7.1ComponentsC_C++Redistx64,将所有DLL文件复制到platformswinbin。

从opencv-3.4.7buildbinDebug,复制opencv_imgproc347d.dll,  opencv_videoio347d.dll,opencv_highgui347d.dll和opencv_imgcodecs347d.dll到platformswinbin。

创建一个build文件夹:

mkdir buildcd build
set(CMAKE_INSTALL_PREFIX "e:/${PROJECT_NAME}")

生成项目配置文件:

cmake -G"Visual Studio 15 2017 Win64" ..

建立项目:

cmake --build .

运行应用程序:

buildDebugBarcodeReader.exe

QQ截图20190919140534.png

适用于Linux的CMake构建

复制Dynamsoft/BarcodeReader/lib/WITHOUTSTDC++LIB/libDynamsoftBarcodeReader.so到platforms/linux/。

创建一个build文件夹:

mkdir buildcd build

生成项目配置文件。

cmake ..

建立项目:

cmake --build .

运行应用程序:

./BarcodeReader

使用CMake将Visual Studio C ++项目移植到Linux的操作方法

关于Dynamsoft Barcode Reader

Dynamsoft Barcode Reader SDK使您能够使用几行代码在您的Web,桌面或移动应用程序中有效地嵌入条形码读取功能。它节省了开发时间和额外成本。使用SDK,您可以通过创建高速可靠的条形码扫描仪软件,来满足您的业务需求。

支持的条形码类型

1D条码

Code 39、Code 93、Code 128、Codabar、EAN-8、EAN-13、UPC-A、UPC-E、Interleaved 2 of 5(ITF)、Industrial 2 of 5(Code 2 of 5 Industry、Standard 2 of 5 、代码2 of 5)、ITF-14。

二维条码

QRCode、DataMatrix、PDF417和Aztec代码。

下载源代码


想要获得Dynamsoft Barcode Reader更多资源或正版授权的伙伴,可以联系客服哦~

1563778777.jpg

标签:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年8月16日
下一篇 2019年8月16日

相关推荐

发表回复

登录后才能评论