关于用VS运行emwin时出现一堆错误的现象之一

9 篇文章 0 订阅
4 篇文章 0 订阅

在从官网上下载了emwin的仿真工程后,在我的vs2015上运行,第一次编译运行我就被被被懵逼了、、、特么的一堆错误,当然,作为一个菜鸟,我估摸着这肯定是工程设置有问题,千万不要手贱动代码,然后百度,

后来通过百度发现类似的问题,提到了忽略库文件会导致这种错误,于是乎通过下面这个设置

将忽略所有默认库选为“否”,否则链接时会提示找不到对应函数。继续编译,又出现下面这个错误

在万能的CSDN上找到了归宿,办法就是忽略指定的默认库(libc.lib),

好了,这下总该可以了吧,编译运行,我擦这是什么鬼

冲突冲突、、、在刚刚的帖子里最下边有段重点

第二章图片我们看到里面工程默认使用了多线程(libcmt.lib),但是又同时包含了msvcrt.lib和msvcrtd.lib,所以将这两个依赖库手动去掉后,应该就可以解决问题了

当附加依赖项只剩下libcmt.lib后,不存在冲突现象,果然一次性编译运行成功,

 

第二次补充:

上面的部分完成以后可以实现官方的例程,也就是Application里的东西,但是我们在学emwin的时候起初肯定不会使用它,当我们注释掉这里面的文件并添加Sample里的文件到工程中去时,会出现如下错误

这时你需要按照上面的方法在附加依赖项里加入"legacy_stdio_definitions.lib",编译即可通过。

如果上面步骤完成后依然出现如下错误

根据提示可以知道,你在屏蔽了Application里的所有文件后,却没有将Sample里的东西添加到工程中(取消屏蔽),因为每个Sample里的每个例程都是由一个MainTask函数来主导的,而这个segger的模拟程序会调用MainTask(如图中说的在_Thread@4中被引用),所以不可没有也不可重复,像这样:

 

  • 8
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值