本篇文章主要解决mac下安装ProtoBuffer,编译go版本gRPC用的.proto文件 安装 protoc 注意,gRPC 需要用到 proto3, 而目前 Release 的版本是 2.6.1, 所以我们需要去下载源码并编译. https://developers.google.com/protocol-buffers/docs/downloads?hl=zh-cn protobuf 的源码在: https://github.com/google/protobuf Mac的特有前置安装需…
1.起因: 手上有一个用到了boost的asio库和thread库的工程要编译到手机上(Android版本和ios版本),本文只介绍如何编译到Android版本,ios版本之后再介绍,也许就不介绍了(注:因为mac下官方有教程如何编译) 2.准备工作 2.1 下载boost库,我这里用到的是1.58.0 2.2 下载NDK(注:Google官方地址,需要FQ),根据情况自己选择下载版本,我这里用的是android-ndk-r10d-windows-x86_64.exe 2.3 安装visual…
编译gRPC 目录 一.概述 二.编译gRPC 三.C#中使用gRPC 四.C++中使用gRPC 无论通过哪种语言调用gRPC,都必须要编译gRPC,因为生成proto访问类时,除了产生标准的数据定义类之外,还需要产生客户端代理类.客户端代理类必须由gRPC的各个语言的protoc插件来完成.而这些插件需要在gRPC编译后才能编译生成. 下面我们一步步的来说明如何得到gRPC. 获取gRPC源码 gRPC是开源框架,项目代码在github上,所以首先要安装github.github安装后,在指定…
目录 一.概述 二.编译gRPC 三.C#中使用gRPC 四.C++中使用gRPC 无论通过哪种语言调用gRPC,都必须要编译gRPC,因为生成proto访问类时,除了产生标准的数据定义类之外,还需要产生客户端代理类.客户端代理类必须由gRPC的各个语言的protoc插件来完成.而这些插件需要在gRPC编译后才能编译生成. 下面我们一步步的来说明如何得到gRPC. 获取gRPC源码 gRPC是开源框架,项目代码在github上,所以首先要安装github. github安装后,在指定文件夹中,执…
对于一些已经解决的问题,本博客不再讨论.只将本人遇到的问题做简单的说明. 一.VS 2013编译64位版本QT 4.8.6 QT项目官网中,对于QT4,其只提供了windows X86的版本,并且支持VS2010及以下版本. 如果我们的开发环境是VS2010以上版本,使用QT4.8.6-VS2010库来进行开发的话,将会在编译的时候提示缺少msvcpxxx.dll等一系列缺少dll文件的错误,即使我们下载好了MS VC runtime.(以开发环境为VS2013,并使用QT4.8.6-VS201…
姚冬,中老年程序员 进藤光.杨个毛.欧阳修 等人赞同 我是来反对楼上某些答案的.我曾经用MFC写了金山词霸(大约20多万行),又用Qt写了YY语音(大约100多万行),算是对两种框架都比较有经验.纠正几个错误的认识. 1. “用Qt写的程序编译比MFC慢”的说法是错误的绝对错误,单位代码行数编译Qt远比MFC快得多,因为Qt库的头文件设计非常好,尽量都使用了前置声明,避免了头文件嵌套,几乎所有类都使用了公有类和私有类的设计,把没必要公开的声明放到私有头文件里,避免了编译时引入过多代码.而MFC没…
最近在看<.如果Clobber/Modify 为空,则其前面的冒号(:)必须省略. 2.如果Output,Input,Clobber/Modify都为空,Output,Input之前的冒号(:)既可以省略,也可以不省略. 3.如果Input,Clobber/Modify为空,但Output不为空,Input前的冒号(:)既可以省略,也可以不省略. 4.如果后面的部分不为空,而前面的部分为空,则前面的冒号(:)都必须保留,否则无法说明不为空的部分究竟是第几部分. 每一个Input和Output表达…
从来没见过Fortran...这次为了添加国产卫星光谱响应的支持,只能从零开始肯了. 6S模型主页:http://6s.ltdri.org/index.html. 下载最新的2015年更新的6SV2.1源码. 下载windows 64位版本的gfortran,我直接下载的gcc编译器,里面包含了Fortran编译器. mingw-w64 GCC for Windows 64 & 32 bits 网址:https://gcc.gnu.org/wiki/GFortranBinaries 下载完毕后是…
在Windows系统上一批可以下载但是需要经过编译再安装的第三方的直接编译后的版本(UCI页面) (https://www.lfd.uci.edu/~gohlke/pythonlibs/) win10上安装wordcloud: https://blog.csdn.net/m0_38015368/article/details/80182477 https://www.lfd.uci.edu/~gohlke/pythonlibs/#wordcloud https://www.icourse163.…
转载:http://blog.csdn.net/fengshuiyue/article/details/39530093(基本教程) 转载:https://my.oschina.net/u/1420791/blog/198247 转载:http://www.cnblogs.com/flylong0204/p/4723155.html 转载:http://www.tuicool.com/articles/VNRzEbq 转载:http://blog.csdn.net/hei_ya/article/…
系统环境:Fedora 13 + gcc-4.4.5 最近在看<linux内核0.11完全注释>一书,由于书中涉及汇编语言的地方众多,本人在大学时汇编语言学得一塌糊涂,所以实在看不下去了,头都大了只 好匆匆看了个头尾(前面几章和最后一章).看来即使有<九阴真经>这样的武功秘籍,内功不够也是修炼不出来神马来的.于是索性下了个0.11版本的 kernel下来尝试编译一把. linux-0.11.tar.gz 下载地址:ftp://ftp.kernel.org/pub/linux/ker…
开发环境:vs2008+Qt4.8.4源码库 其他环境请自己尝试,原理应该是差不多的 Qt编译生成静态库 1.         本教程只针对在win32平台,使用VS开发工具(例子以VS2008为例) 2.         下载Qt的源代码(针对Qt4,关于Qt5没测试过) 3.         解压Qt源代码到目标目录,如: 4.         打开” mkspecs”目录,找到目标平台的文件夹,如:” win32-msvc2008”;打开” qmake.conf”文件,找到下面语句: QM…
java编译: java编译就是.java文件变成.class文件的过程,这个过程一般在我们常用的编译器中进行,例如Ecliplse和IDEA等:下面以IDEA举例: 执行上述编译使用的JDK版本就是我们不同编译器所设置的java版本: java运行: java运行就是我们编译得到的字节码文件(就是.class文件)在安装了Java运行环境(JVM)的计算机上运行,此时使用的的JDK版本就是我们配置的JAVA_HOME对应的java版本.我们可以通过在命令行执行:java -version来查看…
前言   Qt使用一些压缩解压功能,介绍过libzip库编译,本篇说明zlib库.需要用到zlib的msvc2015x64版本,编译一下.   版本编译引导 zlib在windows上的mingw32版本编译:<zlib开发笔记(一):zlib库介绍.编译和工程模板> zlib在ubuntu上的编译:<zlib开发笔记(二):zlib库介绍.ubuntu平台编译和工程模板> zlib在ubuntu上的arm交叉编译:<zlib开发笔记(三):zlib库介绍.在ubuntu上进…
本章将讲解如何通过svn命令获取某版本后改动的所有文件 一键操作,告别svn log的繁杂对比工作. 1:安装SVN命令行工具Subversion(不是TortoiseSVN) 下载Subversion,并安装,本人安装目录为 D:\Subversion 2:把Subversion配置到环境变量,使其可以通过dos窗口执行命令 进入安装目录,找到bin文件,把bin路径配置到环境变量Path下.如图所示: 3:打开dos窗口,执行svn help,出现如下内容则配置成功. 4:准备工作结束,激动…
. . . . . 查看某个版本提交了哪些文件,其实就是查看该版本与其上一个版本之间的差异,所以通过 git diff 命令来取得结果,并且对比的是要查看的版本与它的上一个版本的 commit 号. >$ git diff hash1 hash2 --stat 如果不加上 --stat 参数会显示每个文件内容的两个版本之间的差异,加上该参数后就只显示发生变更的文件名了. 参考文献: Git如何获得两个版本间所有变更的文件列表…
先看两篇博文,作为基础知识.如果对C/C++编译链接过程都了解的话,可以跳过不看. http://www.firedragonpzy.com.cn/index.php/archives/2556 http://www.cppblog.com/shifan3/archive/2007/01/05/17325.html 一.  编译不同目录下的多个文件 各个文件的布局如下: head.h文件的代码: #ifndef  HEAD_H #define  HEAD_H int add(int a, int…
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 大家知道SpriteBuilder版本停留在1.4.9已经很久了: 而且里面搭配的Cocos2D版本也不是最新的3.4.9版. 在2015年年末,KAMIKAZE决定将SpriteBuilder从原来"万年"不更新的1.4.9版本更新到1.5.0版本,他的原文是: I decided to upgrade SpriteBuilder to 1.5.0…
0 基础     我们知道Git有三大区(工作区.暂存区.版本库)以及几个状态(untracked.unstaged.uncommited),下面只是简述下Git的大概工作流程,详细的可以参见本博客的其他有关Git的文章[链接].  (1)打开你的项目文件夹,除了隐藏的.git文件夹,其他项目文件位于的地方便是工作区,工作区的文件需要添加到Git的暂存区(git add),随后再提交到Git的版本库(git commit). (2)首次新建的文件都是untracked状态(未跟踪),此时需要gi…
转载请注明: 仰望高端玩家的小清新 http://www.cnblogs.com/luruiyuan/ 如何解决pytorch 编译时CUDA版本与运行时CUDA版本不对应 如果pytorch的编译时CUDA版本和运行时CUDA版本不一致时,由于不同的 nvcc 编译器会生成不同的动态函数代码,由此会导致自己编写的 CUDA 函数无法正确运行. 常见的错误有: undefined symbol: __cudaRegisterFatBinaryEnd (运行时为CUDA10.1,编译时CUDA版本…
设置Eclipse在编译(build)前自动保存源代码文件 Eclipse 常用设置之让Eclipse在编译(build)前自动保存源代码文件 一.让Eclipse在编译(build)前自动保存源代码文件 这个操作很关键,如果编译前不保存.Eclipse还是编译原来的文件.我经常性把代码改来改去,怎么编译都发现结果不对.结果仔细一看,气死了.修改后的源文件没有保存! 别小看这个设置哦!也许关键时刻能帮你一把! 如有更多问题,欢迎加入芯航线 FPGA 技术支持群交流学习:一群 472607506(…
今天大波又提起昨天我说的那个程序.这样的,起初我想写一个makefile,每次写完新代码后一键编译目录下所有的.cpp文件. 原因是用makefile的话,每次要把目标文件加紧去才能编译.感觉不方便.想写一个makefile,一劳永逸.每次写完新代码后直接编译,不用再加入目标文件. 但查了很多治疗,没发现能解决问题的代码.大波问我,干嘛不用shell写一个呢.所以,我暂时放弃makefile,用shell写了一个. 实现的基本功能:编译目录下所有.c和.cpp文件. 代码: #! /bin/ba…
Java Decompiler[java 反编译]:开发了反编译工具.能够方便查看*.class 文件源代码.以下介绍几种查看源代码的方式:工具&插件 1.JD-GUI JD-GUI  是显示java 源码 *.class文件的 图形界面工具.能够在这里下载:JD-GUI-DownLoad 下载下来后.打开该工具.直接将jar包 拖拽到 显示窗体就可以查看源码. 举例:通过 jd-gui.exe 工具 查看 xUtils-2.6.14.jar 包 源代码: watermark/2/text/aH…
ndk编译C++.提示找不到头文件(ndk-build error: string: No such file or directory) 被这个问题弄得愁眉苦脸啊.心想为啥一个string都找不到呢..于是百度到了. . . 遇到这个问题,就在所在的文件夹 Application.mk 文件里.加入: APP_STL := gnustl_static 就能够找到标准库了! 最后知道真相的我.眼泪掉下来啊!…
1 动态查看日志 tail -f filename tail -1000f filename 2 解压当前目录内容为xxx.zip  zip -r xxx.zip ./* 3 查看内存使用情况 free -m 4 vim批量替换字符串:%s/source_str/target_str/g 使用场景,个人博客网站移植新服务器过程中,用户文章文件之前保存的图片地址带有原服务器ip,需要批量替换为新服务器ip,用这个方法很合适. 5 Linux shell中获取日期:DATE=$(date +%Y%m…
C语言程序经过编译链接后形成二进制映像文件由栈,堆,数据段,代码段组成,其中数据段又分为:只读数据段,已经初始化读写数据段,未初始化数据段(BSS段).如下图所示: 1.栈区(stack):由编译器自动分配释放,存放函数的参数值,局部变量等值.其操作方式类似于数据结构中的栈. 2.堆区(heap):一般由程序员释放,若程序员不释放,则可能会引起内存泄露. 注:1)堆和数据结构中的堆栈不一样,其类是链表. 2)所谓的内存泄露是指程序在不断运行中内存越来越少,如果程序结束了,那么操作系统会自动将其占…
Clion中编译多个cpp(实现单文件编译) 在不做任何配置情况下,Clion工程下只能有一个main()函数,新建多个cpp会导致报main()函数重复定义的错误,所以默认情况下无法在一个工程下编译多个cpp文件. 要想实现单文件编译,或者说编译过多个cpp文件,有两种解决方法: 手动配置CMakeLists.txt 安装插件(推荐) 手动配置CMakeLists.txt 像这样,为每个cpp文件制定唯一的编译器,编译运行的时候,选择相应的编译器即可. 更简单的方法是,第一次运行的时候使用快捷…
编译TensorFlow-serving GPU版本 TensorFlow Serving 介绍 编译GPU版本 下载源码 git clone https://github.com/tensorflow/serving.git 创建镜像 nvidia-docker build --pull -t $USER/tensorflow-serving-devel -f serving/tensorflow_serving/tools/docker/Dockerfile.devel-gpu . 创建并进…
git提取出两个版本之间的差异文件并打包 首先你得知道版本之间的commit id git log –pretty=oneline $ git log --pretty=oneline 1 差异文件并打包 git diff这个命令能比较两个提交之间的差异,使用–name-only参数可以只显示文件名.由于commit id 太长 一般复制前面7位 就可以了 例如: $ git diff 61d2112 f3c0f99 --name-only //后续打包太麻烦 不采用 1 2 git diff列…
使用苹果手机测试 调用微信的js-sdk在系统中实现上传.预览附件的功能.在自己的手机测试通过后,直接丢给QA测试了 本以为相安无事了,没想到QA用安卓手机测的时候居然不得,使用的是下载下来的jweixin-1.2.0.js wx.previewFile({ url: url, // 需要预览文件的地址(必填,可以使用相对路径) --> 需要带域名和端口号 name: name ? name : '', // 需要预览文件的文件名(不填的话取url的最后部分) size: 22189 // 需要…