忽略libc.lib以后出现错误 error LNK2019: 无法解析的外部符号 __imp__fscanf,

kuanbifeng6183 2016-10-27 03:23:38
应该是vc6.0和windows2000里能运行的程序
现在放在vs2010和windowsxp里编译出现错误

一开始是error LNK2005: ___iob_func 已经在 msvcrtd.lib(MSVCR100D.dll) 中定义
于是忽略在忽略特定默认库中 写了msvcrtd.lib;
再编译后出现LINK : fatal error LNK1104: 无法打开文件“LIBC.lib”
按照网上的教程,在忽略特定默认库中 写了msvcrtd.lib;LIBC.lib;

现在出现:
error LNK2019: 无法解析的外部符号 __imp__fscanf,该符号在函数 "protected: void __thiscall CMy3DEditorDoc::OnFileImport(void)" (?OnFileImport@CMy3DEditorDoc@@IAEXXZ) 中被引用
1>Picture.obj : error LNK2001: 无法解析的外部符号 __imp__fopen
1>RenderView.obj : error LNK2001: 无法解析的外部符号 __imp__fopen
1>3DEditorDoc.obj : error LNK2019: 无法解析的外部符号 __imp__fopen,该符号在函数 "protected: void __thiscall CMy3DEditorDoc::OnFileImport(void)" (?OnFileImport@CMy3DEditorDoc@@IAEXXZ) 中被引用
1>Export3ds.obj : error LNK2001: 无法解析的外部符号 __imp__fopen
1>ImageCapture.obj : error LNK2001: 无法解析的外部符号 __imp__fopen
1>Import3ds.obj : error LNK2001: 无法解析的外部符号 __imp__fopen
1>3DEditorDoc.obj : error LNK2019: 无法解析的外部符号 __imp__stricmp,该符号在函数 "protected: void __thiscall CMy3DEditorDoc::OnFileImport(void)" (?OnFileImport@CMy3DEditorDoc@@IAEXXZ) 中被引用
1>Import3ds.obj : error LNK2001: 无法解析的外部符号 __imp__stricmp
1>Object.obj : error LNK2001: 无法解析的外部符号 __imp__stricmp
1>OLDNAMES.lib(stricmp.obi) : error LNK2001: 无法解析的外部符号 __imp__stricmp
1>DlgRayTrace.obj : error LNK2019: 无法解析的外部符号 __imp___time64,该符号在函数 _time 中被引用
1>Raytrace.obj : error LNK2001: 无法解析的外部符号 __imp___time64
1>Import3ds.obj : error LNK2019: 无法解析的外部符号 __imp__fgetc,该符号在函数 "private: void __thiscall import3ds::load_string(char *)" (?load_string@import3ds@@AAEXPAD@Z) 中被引用
1>Object.obj : error LNK2019: 无法解析的外部符号 __imp__strstr,该符号在函数 "char * __cdecl strstr(char *,char const *)" (?strstr@@YAPADPADPBD@Z) 中被引用
1>libpng.lib(png.obj) : error LNK2019: 无法解析的外部符号 _crc32,该符号在函数 _png_reset_crc 中被引用
1>libpng.lib(png.obj) : error LNK2019: 无法解析的外部符号 _inflateReset,该符号在函数 _png_reset_zstream 中被引用
1>libpng.lib(pngrutil.obj) : error LNK2001: 无法解析的外部符号 _inflateReset
1>libpng.lib(pngread.obj) : error LNK2019: 无法解析的外部符号 _inflateInit_,该符号在函数 _png_create_read_struct_2 中被引用
1>libpng.lib(pngread.obj) : error LNK2019: 无法解析的外部符号 _inflate,该符号在函数 _png_read_row 中被引用
1>libpng.lib(pngrutil.obj) : error LNK2001: 无法解析的外部符号 _inflate
1>libpng.lib(pngread.obj) : error LNK2019: 无法解析的外部符号 _inflateEnd,该符号在函数 _png_read_destroy 中被引用
1>libpng.lib(pngwrite.obj) : error LNK2019: 无法解析的外部符号 _deflate,该符号在函数 _png_write_flush 中被引用
1>libpng.lib(pngwutil.obj) : error LNK2001: 无法解析的外部符号 _deflate
1>libpng.lib(pngwrite.obj) : error LNK2019: 无法解析的外部符号 _deflateEnd,该符号在函数 _png_write_destroy 中被引用
1>libpng.lib(pngwutil.obj) : error LNK2001: 无法解析的外部符号 _deflateEnd
1>libpng.lib(pngwutil.obj) : error LNK2019: 无法解析的外部符号 _deflateInit2_,该符号在函数 _png_zlib_claim 中被引用
1>libpng.lib(pngwutil.obj) : error LNK2019: 无法解析的外部符号 _deflateReset,该符号在函数 _png_zlib_release 中被引用
1>atlsd.lib(Externs.obj) : error LNK2019: 无法解析的外部符号 __CrtDbgReportW,该符号在函数 "void __stdcall ATL::AtlThrowImpl(long)" (?AtlThrowImpl@ATL@@YGXJ@Z) 中被引用
1>atlsd.lib(AtlDebugAPI.obj) : error LNK2001: 无法解析的外部符号 __CrtDbgReportW
1>atlsd.lib(Allocate.obj) : error LNK2001: 无法解析的外部符号 __CrtDbgReportW
1>atlsd.lib(AtlTraceModuleManager.obj) : error LNK2001: 无法解析的外部符号 __CrtDbgReportW
1>atlsd.lib(Externs.obj) : error LNK2019: 无法解析的外部符号 __CrtDbgReport,该符号在函数 "void __cdecl `dynamic initializer for 'public: static class ATL::CTrace ATL::CTrace::s_trace''(void)" (??__E?s_trace@CTrace@ATL@@2V12@A@@YAXXZ) 中被引用
1>atlsd.lib(AtlTraceModuleManager.obj) : error LNK2001: 无法解析的外部符号 __CrtDbgReport
1>.\Debug\3DEditor.exe : fatal error LNK1120: 17 个无法解析的外部命令
1>


