win10 mars xlog编译

 

一. 环境准备

安装 cmake 以及 python2.7, 以及下载 ndk-r16b,并配置环境变量 NDK_ROOT 指向 ndk 路径。

如果是 Windows 系统还需要安装 cygwin,并务必要安装其中的 make, gcc gdb。 然后把 cygwin 的 bin 目录配置到环境变量中的 PATH 中

  1. 安装cmake
    https://cmake.org/download/

     
    cmake_install.png

下载后,安装常规方式安装即可。
在安装时需要注意的是:
为所有用户添加CMake环境变量:

 
cmake_install2.jpg

安装成功后打开应该是这样:

 
 
  1. 安装python2.7
    https://www.python.org/downloads/release/python-2716/下载后双击安装包进行安装

2.1 选择是否将Python.exe添加到系统Path环境变量(也可以安装完成后手动在环境变量添加/删除Python.exe 路径)

 
python2.png

2.2 安装后验证通过应该是这样:

 
python3.png
  1. 安装 cygwin
    https://cygwin.com/install.html
    3.1 下载后点击setup-x86_64.exe安装,出现安装画面。直接点“下一步”,出现安装模式的对话框,如下图所示:

     
    Cygwin1.png

我们看到有三种安装模式:

  • Install from Internet,这种模式直接从Internet安装,适合网速较快的情况;
  • Download Without Installing,这种模式只从网上下载Cygwin的组件包,但不安装;
  • Install from Local Directory,这种模式与上面第二种模式对应,当你的Cygwin组件包已经下载到本地,则可以使用此模式从本地安装Cygwin。

在这一步,需要注意,为了获得最快的下载速度,我们首先在列表中寻找Cygwin中国镜像的地址:http://www.cygwin.cn,如果找到就选中这个地址;如果找不到这个地址,就选一个国内的镜像地址,或者使用阿里云镜像(http://mirrors.aliyun.com/cygwin/)选择完成后,点击“下一步”,

 
cygwin_1.png

这一步,我们选择需要下载安装的组件包,为了使我们安装的Cygwin能够编译xlog,需要安装

  • make
  • gcc
  • gdb

     
    cygwin_2.png

3.2 安装后验证
运行cygwin,在弹出的命令行窗口输入:
cygcheck -c cygwin
会打印出当前cygwin的版本和运行状态,如果status是ok的话,则cygwin运行正常。

 
cygwin_5.png

然后依次输入gcc –version,g++ --version,make –version,gdb –version进行测试,如果都打印出版本信息和一些描述信息,非常高兴的告诉你,你的cygwin安装完成了!

 
cygwin_3.png
 
cygwin_4.png

3.2.1 在windows命令下使用cygwin

要想在Windows命令提示符下使用Cygwin,你需要添加Cygwin到Windows环境变量。
打开命令提示符来测试软件测试几个Linux命令。
正如下面的图片里所看到的,pwd和ls在Windows命令提示符工作正常

 
cygwin_win10.png
  1. ndk-r16b
    https://developer.android.com/ndk/downloads/older_releases.html?hl=zh-cn

     
    ndkr16.png
    1. 解压android-ndk-r16b-windows-x86_64.zip
    1. 设置NDK_ROOT环境变量,在系统变量中增加。值如:”D:\android-ndk-r16b“;
    1. 把”%NDK_ROOT%“加入到系统变量Path中,记得分号隔开。
      配置成功:

       
      ndkr16bsuc.png

环境配置小结

到此环境准备成功了,接下来准备编译试试

编译xlog

所有的编译脚本都在mars/mars 目录, 运行编译脚本之前也必须cd到此目录,在当前目录下运行,默认是编译 armeabi 的,如果需要其他 CPU 架构,把编译脚本中的archs = set(['armeabi'])稍作修改即可。

 
xlog编译4.png
archs = set(['armeabi','armeabi-v7a','x86','arm64-v8a','x86_64'])

开始编译

python build_android.py

执行命令后,会让选择:

Enter menu:
1\. Clean && build mars.
2\. Build incrementally mars.
3\. Clean && build xlog.
4\. Exit

如需要自定义日志加密算法或者长短连协议加解包,请选择static libs选项,即 2 和 3。选项 1 和 2 输出结果全部在 mars_android_sdk 目录中,3 和 4 输出结果全部在 mars_xlog_sdk 目录中。
结果:

 
xlog编译6.png

xlog应用

 

