关于c++编译protobuf时提示LNK2001 无法解析的外部符号的问题

在所在配置完成后编译protobuf时还是提示如下

LNK2001 无法解析的外部符号 "union google::protobuf::internal::EmptyString google::protobuf::internal::fixed_address_empty_string" (?fixed_address_empty_string@internal@protobuf@google@@3TEmptyString@123@A)

真坑啊,各种操作猛如虎后结果还是不行。

vs2017里设置如下

然后查要在引用的头文件里增加 #define PROTOBUF_USE_DLLS,但是编译时会报protobuf.lib的重定义错误,于是把PROTOBUF_USE_DLLS定义放到工程的预处理器定义里就好了。这是vs2017里的做法。

Qt编辑器设置如下

在Makefile文件中定义预编译宏定义 PROTOBUF_USE_DLLS 方法如下:

CFLAGS:= -DPROTOBUF_USE_DLLS

而在qt的 .pro文件中添加方法如下:

DEFINES +=PROTOBUF_USE_DLLS

到此这篇关于关于c++编译protobuf时提示LNK2001 无法解析的外部符号的问题的文章就介绍到这了,更多相关c++ LNK2001 无法解析的外部符号内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 基于Protobuf C++ serialize到char*的实现方法分析

    protobuf的Demo程序是 C++版本的protubuf有几种serialize和unSerialize的方法: 方法一: 官方demo程序采用的是 复制代码 代码如下: // Write the new address book back to disk. fstream output(argv[1], ios::out | ios::trunc | ios::binary); if (!address_book.SerializeToOstream(&output)) { cerr &l

  • 关于c++编译protobuf时提示LNK2001 无法解析的外部符号的问题

    在所在配置完成后编译protobuf时还是提示如下 LNK2001 无法解析的外部符号 "union google::protobuf::internal::EmptyString google::protobuf::internal::fixed_address_empty_string" (?fixed_address_empty_string@internal@protobuf@google@@3TEmptyString@123@A) 真坑啊,各种操作猛如虎后结果还是不行. vs

  • PHP编译configure时常见错误的总结

    PHP编译configure时常见错误的总结 PHP的安装虽然有时候很简单,可是如果应用一多,我们安装起来就很头痛了!出错最多的就是安装PHP扩展的时候了.其实不管是你是Apache类的应用还是Nginx类的,PHP的安装都不是很简单,虽然网上有很多configure参数,但是那不一定是适合你的,因为很多都直接关系着你的系统版本和内核.因此要自己亲自不断的调试,才能完全安装成功. 本文总结了一些常见的configure错误信息和解决这些错误的经验. 1.configure: error: No

  • idea install 时提示jdk的某个jar包的包不存在的问题

    背景 重装的系统,新导入的项目.正常编译能通过,但是clean install就提示包不存在.奇特的是,提示的时jdk库的包. 解决问题 注: 后来注意到这个额外的类库里面是11(估计是新版本的jdk),而不是我是用的jdk1.8 打开下面配置,配置项目的sdk版本为1.8: 最终解决了问题. 到此这篇关于idea install 时提示jdk的某个jar包的包不存在的问题的文章就介绍到这了,更多相关idea install提示jdk的某个jar包的包不存在内容请搜索我们以前的文章或继续浏览下面

  • 添加网站到安全站点.设置安全站点打开ActiveX时提示.去页眉页脚的vbs代码

    复制代码 代码如下: '/*========================================================================= ' * Intro 主要是解决在使用WebBrowser打印时,得先设置IE安全性的问题 ' * FileName 添加网站到安全站点.设置安全站点打开ActiveX时提示.去页眉页脚.vbs ' * Author yongfa365 ' * Version v1.0 ' * Email yongfa365[at]qq.c

  • seajs加载jquery时提示$ is not a function该怎么解决

    jquery1.7以上的都支持模块化加载,只是jquery默认的是支持amd,不支持cmd.所以要用seajs加载jquery时,我们需要稍微做下改动,需要把以下内容做下修改,具体修改方式如下: 把 if (typeof define === "function" && (define.amd)) { define( "jquery", [], function() { return jQuery; }); } 改成 if (typeof defin

  • inputSuggest文本框输入时提示、自动完成效果(邮箱输入自动补全插件)

    像QQ邮箱提示.百度的搜索框提示.淘宝的商品搜索提示等,现在有不少的网站都有类似效果,以提升用户体验. 使用方法: new InputSuggest({ input HTMLInputElement 必选 data Array ['sina.cn','sina.com','2008.sina.com','vip.sina.com.cn'] 必选 containerCls 容器className itemCls 容器子项className activeCls 高亮子项className width

  • JS实现仿新浪微博发布内容为空时提示功能代码

    本文实例讲述了JS实现仿新浪微博发布内容为空时提示功能.分享给大家供大家参考.具体如下: 这里使用JavaScript模拟新浪微博的一个功能,在发布微博的内容为空时,文本框提醒用户这里没有输入内容,本功能让人感觉网页很智能,在和你对话一样,很人性化.本特效引用了一个外部了JS封装类,你可下载到本地使用. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-fsina-info-submit-empty-style-codes/ 具体代码如下:

  • Ubuntu VPS中wordpress网站打开时提示”建立数据库连接错误”的解决办法

    一.发现问题 在尝试编辑博客站点的Wordpress主题时,突然发现博客站点无法连接:刷新后提示"建立数据库连接错误"之类的错误.自然想到是mysql可能出错了,所以就登陆了VPS主机,尝试启动mysql服务,但是提示failed. 二.解决方法 1.打开/var/log/mysql/error.log文件,查看出错日志.在阅读日志时发现第一条错误提示是:[ERROR] Can't open the mysql.plugin table. Please run mysql_upgrad

  • ThinkPHP做文字水印时提示call an undefined function exif_imagetype()解决方法

    本文实例讲述了ThinkPHP做文字水印时提示call an undefined function exif_imagetype()解决方法.分享给大家供大家参考.具体如下: 一.问题描述: ThinkPHP做文字水印 ,今天做一个电子请帖,就把祝福语贴到图片上面,发现一直报错是取不到图片类型,比如gif,jpg等,并提示call an undefined function exif_imagetype(). 二.解决方法: 出现这个错误就是php.in 配置问题,打开即可:打开扩展 exten

  • Android实现加载时提示“正在加载,请稍后”的方法

    前言 这篇文章主要介绍的是,如何实现点击按钮,弹出"正在加载数据,请稍候-"对话框,加载完了之后,对话框自动消失呢? 其实也是很简单的看下面代码: import com.farsunset.ichat.example.R; import android.os.Bundle; import android.app.Activity; import android.app.ProgressDialog; public class DateReportActivity extends Act

随机推荐