vs2010 lnk2019无法解析的外部命令_vs无法解析的外部符号

vs2010 lnk2019无法解析的外部命令_vs无法解析的外部符号新的解决方案:errorLNK2019

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

最近在研究sumo,前几天将编译环境都搭建好了后,自己在解决方案的基础上新增加了一个项目,但是突然冒出来好多问题,其他都已经通过网络搜索解决。关于错误:error LNK2019 :无法解析的外部符号。网络方法很多,自己按照各种方法测试后依然不能解决。最后想到,和已经编译好的项目配置一项一项的作对比,来看看到底哪里出错了。因为根据错误提示,是两个cpp文件中的函数定义被引用。

具体错误代码样式(样子都差不多)):

1>—— 已启动生成: 项目: udt_appserver, 配置: Debug Win32 ——
1>生成启动时间为 2013/11/11 20:53:08。
1>InitializeBuildStatus:
1>  正在创建“Debug\udt_appserver.unsuccessfulbuild”,因为已指定“AlwaysCreate”。
1>ClCompile:
1>  appserver.cpp
1>ResourceCompile:
1>  所有输出均为最新。
1>ManifestResourceCompile:
1>  所有输出均为最新。
1>api.obj : error LNK2019: 无法解析的外部符号 __imp__WSAGetLastError@0,该符号在函数 “public: int __thiscall CUDTUnited::startup(void)” (?startup@CUDTUnited@@QAEHXZ) 中被引用
1>channel.obj : error LNK2001: 无法解析的外部符号 __imp__WSAGetLastError@0
1>api.obj : error LNK2019: 无法解析的外部符号 __imp__WSAStartup@8,该符号在函数 “public: int __thiscall CUDTUnited::startup(void)” (?startup@CUDTUnited@@QAEHXZ) 中被引用
1>api.obj : error LNK2019: 无法解析的外部符号 __imp__WSACleanup@0,该符号在函数 “public: int __thiscall CUDTUnited::cleanup(void)” (?cleanup@CUDTUnited@@QAEHXZ) 中被引用
1>api.obj : error LNK2019: 无法解析的外部符号 __imp__getsockname@12,该符号在函数 “public: int __thiscall CUDTUnited::bind(int,unsigned int)” (?bind@CUDTUnited@@QAEHHI@Z) 中被引用
1>F:\C_TEST\test_udt\Debug\udt_appserver.exe : fatal error LNK1120: 20 个无法解析的外部命令
1>
1>生成失败。
1>
1>已用时间 00:00:01.05
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========

错误提示:

vs2010 lnk2019无法解析的外部命令_vs无法解析的外部符号

按照网上的方法,是头文件和lib文件缺失。但是自己配置好以后仍然不能解决这个错误。

解决方案:

1、查看是否头文件和lib都已经导入。(我已经设置正确,仍然有错,看方法2)

一般这种方法很难达到效果,网上也好多人说,知道这种错,但是我不知道缺哪种lib啊…..这就尴尬了。

2、查看是否有引用的其他项目(需要你提前知道他们的引用关系)

我出现这种情况是在一个解决方案中有好多个项目,其中它们之间有相互引用的关系。我新建项目后,使用了以前的引用文件,但是我没有设置引用关系。具体方案:

项目右键–属性或者是引用,效果一样:

vs2010 lnk2019无法解析的外部命令_vs无法解析的外部符号

然后就是设置相应的引用项,点击添加新引用(N)按钮进行引用:

vs2010 lnk2019无法解析的外部命令_vs无法解析的外部符号

设置完以后重新编译运行。错误么有了。

vs2010 lnk2019无法解析的外部命令_vs无法解析的外部符号

题外话:

也许你说了,我哪知道他们的引用关系。一般都可以从错误提示中看出来的。比如:

TraCIAPI.obj : error LNK2019: 无法解析的外部符号 “public: virtual void __thiscall tcpip::Storage::writeInt(int)” (?writeInt@Storage@tcpip@@UAEXH@Z),该符号在函数 “protected: void __thiscall TraCIAPI::send_commandSimulationStep(__int64)const ” (?send_commandSimulationStep@TraCIAPI@@IBEX_J@Z) 中被引用

其中的 tcpip::Storage::writeInt(int)和TraCIAPI::send_commandSimulationStep这两个函数你完全可以去找到的,根据提示提到的文件和函数,将提到的相关的项目进行引用就可以了。不过一般引起这种错误的原因是,你拿着别人的项目在自己的电脑上跑,那么你可以问一下原作者的引用关系。不过还是自己动手比较快。



error LNK2019 :无法解析的外部符号然后

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/188810.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • CentOS7安装详解

    CentOS7安装详解本文基于vmwareworkstations进行CentOS7安装过程展示,关于vmwareworkstations安装配置本人这里不再介绍,基本过程相当于windows下安装个软件而已。1、打

  • asp session超时特别快,解决方案

    asp session超时特别快,解决方案在网上找了好久的资料,无论是程序设置超时时间;还是,程序池设置超时时间;还是,IIS设置超时时间;都没有解决我的问题,最后用cookie解决的。 程序设置超时时间(对我的程序无效)session.Timeout=999  程序池设置超时时间(对我的程序无效)启动IIS管理器->应用程序池->右键->属性->回收选项卡 文章…

  • html中div加滚动条

    html中div加滚动条div加滚动条的两种方法:一、<divstyle=”overflow:scroll;width:400px;height:400px;”></div>记住宽和高一定要设置噢,否则不成的不过在不超出时,会有下面的滚动条,所以不是最好的选择二、<divstyle=”overflow-y:auto;overflow-x:auto;…

  • UnsupportedOperationException:can&#39;t convert to dimension :typx=0x1[通俗易懂]

    UnsupportedOperationException:can&#39;t convert to dimension :typx=0x1

  • [ASP.NET MVC] 利用自定义的AuthenticationFilter实现Basic认证

    [ASP.NET MVC] 利用自定义的AuthenticationFilter实现Basic认证

  • 手把手教你完成图像分类实战——基于卷积神经网络的图像识别

    手把手教你完成图像分类实战——基于卷积神经网络的图像识别在很多的项目中,都会用到图像识别技术。我在智能电子秤的项目中,就使用了简单的图像识别算法来完成对果蔬的分类(三分类)。图像识别中,最常用的框架就是TensorFlow,我们今天就使用这个框架,手把手教学完成图像识别分类。完成一个图像识别模块主要包括四步:采集数据集搭建合适的模型调参、训练并测试完成接口到项目中关于环境的配置我在此处不多赘余描述,可以自行百度搜索,进行环境配置:python3.6+tensorflow+opencv。关于编译器,我在此处推荐spyder。使用起来非常方便,非常

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号