运行库为:多线程调试 DLL (/MDd)
...全文
2191 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
kuanbifeng6183 2016-11-01
  • 打赏
  • 举报
回复
引用 1 楼 fefe82 的回复:
你的 libpng.lib 是在 vs2010 下重新编译过的嘛 ...
怎么重新编译呀?不太懂
kuanbifeng6183 2016-11-01
  • 打赏
  • 举报
回复
引用 6 楼 eastfriendwu 的回复:
把你win2k上的源码搬到winxp,依赖的第三方库重新编译,应该就不会有那么多问题了。
这个具体步骤是什么呀?依赖的第三方库怎么重新编译呢?
060 2016-10-29
  • 打赏
  • 举报
回复
不要忽略 msvcrtd.lib
paschen 2016-10-27
  • 打赏
  • 举报
回复
因为你忽略后这些函数的实现都找不到了
eastfriendwu 2016-10-27
  • 打赏
  • 举报
回复
把你win2k上的源码搬到winxp,依赖的第三方库重新编译,应该就不会有那么多问题了。
apple_v1 2016-10-27
  • 打赏
  • 举报
回复
天哪,你把libc都忽略掉了,难道你不知道libc是基本的c运行时库吗?
eastfriendwu 2016-10-27
  • 打赏
  • 举报
回复
不懂MFC,但是我认为你不能把系统库给忽略掉吧,报错的那些符号,基本都是定义在系统库的。 应该看看第一个错误,为什么重定义,是不是第三方库与系统库重复定义了。
kuanbifeng6183 2016-10-27
  • 打赏
  • 举报
回复
引用 1 楼 fefe82 的回复:
你的 libpng.lib 是在 vs2010 下重新编译过的嘛 ...
是不是libpng.lib有问题?还是需要怎么做
kuanbifeng6183 2016-10-27
  • 打赏
  • 举报
回复
引用 1 楼 fefe82 的回复:
你的 libpng.lib 是在 vs2010 下重新编译过的嘛 ...
之前的开源代码里找不到libpng.lib文件,我就用的是opencv里面的libpng.lib
fefe82 2016-10-27
  • 打赏
  • 举报
回复
你的 libpng.lib 是在 vs2010 下重新编译过的嘛 ...

24,854

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