Visual Studio "object file does not define any previously undefined symbols"
Visual Studio "object file does not define any previously undefined symbols"
在Visual Studio 2013中使用c++时,我遇到了一个非常奇怪的警告/错误。
我有一个静态库和一个控制台应用程序
静态库导入4个第三方.lib文件及其头文件。控制台应用程序导入静态库和原始4个.lib文件的头文件,以便我可以使用原始4个.lib和我的.lib中的代码。
(我认为在这种情况下这是正确的设置,如果有更好的方法,一定要告诉!)
然而,当我构建静态库时,我得到一个警告:"LNK4221:这个对象文件没有定义任何先前未定义的公共符号,因此它不会被任何消耗此库的链接操作使用"。
但是它从哪里得到的代码,如果不是从库?如果我从导入中删除了.libs,构建就会失败,并指出需要它们!我不知道在这种情况下该怎么办。我很乐意让.libs按原样导入并忽略警告,但是当我试图禁用它们时(在编译器选项中禁用特定警告"4221"下),警告不会被禁用!
编辑:4个第三方的。lib是独立的-他们不使用彼此的代码,所以我需要导入所有的。
我真的很茫然,任何建议都将不胜感激。
我找到了一种在链接器命令行上使用/ignore:
禁用警告的方法,但我仍然很困惑,为什么链接器首先给出警告,当删除库作为输入导致多个"未解析的外部符号"错误时。
哦,好吧,问题(算是)解决了。
相关文章:
- 哪些类型可以转换为std::any
- 引用 std::any 或 not_yet_in_std::whatever 的惯用方式是什么?
- std::is_reference from std::any
- 是否可以从 std::any 创建 std::any 与 std::reference_wrapper?
- "reserved for any use"的含义是什么?
- boost::any 如何检查空值/未定义的值
- 使用 std::map 存储在 std::any 中,然后通过 std::any_cast 访问
- 可以有效地转换 std::any 与 std::any_cast
- 避免使用 std::any 编写相同的重复类型检查代码
- 广义 std::function (std::any 表示可调用对象)
- 如何在 c++17 中获取存储在 "any" 中的数据大小?
- 从 Any 包中提取和匹配 protobuf 消息类型名的首选方法
- 如何获取"any"当前持有的类型的名称?
- 在可变参数模板函数中存储参数而不使用 boost::any
- 如何将参数包扩展为向量<any>
- 如何使用openssl续订过期的证书密钥或创建自签名证书密钥any.pem Poco c ++
- 在VS2015中访问std::any
- std::any 跨共享库边界在 mingw 中
- 将动态分配对象传递到 boost::any 构造函数中
- Visual Studio "object file does not define any previously undefined symbols"