LINK:fatal error LNK1104: cannot open file 'libc.lib'

1 篇文章 0 订阅

以下是网上看到的与此问题类似的一些状况及解决办法:

今天,用VS2008编译一个C++语言的程序,修改完所有错误后,出现了如下的错误:

MSVCRTD.lib(crtexew.obj) : error LNK2019: unresolved external symbol _WinMain@16 referenced in function ___tmainCRTStartup

在网上搜了一下,做如下修改:
Project -> xxxx Properties -> Configuration Properties -> Linker -> System ->Console ,原来是/subsystem:windows,这里改为(/SUBSYSTEM:CONSOLE)。
修改后, 该问题解决。

一,问题描述
error LNK2001: unresolved external symbol _WinMain@16
debug/main.exe:fatal error LNK 1120:1 unresolved externals
error executing link.exe;

二,产生这个问题可能的原因
1, 你用vc建了一个控制台程序,它的入口函数应该是main, 而你使用了WinMain.

2. 你用vc打开了一个.c/.cpp 文件,然后直接编译这个文件,这个文件中使用了WinMian而不是main作为入口函数。vc这时的默认设置是针对控制台程序的。

三, 解决方法
如果入口函数是WinMain,

1.进入project->setting->c/c++, 在category中选择preprocessor,在processor definitions中删除_CONSOLE, 添加_WINDOWS

2.进入project->setting->Link, 在Project options中将 /subsystem:console改为/subsystem:windows.

3.保存设置,Rebuild All.

如果入口函数是main,做反向的修改。

四,VS2005中的设置

1.菜单中选择 Project->Properties, 弹出Property Pages窗口

2.在左边栏中依次选择:Configuration Properties->C/C++->Preprocessor,然后在右边栏的Preprocessor Definitions对应的项中删除_CONSOLE, 添加_WINDOWS.

3.在左边栏中依次选择:Configuration Properties->Linker->System,然后在右边栏的SubSystem对应的项改为Windows(/SUBSYSTEM:WINDOWS)

4.Rebuild All. Ok


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
VC编译中出现以下错误时: LINK : fatal error LNK1104: cannot open file 'uafxcwd.lib' 解决方法 1.菜单project-》settnigs-》link-》Object/Library modules:中添加uafxcwd.lib (win7下亲测可用) 2. 如果还是不行,选择vc的全部安装,而不是默认安装 如果是unicode,可以用vc盘修复一下vc,钩选相关项。 如果以上方法不行,可以试试下面的方法。 说明: uafxcwd.lib多见于VC6编译过程中,有时候会遇到“ fatal error LNK1104: cannot open file "uafxcwd.lib"”,意思是找不到uafxcwd.lib库文件,你可在此下载,存放在提示的路径下即可,若缺少这个文件而不修复的话,VC项目可能无法编译成功。如果系统提示“没有找到uafxcwd.lib”、“缺少uafxcwd.lib文件”或者无法加载uafxcwd.lib等提示信息,您需要下载uafxcwd.lib后,拷贝到提示的路径里或在系统内安装注册该文件即可。   安装及使用方法(仅供参考,本方法对BPL文件无效):   ①将下载解压的uafxcwd.lib文件复制到C:\Windows\System32系统目录下(请注意:Win7、Vista的系统目录请以实际为准);   ②打开“开始”菜单-选择“运行”,输入“regsvr32 uafxcwd.lib”,在接下来的窗口中按回车确认即可完成控件注册。   ③如果在运行某一软件或程序编译时提示缺少、没有找到uafxcwd.lib等类似提示,您可按照提示的路径将lib拷贝到指定目录即可,或者重新添加文件引用。
当在使用 Visual Studio 编译项目时出现 "link: fatal error lnk1104: cannot open file 'OpenSSL::crypto.lib'" 错误时,通常是因为无法找到 OpenSSL 库文件。 要解决这个问题,首先应该确保已经正确安装了 OpenSSL 库,并且能够在系统上找到它。 1. 确保 OpenSSL 已正确安装:检查系统上是否已经正确安装了 OpenSSL。可以在 OpenSSL 的官方网站上下载适合您系统的安装程序,并根据安装向导进行安装。 2. 配置 Visual Studio 项目:打开 Visual Studio,并进入您的项目的属性设置。在属性窗口的左侧导航栏中选择 “链接器” > “输入”,然后在右侧的 “附加依赖项” 中添加 OpenSSL 库的名称。通常情况下,您应该添加 "libcrypto.lib" 和 "libssl.lib"。 3. 配置库文件路径:在属性窗口中,仍然在 “链接器” > “常规” 部分,将 OpenSSL 库文件的路径添加到 “附加库目录” 中。这个路径应该是 OpenSSL 库文件(.lib)所在的文件夹路径。 4. 点击 “确定” 保存更改,并重新编译项目:确保您保存了项目的更改,并尝试重新编译项目。如果您的 OpenSSL 库文件路径和名称正确配置,并且已正确安装 OpenSSL,那么应该不再出现 "lnk1104" 错误。如果仍然出现此错误,请再次检查您的配置设置。 希望这些步骤能够帮助您解决 "link: fatal error lnk1104: cannot open file 'openssl::crypto.lib'" 错误。如果问题仍然存在,您可能需要进一步检查您的 OpenSSL 安装和配置。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值