找回密码
 成为会员
楼主: autosim

[视频教程] AVL Cruise & Matlab/Simulink使用DLL接口联合仿真视频教程|实例演示

[复制链接]

4

帖子

0

精华

381

铜板

中级会员

Rank: 2

积分
465
发表于 2022-3-19 23:46:27 | 显示全部楼层
你好,我安装了Visual Studio 2017编译器,用matlab2018b按照视频中的模型编译DLL不成功,一直报下面错误怎么解决?
Build  2  1 Clear
11:37 PM Elapsed: 10 sec
### Setting: classic call interface.
### Generating code and artifacts to 'Model specific' folder structure

** Visual Studio 2017 Developer Command Prompt v15.9.45
** Copyright (c) 2017 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x64'
Microsoft (R) 程序维护实用工具 14.16.27045.0 版
版权所有 (C) Microsoft Corporation。  保留所有权利。
DLL_Maximum_Velocity_PI_Control_2018b.mk(47) : fatal error U1035: 语法错误: 应输入“:”或“=”分隔符
Stop.
The make command returned an error of 2
'An_error_occurred_during_the_call_to_make' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
Error(s) encountered while building "DLL_Maximum_Velocity_PI_Control_2018b"

389

帖子

8

精华

5823

铜板

管理员

Rank: 9Rank: 9Rank: 9

积分
74712
 楼主| 发表于 2022-3-20 16:05:05 | 显示全部楼层
manjiang 发表于 2022-3-19 23:46
你好,我安装了Visual Studio 2017编译器,用matlab2018b按照视频中的模型编译DLL不成功,一直报下面错误怎 ...

看起来像是tlc的问题,你用的哪个版本的cruise的avl_grt.tlc?

另外VS2017在安装的时候,编译器、生成工具和运行时,选择的版本是否高于VC++ 2017 version 15.9 v14.16 latest v141 tools?

4

帖子

0

精华

381

铜板

中级会员

Rank: 2

积分
465
发表于 2022-3-20 19:14:44 | 显示全部楼层
本帖最后由 manjiang 于 2022-3-20 19:17 编辑
autosim 发表于 2022-3-20 16:05
看起来像是tlc的问题,你用的哪个版本的cruise的avl_grt.tlc?

另外VS2017在安装的时候,编译器、生成工 ...

Visual Studio 2017+matlab2018b+CRUISE 2019.2的组合,这套组合在公司电脑DLL编译成功,个人电脑一直未成功,对比了两个Code Generation设置完全一致。另外个人电脑又安装了Matlab2015b(32位,自带lcc编译器)+cruise2015,也是没有编译成功,2015b出现下面问题
Build  2  1 Clear
07:11 PM Elapsed: 4 sec
### Setting: classic call interface.
Code Generation  1···························
ISPROTECTINGMODEL=NOTPROTECTING  
DLL_Maximum_Velocity_PI_Control_2014a.mk:46: *** missing separator.  Stop.
Error(s) encountered while building "DLL_Maximum_Velocity_PI_Control_2014a"
Component: Simulink | Category: Model error
开始以为是在设置中选择 Code interface,取消也不行,
不会是模型的问题吧

389

帖子

8

精华

5823

铜板

管理员

Rank: 9Rank: 9Rank: 9

积分
74712
 楼主| 发表于 2022-3-20 19:55:18 | 显示全部楼层
manjiang 发表于 2022-3-20 19:14
Visual Studio 2017+matlab2018b+CRUISE 2019.2的组合,这套组合在公司电脑DLL编译成功,个人电脑一直未成 ...

如果下载的模型没被修改和保存过,应该不是模型问题,你可以换别的模型验证一下。

是不是你个人电脑上装了多个编译器,实际使用的不是MSVC++,而是MinGW之类的?

在matlab里运行mex -setup看一下。

4

帖子

0

精华

381

铜板

中级会员

Rank: 2

积分
465
发表于 2022-3-20 22:09:03 | 显示全部楼层
autosim 发表于 2022-3-20 19:55
如果下载的模型没被修改和保存过,应该不是模型问题,你可以换别的模型验证一下。

是不是你个人电脑上装 ...

两个电脑之前都安装了TDM-GCC-64,mex -setup应该没问题,MinGW64 Compiler (C)  和Microsoft Visual C++ 2017 (C) ,MEX 配置为使用 'Microsoft Visual C++ 2017 (C)' 以进行 C 语言编译。就是不知道64位没有编译成功最后提示那个致命错误代码:
fatal error U1035: 语法错误: 应输入“:”或“=”分隔符
    Stop.
    The make command returned an error of 2
    'An_error_occurred_during_the_call_to_make' 不是内部或外部命令,也不是可运行的程序
    或批处理文件。
    Error:Error(s) encountered while building
这个代表什么意思?

389

帖子

8

精华

5823

铜板

管理员

Rank: 9Rank: 9Rank: 9

积分
74712
 楼主| 发表于 2022-3-20 23:29:40 | 显示全部楼层
manjiang 发表于 2022-3-20 22:09
两个电脑之前都安装了TDM-GCC-64,mex -setup应该没问题,MinGW64 Compiler (C)  和Microsoft Visual C++ ...

根据.tlc生成的c和makefile在自动化流程,make的时候出现了语法错误,一般是matlab版本或者.tlc文件和编译器不兼容导致的。

4

帖子

0

精华

381

铜板

中级会员

Rank: 2

积分
465
发表于 2022-3-22 16:43:32 | 显示全部楼层
autosim 发表于 2022-3-20 23:29
根据.tlc生成的c和makefile在自动化流程,make的时候出现了语法错误,一般是matlab版本或者.tlc文件和编 ...

可能如你所说的,跟之前安装的编译器冲突有关,今天重新装系统,然后按照Visual2017+matlab2018+cruise2019重新安装,完美编译。

389

帖子

8

精华

5823

铜板

管理员

Rank: 9Rank: 9Rank: 9

积分
74712
 楼主| 发表于 2022-3-22 18:39:21 | 显示全部楼层
manjiang 发表于 2022-3-22 16:43
可能如你所说的,跟之前安装的编译器冲突有关,今天重新装系统,然后按照Visual2017+matlab2018+cruise20 ...

解决了就好,感谢反馈~

17

帖子

0

精华

146

铜板

中级会员

Rank: 2

积分
175
发表于 2022-8-16 21:28:55 来自手机 | 显示全部楼层
视频怎么看不了了,一直卡顿

17

帖子

0

精华

146

铜板

中级会员

Rank: 2

积分
175
发表于 2022-8-16 21:51:56 来自手机 | 显示全部楼层
启用备用线路后解决啦
您需要登录后才可以回帖 登录 | 成为会员

本版积分规则

Archiver|手机版|AutoSim仿真教程 ( 皖ICP备15024617号-9 )

GMT+8, 2024-3-29 17:43 , Processed in 0.046388 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc. Design AutoSim

快速回复 返回顶部 返回列表