编程时出现的ERROR LINK2019的解决方法

本文介绍了编程过程中遇到的ERROR LNK2019错误,主要原因是工程类型选择不当或编译器配置错误。解决方法包括检查主函数是否匹配工程类型,如Windows工程应使用_WinMain函数,以及确保不忽略编译器的默认库。通过调整项目设置,可以避免此类链接错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

 error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用

E:\c++\Projects\time\Debug\time.exe : fatal error LNK1120: 1 个无法解析的外部命令

生成日志保存在“file://e:\c++\Projects\time\time\Debug\BuildLog.htm

time - 2 个错误,个警告

========== 生成: 0 已成功, 1 

### SESJLink 烧录 Link Error 解决方案 当遇到SESJLink烧录过程中出现`Error: Flash Download failed - "Cortex-M3"` 或者 `Error: Flash Download failed - “Cortex-M4”` 的情况,可以采取一系列措施来排查并解决问题。 #### 选择合适的工具和设备配置 确保所使用的ST-LINK编程器版本与目标MCU兼容。如果不确定具体型号,在官方网站下载最新的ST-LINK Utility软件可以帮助识别和支持更多类型的MCU[^1]。 #### 正确配置开发环境 对于STM32系列微控制器而言,正确的项目配置至关重要: - **Device Selection**: 在IDE中的Device选项里挑选对应的目标芯片型号;通常可以在主控芯片上找到具体的型号标识。 - **Debug Configuration**: 修改Debug设置以适应特定硬件条件。这可能涉及到调整连接参数、电压等级以及其他影响通信稳定性的因素。 - **Flash Settings**: 进入Settings菜单下的Flash Download部分,确认启动地址和其他必要的闪存写入选项已被适当设定。 - **Utilities Setup**: 使用Utility功能进一步验证当前状态,并执行擦除操作或其他预处理命令以便顺利进行后续的数据传输过程[^2]. ```c // 示例代码用于展示如何通过库函数初始化串口通讯(假设为调试接口) void UART_Init(void){ // 配置USART外设... } ``` 以上步骤有助于提高烧录成功率,减少因配置不当引起的错误发生率。值得注意的是,保持固件更新至最新版本同样重要,因为制造商经常会发布修复已知问题的新版驱动程序或应用程序补丁包。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值