1. 下载源码发布版
https://github.com/stephane/libmodbus/releases
将config.h拷贝到上层目录下(src目录下)
3. 使用visual studio打开src/win32下的modbus-9.sln文件
4. 修改配置
配置管理器中:
将Debug修改为Release
将平台方案Win32复制为x64
修改配置类型

在预处理定义中新增:
W32DEBUG
HAVE_CONFIG_H
DLLBUILD
CRTSECURE_NO_DEPRECATE=1
CRTNONSTDC_NO_DEPRECATE=1

注:不添加这些预处理定义,依旧能编译成功,但是终端会有很多警告信息
5. 编译项目
生成或重新生成

编译好后,将生成dll和lib文件

问题
1. error LNK2019: 无法解析的外部符号 __imp_accept,函数 modbus_tcp_accept 中引用了该符号

解决:在链接器中添加依赖:ws2_32.lib
2. error LNK2019: 无法解析的外部符号 main,函数 "int cdecl scrt_common_main_seh(void)" (?__scrt_common_main_seh@@YAHXZ) 中引用了该符号

解决:修改配置类型为动态库,之前为应用程序,由于modbus.c中没有主函数,所以报错。