1. 源代码地址:https://github.com/google/snappy

    下载 git clone https://github.com/google/snappy
  2. 编译
    • 进入snappy源代码文件夹,运行命令: ./autogen.sh

      报错 “./autogen.sh: line 3: aclocal: command not found”

      通过http://superuser.com/questions/657925/cygwin-rtorrent-installing-libtorrent-autogen-sh-aclocal-not-found这篇文章得知,系统没有安装automake,

      运行命令: breaw install automake

      报错“-bash: brew: command not found”

      安装 brew

      运行 命令:ruby -e "$(curl -f sSL https://raw.githubusercontent.com/Homebrew/install/master/install)"



      然后 安装 automake,运行命令: brew install automake

      运行命令:./autogen.sh

      报错:“./autogen.sh: line 5: libtoolize: command not found”

      安装 libtool。运行命令:brew install libtool

      继续运行命令:./autogen.sh

      报错“./autogen.sh: line 5: libtoolize: command not found”

      通过这篇文章:http://stackoverflow.com/questions/15448582/installed-libtool-but-libtoolize-not-found

      我是在改动./autogen.sh 把第五行改成 glibtoolize --copy

      网上也有这样改得(我没试):
case `uname` in Darwin*) glibtoolize --copy ;;
*) libtoolize --copy ;; esac

运行命令:./autogen.sh

报错:“configure.ac:42: error: possibly undefined macro: AC_DEFINE

If this token and others are legitimate, please use m4_pattern_allow.

See the Autoconf documentation.

configure.ac:44: error: possibly undefined macro: AC_MSG_FAILURE”

通过这篇文章http://stackoverflow.com/questions/8811381/possibly-undefined-macro-ac-msg-error

我安装了pkgconfig,运行命令:brew install pkgconfig

报错“rm: autom4te.cache/output.0: Permission denied

rm: autom4te.cache/output.1: Permission denied

rm: autom4te.cache/requests: Permission denied

rm: autom4te.cache/traces.0: Permission denied

rm: autom4te.cache/traces.1: Permission denied

rm: autom4te.cache: Directory not empty



改成sudo ,运行命令:sudo ./autogen.sh

- 运行configure ,运行命令:./configure

- 运行make。运行命令:make

- 运行make install,运行命令:make install

3. 验证

macox下编译snappy静态库的更多相关文章

  1. VS2015——命令行下编译、静态库动态库制作以及断点调试

    c程序编译流程 程序的基本流程如图: 1. 预处理 预处理相当于根据预处理指令组装新的C/C++程序.经过预处理,会产生一个没有宏定义,没有条件编译指令,没有特殊符号的输出文件,这个文件的含义同原本的 ...

  2. 在Windows 环境下编译Qt静态库(QT5.32)

    参考链接 Qt5.3 Tools and Versions MinGW ICU ActivePerl Qt 安装MinGW工具链环境 这里在Win32环境下要安装一个MinGW工具链,这里最好是先安装 ...

  3. Mac下编译libpomelo静态库,并在cocos2dx项目中引用

    最近在学习cocos2dx的过程中需要和服务器进行交互,所以这几天在学习libpomelo静态库的编译和使用.之前在windows系统下编译libpomelo,并在VS中引入比较顺利:但是,目前对Ma ...

  4. 使用CMake在Linux下编译tinyxml静态库

    环境:CentOS6.6+tinyxml_2_6_21.下载并解压tinyxml_2_6_2.zip unzip tinyxml_2_6_2.zip 2.在tinyxml文件夹里创建一个CMakeLi ...

  5. 如何在WINDOWS下编译BOOST C++库 .

    如何在WINDOWS下编译BOOST C++库 cheungmine 2008-6-25   写出来,怕自己以后忘记了,也为初学者参考.使用VC8.0和boost1.35.0.   1)下载boost ...

  6. dlib编译成静态库及被其它程序调用

    一.git下载:https://github.com/davisking/dlib 官网:http://dlib.net/ 二.vs中编译成静态库 1.在vs2015中创建静态库工程(vs2015以上 ...

  7. 【转】iOS编译OpenSSL静态库(使用脚本自动编译)

    原文网址:https://www.jianshu.com/p/651513cab181 本篇文章为大家推荐两个脚本,用来iOS系统下编译OpenSSL通用库,如果想了解编译具体过程,请参看<iO ...

  8. 使用CMake编译跨平台静态库

    在开始介绍如何使用CMake编译跨平台的静态库之前,先讲讲我在没有使用CMake之前所趟过的坑.因为很多开源的程序,比如png,都是自带编译脚本的.我们可以使用下列脚本来进行编译:   . / con ...

  9. C++开发新版本vs使用旧版本vs编译的静态库动态库

    关于vs潜在的升级问题概述 (Visual C++)查看官网的介绍:潜在的升级问题概述 (Visual C++).主要问题: 1. 如果使用 /GL(全程序优化)进行编译,则生成的对象文件只能使用生成 ...

随机推荐

  1. Oracle 数据库常用操作语句大全

    一.Oracle数据库操作 1.创建数据库      create database databasename 2.删除数据库      drop database dbname 3.备份数据库 完全 ...

  2. JAVA提高十二:HashMap深入分析

    首先想说的是关于HashMap源码的分析园子里面应该有很多,并且都是分析得很不错的文章,但是我还是想写出自己的学习总结,以便加深自己的理解,因此就有了此文,另外因为小孩过来了,因此更新速度可能放缓了, ...

  3. C/C++程序在main之前执行代码

    来源:<周哥教IT.C语言深学活用>https://ke.qq.com/course/242707#tuin=a71606 我们在学习C/C++语言的时候,通常认为main函数是整个程序执 ...

  4. centos7安装python3和Django后,ModuleNotFoundError: No module named '_sqlite3'

    1.准备安装环境 yum groupinstall 'Development Tools' yum install zlib-devel bzip2-devel openssl-devel ncurs ...

  5. Windows命令行command的Shell命令详细解析和语法

    CMD命令大全及详细解释和语法 Microsoft Windows XP [版本 5.1.2600] 有关某个命令的详细信息,请键入 HELP 命令名 ASSOC    显示或修改文件扩展名关联. A ...

  6. httpwebrequest 用GET方法时报无法发送具有此谓词类型的内容正文

    如下一段小程序,运行结果报无法发送具有此谓词类型的内容正文的错误,其实原因很简单,因为用的是GET的方式进行提交,而GetRequestStream()是用来在post提交的时候写post的内容的流, ...

  7. C#中简单的this与get的用法(string,decimal)

    代码 namespace First{publicpartialclass Form1 : Form{public Form1(){InitializeComponent();} privatevoi ...

  8. Datatbel和 string之间的相互转换

     Datatable 到 string public static string DataTableToString(DataTable dt)        {            //!@&am ...

  9. Docker Register安装与基本认证

    准备 基本事项 Docker环境 登录授权方式 镜像存放地址 HTTPS外网访问 启动Docker Registry 1. 基本事项 本篇涉及到的数据文件都放在/data目录下, 其中会有三个子目录 ...

  10. 结合java.util.TreeMap源码理解红黑树

    前言 本篇将结合JDK1.6的TreeMap源码,来一起探索红-黑树的奥秘.红黑树是解决二叉搜索树的非平衡问题. 当插入(或者删除)一个新节点时,为了使树保持平衡,必须遵循一定的规则,这个规则就是红- ...