vs2022 编译libmodbus源码
vs编译libmodbus-C++文档类资源-CSDN下载
项目需要用到了第三方库libmodbus,本文安装的是libmodbus3.1.7,结果如下。
方法一、vs2022编译,默认32位,64位版本需要进行一些设置,详见下文
1.libmodbus下载版本
https://github.com/stephane/libmodbus
2.src双击configure.js
出现
3.vs打开modbus-9.sln编译生成modbus.lib和modbus.dll
将平台配置成release,x64,编译
此时,会遇到如下LNK2019链接错误
解决如下图:缺少依赖库,在additional dependences添加ws2_32.lib,重新编译
出现下图错误
解决:缺少main函数,并不是可执行工程,将configuration type改为.dll,再次编译
编译成功,但会有一些inconsistent dll linkage warning,可以添加预定义
WIN32
_DEBUG
HAVE_CONFIG_H
DLLBUILD
_CRT_SECURE_NO_DEPRECATE=1
_CRT_NONSTDC_NO_DEPRECATE=1
_WINDOWS
ENABLE_THREADS
_CONST_CORRECT_OVERLOADS
NOMINMAX
FREEGLUT_STATIC
此时,成功生成.lib 和.dll
方法二、采用qt编译生成的,64位可用。注意在.pro文件添加 LIBS += -lWS2_32
方法三、模拟linux
一、搭建MSYS环境
1.下载安装msys(在windows上模拟linux)
网址:MSYS2
2.更新pacman -Syu(pacman类似apt-get)
3.配置
参考:在windows上安装配置msys2_hustlei的博客-CSDN博客_msys2安装
3.1实现 cd +文件名进入目录:打开/etc/profile文件,添加一个关键变量:“export MSYS="winsymlinks:lnk”
3.2配置国内镜像,方便快捷下载资源:在/etc/pacman.d文件中对3个镜像文件mirrorlist文件进行修改。
3.3安装git和vim编辑器:有点像linux了, 安装命令:pacman -S git;
3.4安装配置zsh:在linux下,默认采用的是bash,但是现在大多数人都用zsh,方便快捷。安装zsh的命令:pacman -S zsh ;zsh主题采用oh-my-zsh,需要链接到相应的github网址,进行下载。
修改默认shell为zsh:在msys2_shell.cmd文件中,将LOGINSHELL的变量,改为zsh,则启动msys2后自动进入zsh
3.5选择oh-my-zsh中的主题,采用ys。采用vim编辑器在根目录下,打开zshrc文件,修改其中的ZSH_THEME的名字,完成修改。
3.6gcc的安装和环境配置:我安装的是mingw64 mingw-x86_64-gcc版本。安装命令:pacman -S mingw-w64-x86_64-gcc安装完成。
二、编译安装modbus
1.下载源码
网址:https://libmodbus.org/releases/libmodbus-3.1.7.tar.gz
或GitHub - stephane/libmodbus at v3.1.7
2. 下载如下工具或组件:autoconf,automake,m4,libtool,perl,crypt。
其中autoconf,automake是主要使用工具;m4,libtool是必要工具;perl是支撑工具;crypt是支撑库。libtool和crypt以库的形式下载。
pacman -S autoconf
3.automake使用
3.1运行autoscan命令,产生configure.scan文件;
3.2将configure.scan 文件重命名为configure.in,并修改configure.in文件;
3.3运行aclocal命令,产生aclocal.m4文件;
3.4运行autoconf命令,产生configure文件;
3.5新建Makefile.am文件,新建NEWS、 README、 ChangeLog 、AUTHORS文件;
3.6修改Makefile.am,并运行automake -a命令;(automake --add-missing)
3.7运行./confiugre脚本。
3.8至此,Makefile已生产,然后执行make编译即可。
4.编译安装
make
make install
至此,libmodbus库生成。
vs2022 编译libmodbus源码相关推荐
- java调用clang编译的so_写Java这么久,JDK源码编译过没?编译JDK源码踩坑纪实
好奇害死羊 很多小伙伴们做Java开发,天天写Java代码,肯定离不开Java基础环境:JDK,毕竟我们写好的Java代码也是跑在JVM虚拟机上. 一般来说,我们学Java之前,第一步就是安装JDK环 ...
- 在Windows和Linux上编译gRPC源码操作步骤(C++)
gRPC最新发布版本为v1.23.0,下面以此版本为例说明在Windows和Linux下编译过程. Windows7/10 vs2103编译gRPC源码操作步骤: 1. 需要本机已安装Git.CMak ...
- 海思3559A上编译Valgrind源码操作步骤
注:按照以下步骤可以在海思板子上正常编译valgrind源码并生成valgrind可执行文件,但可能还不能在海思板子上正常使用. 1. 从http://valgrind.org/downloads/? ...
- Windows7上使用VS2013编译Caffe源码(不带GPU支持)步骤
1. 从https://github.com/BVLC/caffe/通过git clone下载caffe源码,master分支,版本号为09868ac:$ git clone https: ...
- QGC开发(一)---编译构建源码
编译构建源码 编译信息 下载QGC源码 编译与构建 编译信息 系 统:Ubuntu 16.04 QT 版 本:QT5.12.6 QGC版本:Stable_3.5.6 下载QGC源码 下载连接: git ...
- windows 平台使用 VS2017 编译 libevent 源码
一 依赖库编译 先要将其依赖的库编译好,其中openssl需要编译到libevent中,编译成libevent_openssl.lib库,zlib在新版本中只有示例用到. 1)windows 平台使用 ...
- Linux如何编译安装源码包软件
一.什么是源码包软件: 顾名思义,源码包就是源代码的可见的软件包,基于Linux和BSD系统的软件最常见:在国内源可见的软件几乎绝迹:大多开源软件都是国外出品:在国内较为出名的开源软件有fcitx;l ...
- 获取并编译linux源码,android获取源代码、编译、命令
---my--- 正确的编译android sdk: cd myandroid . ./build/envsetup.sh lunch sdk-eng make sdk //或者: make PROD ...
- 编译Hadoop源码
背景: 在阅读hadoop源代码过程中会发现部分类或者函数无法找到,这是由于Hadoop2.0使用了Protocol Buffers定义了RPC协议, 而这些Protocol Buffers文件在Ma ...
最新文章
- python的web压力测试工具-pylot安装使用
- linux6个服务级别,RHEL 6 和 RHEL 7 的一些有关运行级别,服务管理,服务启动等方面的区别介绍...
- ffmpeg编译 MingW + MSYS
- position: absolute;_前端性能优化--transform与position
- 南京大学开源!ResT:高效Transformer架构!
- bat 自动输入密码_三轴自动焊接,三轴搬运机械手示教系统简易说明,分秒学会...
- 在java中如何输入角度_在Java中以特定角度绘制一条线
- 教授先生带你学习链表:双向链表3
- 2020法研杯比赛阅读理解任务冠军参赛总结
- linux 围棋界面,围棋GUI界面Sabaki怎么用?
- 澳洲计算机博士怎么样,留学美国的一位计算机博士的感悟
- linux查看db2表空间大小,DB2查看表空间大小及使用情况
- 微信红包最多能发多少钱?微信红包200元上限解除
- 中证500指数的跟踪基金最近1年收益排名
- 项目评价指标 误差回归_了解回归误差指标
- 华为产品升级及打补丁具体步骤
- SpringCloud_Dubbo_JZZ_MBY
- jetson机器上对lxde桌面设置中文输入法详细过程(图文展示)
- 关于Ecshop小京东,手机管理后台,增加楼层右边分类不显示的问题
- [附源码]Java计算机毕业设计SSM动物园动物饲养管理
热门文章
- JLINK V10 Keil5.28使用处理
- 计算机软件技术基础 王海燕,北大考研辅导班:2021北京大学工学院机械硕士(085500)考研招生分析、参考书目、复试线等经验指导篇...
- 利用庖丁解牛工具进行中文分词
- a40i平台android7.1系统开发环境搭建
- 计算机基础测试题及答案
- 博图V17 DB块 导入 昆仑通态屏
- _beginthread和CreateThread 创建线程
- 软件产品需求管理工具哪个好?国内知名产品管理工具使用体验分享
- VBA录制宏知识整理
- PMBOK(第六版) PMP笔记——《第十一章 项目风险管理》