win10 mars xlog编译的更多相关文章

  1. win10下通过编译源码方式在chrome中成功安装react-devtools开发工具插件

    win10下通过编译源码方式在chrome中成功安装react-devtools开发工具插件   1.去git上下载react-devtools文件到本地,https://github.com/fac ...

  2. Win10系统下编译GDAL1.9.2版本

    环境说明: 1.Win10企业版.64位: 2.VS2012旗舰版: 3.GDAL1.9.2 GADL编译 1.解压GDAL压缩包至F:\GDAL\gdal-1.9.2: 2.设置GDAL编译后安装目 ...

  3. Win10系统下编译GEOS3.6.2

    环境说明 1.Win10专业版.64位: 2.VS2012旗舰版: 3.cmake-3.9.0.64位: 资源准备 GEOS管网(http://trac.osgeo.org/geos)下载3.4.3版 ...

  4. Win10系统下编译OSG3.4

    环境说明 1.Win10专业版.64位: 2.VS2012旗舰版:QT5.2.0: 3.cmake-3.9.0.64位: 资源准备 1.OSG3.4源码包 http://trac.opensceneg ...

  5. win10操作系统vs2010编译osg3.4.0问题解决记录

    参考博客:OSG3.4.0+VS2010+WIN10编译及二次开发环境搭建 链接:https://blog.csdn.net/hsc1239653453/article/details/7827856 ...

  6. Win10 VS2015 静态编译Qt5.6.2源码

    由于VS2015需要CRT等拓展组件,因此把内部编写的工具软件以静态发布,固需要编译Qt源码.Qt5.6.2版本,VS2015,Win10 1.安装python,perl,下载jom 2.改文件com ...

  7. win10子系统linux编译ffmpeg

    android-ndk-r14b(linux版) ffmpeg-4.0 开启win10子系统(控制面板->程序和功能->启用或关闭Windows功能 然后在 适用与 Linux 的 Win ...

  8. 【E2E】Tesseract5+VS2017+win10源码编译攻略

    一,记录我目前在win10 X64和VS2017的环境下成功编译Tesseract5.0的方式: 二,记录在VS2017 C++工程中调用Tesseract4.0的方法: 三,记录编译和调用Tesse ...

  9. win10使用cmake编译libevent(解决依赖openssl)

    概述 win10没有安装openssl cmake version: 3.18 libevent version: 2.1.10-stable libevent目前的版本中写好了 CMakeLists ...

随机推荐

  1. zabbix 自动发现 监控 硬盘读写 disk io

    直接 上配置: 1.配置文件 cat userparameter_harddisk.conf #discovery hard diskUserParameter=custom.vfs.discover ...

  2. JS字符串转换为JSON的四种方法

    转自:https://www.cnblogs.com/hgmyz/p/7451461.html 1.jQuery插件支持的转换方式:  示例: $.parseJSON( jsonstr ); //jQ ...

  3. Base64编码解码(js)

    开源的base64.js,使用很简单,浏览器引入该JS文件,然后Base64编码这样: Base64.encode('china is so nb'); // 编码 "Y2hpbmEgaXM ...

  4. MIME类型和Java类型

    MIME类型和Java类型 类型转换Spring Cloud Stream提供的开箱即用如下表所示:“源有效载荷”是指转换前的有效载荷,“目标有效载荷”是指转换后的“有效载荷”.类型转换可以在“生产者 ...

  5. h5 唤起app或跳转appStore

    //唤起app通过唤端媒介(URL Scheme)   //微信浏览器自6.3.x版本起禁用了大多数Scheme跳转功能,扫一扫目前可用   // URL 的组成:   // [scheme:][// ...

  6. [转]docx4j实现动态表格(模板式)

    原文地址:https://chendd.cn/information/viewInformation/other/257.a 除了前篇文章中讲到的编程式创建表格外,基于模板实现的列表表格也是非常常用或 ...

  7. BGP MPLS IP V匹N基本概念

    BGP/MPLS IP VPN基本概念 Site 在介绍VPN时经常会提到"Site",Site(站点)的含义可以从下述几个方面理解: · Site是指相互之间具备IP连通性的一组 ...

  8. kotlin基础 常见容器的取值范围

  9. git解决error: The following untracked working tree files would be overwritten by checkout

    在IDEA中进行分支切换时,出现如此错误,导致无法正常切换:error: The following untracked working tree files would be overwritten ...

  10. python初级(302) 6 对象(三)

    一.复习 1.什么是魔法方法? 2.什么是类的初始化函数? 二.什么是self 使用一个类可以创建多个对象实例,例如: ball1 = Ball("red", "smal ...