- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在 VS2015 中构建一个使用第 3 方库的项目。我正在使用的第 3 方库应该与 VS2015 (x64) 兼容,因此它应该与我的项目兼容。我的项目设置也将“忽略默认库”设置为“否”。
除了我最后得到的链接器错误外,所有内容都可以找到,这是由第 3 方库引起的:
LNK2001 unresolved external symbol "__declspec(dllimport) char const * __cdecl std::_Winerror_map(int)" (__imp_?_Winerror_map@std@@YAPEBDH@Z)
我不知道这个“_Winerror_map”函数包含在哪个.lib中,但我设法找到了源代码位置:
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\crt\src\stl\sysError.cpp
我尝试简单地将该文件包含在我的项目中,但出现以下错误:
Error C2491 'std::_Winerror_map': definition of dllimport function not allowed
如何确定此源文件包含在哪个默认库中?
最佳答案
在 Windows 上构建时,有许多不同的构建风格(例如 dll 与静态)和构建类型(调试与发布)和平台(x86、x64)。
这给编译过程带来了一些复杂性,Microsoft 已尝试使用 pragma 来解决这个问题
#if defined( _DEBUG )
# pragma comment ( lib, "steves_debug.lib")
#else
# pragma comment ( lib, "steves_release.lib" )
#endif
注释 (lib
描述了添加到 .obj
的信息,以确保正确的库自动添加到链接命令。
这可以通过链接 /nodefaultlib
来覆盖。这是一个坏主意,因为其中一些变体依赖于在 main
或 dllMain
之前运行的代码来确保它们不会泄漏。
MSVC 运行时 dll 通常在编译阶段由供应/MT[d]/MD[d] 引入。 MSDN : /MT /MD
关于c++:如何找到哪个标准库包含丢失的外部符号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44296562/
例如,我有一个父类Author: class Author { String name static hasMany = [ fiction: Book,
代码如下: dojo.query(subNav.navClass).forEach(function(node, index, arr){ if(dojo.style(node, 'd
我有一个带有 Id 和姓名的学生表和一个带有 Id 和 friend Id 的 Friends 表。我想加入这两个表并找到学生的 friend 。 例如,Ashley 的 friend 是 Saman
我通过互联网浏览,但仍未找到问题的答案。应该很容易: class Parent { String name Child child } 当我有一个 child 对象时,如何获得它的 paren
我正在尝试创建一个以 Firebase 作为我的后端的社交应用。现在我正面临如何(在哪里?)找到 friend 功能的问题。 我有每个用户的邮件地址。 我可以访问用户的电话也预订。 在传统的后端中,我
我主要想澄清以下几点: 1。有人告诉我,在 iOS 5 及以下版本中,如果您使用 Game Center 设置多人游戏,则“查找 Facebook 好友”(如与好友争夺战)的功能不是内置的,因此您需要
关于redis docker镜像ENTRYPOINT脚本 docker-entrypoint.sh : #!/bin/sh set -e # first arg is `-f` or `--some-
我是一名优秀的程序员,十分优秀!