可以通过下面的文章来编译著名的deepmind系统。

How to build DeepMind Lab

DeepMind Lab uses Bazel as its build system. Its main BUILD file defines a number of build targets and their dependencies. The build rules should work out of the box on Debian (Jessie or newer) and Ubuntu (version 14.04 or newer), provided the required packages are installed. DeepMind Lab also builds on other Linux systems, but some changes to the build files might be required, see below.

DeepMind Lab is written in C99 and C++11, and you will need a sufficiently modern compiler. GCC 4.8 should suffice.

Step-by-step instructions for Debian or Ubuntu

Tested on Debian 8.6 (Jessie) and Ubuntu 14.04 (Trusty) and newer.

Install Bazel by adding a custom APT repository, as described on the Bazel homepage or using an installer. This should also install GCC and zip.

Install DeepMind Lab's dependencies:

$ sudo apt-get install lua5.1 liblua5.1-0-dev libffi-dev gettext \
    freeglut3-dev libsdl2-dev libosmesa6-dev python-dev python-numpy realpath
Clone or download DeepMind Lab.

Build DeepMind Lab and run a random agent:

$ cd lab
# Build the Python interface to DeepMind Lab with OpenGL
lab$ bazel build :deepmind_lab.so --define headless=glx
# Build and run the tests for it
lab$ bazel run :python_module_test --define headless=glx
# Rebuild the Python interface in non-headless mode and run a random agent
lab$ bazel run :random_agent --define headless=false
The Bazel target :deepmind_lab.so builds the Python module that interfaces DeepMind Lab. It can be build in headless hardware rendering mode (--define headless=glx), headless software rendering mode (--define headless=osmesa) or non-headless mode (--define headless=false).

The random agent target :random_agent has a number of optional command line arguments. Run

lab$ bazel run :random_agent -- --help
to see those.

Building on Red Hat Enterprise Linux Server

Tested on release 7.2 (Maipo).

Add the Extra Packages as described on fedoraproject.org

Install Bazel's and DeepMind Lab's dependencies

sudo yum -y install unzip java-1.8.0-openjdk lua lua-devel libffi-devel zip \
  java-1.8.0-openjdk-devel gcc gcc-c++ freeglut-devel SDL2 SDL2-devel \
  mesa-libOSMesa-devel python-devel numpy
Download and run a Bazel binary installer, e.g.

sudo yum -y install wget
wget https://github.com/bazelbuild/bazel/releases/download/0.3.2/bazel-0.3.2-installer-linux-x86_64.sh
sh bazel-0.3.2-installer-linux-x86_64.sh
Clone or download DeepMind Lab.

Edit lua.BUILD to reflect how Lua is installed on your system:

cc_library(
    name = "lua",
    linkopts = ["-llua"],
    visibility = ["//visibility:public"],
)
The output of pkg-config lua --libs --cflags might be helpful to find the right include folders and linker options.

Build DeepMind Lab using Bazel as above.

Building on SUSE Linux

Tested on SUSE Linux Enterprise Server 12.

Install Bazel's and DeepMind Lab's dependencies

sudo zypper --non-interactive install java-1_8_0-openjdk \
  java-1_8_0-openjdk-devel gcc gcc-c++ lua lua-devel python-devel \
  python-numpy-devel libSDL-devel libOSMesa-devel freeglut-devel
Download and run a Bazel binary installer, e.g.

sudo yum -y install wget
wget https://github.com/bazelbuild/bazel/releases/download/0.3.2/bazel-0.3.2-installer-linux-x86_64.sh
sh bazel-0.3.2-installer-linux-x86_64.sh
Clone or download DeepMind Lab.

Edit lua.BUILD to reflect how Lua is installed on your system:

cc_library(
    name = "lua",
    linkopts = ["-llua"],
    visibility = ["//visibility:public"],
)
The output of pkg-config lua --libs --cflags might be helpful to find the right include folders and linker options.

Edit python.BUILD to reflect how Python is installed on your system:

cc_library(
    name = "python",
    hdrs = glob([
        "include/python2.7/*.h",
        "lib64/python2.7/site-packages/numpy/core/include/**/*.h",
    ]),
    includes = [
        "include/python2.7",
        "lib64/python2.7/site-packages/numpy/core/include",
    ],
    visibility = ["//visibility:public"],
)
The outputs of rpm -ql python and rpm -ql python-numpy-devel might be helpful to find the rihgt include folders.

Build DeepMind Lab using Bazel as above.

https://github.com/deepmind/lab/blob/master/docs/build.md

1. RPG游戏从入门到精通


2. WiX安装工具的使用

3. 俄罗斯方块游戏开发
http://edu.csdn.net/course/detail/51104. boost库入门基础
http://edu.csdn.net/course/detail/50295.Arduino入门基础
http://edu.csdn.net/course/detail/49316.Unity5.x游戏基础入门
http://edu.csdn.net/course/detail/48107. TensorFlow API攻略
http://edu.csdn.net/course/detail/44958. TensorFlow入门基本教程
http://edu.csdn.net/course/detail/43699. C++标准模板库从入门到精通 
http://edu.csdn.net/course/detail/332410.跟老菜鸟学C++
http://edu.csdn.net/course/detail/290111. 跟老菜鸟学python
http://edu.csdn.net/course/detail/259212. 在VC2015里学会使用tinyxml库
http://edu.csdn.net/course/detail/259013. 在Windows下SVN的版本管理与实战 
http://edu.csdn.net/course/detail/257914.Visual Studio 2015开发C++程序的基本使用 
http://edu.csdn.net/course/detail/257015.在VC2015里使用protobuf协议
http://edu.csdn.net/course/detail/258216.在VC2015里学会使用MySQL数据库
http://edu.csdn.net/course/detail/2672

怎么样编译DeepMind?的更多相关文章

  1. 常用增强学习实验环境 I (MuJoCo, OpenAI Gym, rllab, DeepMind Lab, TORCS, PySC2) (转载)

    原文地址:http://blog.csdn.net/jinzhuojun/article/details/77144590 和其它的机器学习方向一样,强化学习(Reinforcement Learni ...

  2. Ubuntu下常用强化学习实验环境搭建(MuJoCo, OpenAI Gym, rllab, DeepMind Lab, TORCS, PySC2)

    http://lib.csdn.net/article/aimachinelearning/68113 原文地址:http://blog.csdn.net/jinzhuojun/article/det ...

  3. TODO:macOS编译PHP7.1

    TODO:macOS编译PHP7.1 本文主要介绍在macOS上编译PHP7.1,有兴趣的朋友可以去尝试一下. 1.下载PHP7.1源码,建议到PHP官网下载纯净到源码包php-7.1.0.tar.g ...

  4. Centos6.5下编译安装mysql 5.6

    一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm -qa | grep mysql 有的话通过下面的命令来卸载掉 rpm -e mysql //普通删除模式 rpm -e ...

  5. CENTOS 6.5 平台离线编译安装 PHP5.6.6

    一.下载php源码包 http://cn2.php.net/get/php-5.6.6.tar.gz/from/this/mirror 二.编译 编译之前可能会缺少一些必要的依赖包,加载一个本地yum ...

  6. CENTOS 6.5 平台离线编译安装 Mysql5.6.22

    一.下载源码包 http://cdn.mysql.com/archives/mysql-5.6/mysql-5.6.22.tar.gz 二.准备工作 卸载之前本机自带的MYSQL 安装 cmake,编 ...

  7. Android注解使用之注解编译android-apt如何切换到annotationProcessor

    前言: 自从EventBus 3.x发布之后其通过注解预编译的方式解决了之前通过反射机制所引起的性能效率问题,其中注解预编译所采用的的就是android-apt的方式,不过最近Apt工具的作者宣布了不 ...

  8. Hawk 6. 编译和扩展开发

    Hawk是开源项目,因此任何人都可以为其贡献代码.作者也非常欢迎使用者能够扩展出更有用的插件. 编译 编译需要Visual Stuido,版本建议使用2015, 2010及以上没有经过测试,但应该可以 ...

  9. android studio 使用 jni 编译 opencv 完整实例 之 图像边缘检测!从此在andrid中自由使用 图像匹配、识别、检测

    目录: 1,过程感慨: 2,运行环境: 3,准备工作: 4,编译 .so 5,遇到的关键问题及其解决方法 6,实现效果截图. (原创:转载声明出处:http://www.cnblogs.com/lin ...

随机推荐

  1. 20145216史婧瑶《Java程序设计》第三次实验报告

    实验三 敏捷开发与XP实践 实验内容 使用git上传代码,两个人进行小组合作,队友下载代码并修改再重新上传. 实验步骤 一. 使用git上传代码 1.找到需要push的文件所在文件夹,右键点击Git ...

  2. redis命令的使用

    批量删除特定前缀的keys redis-cli KEYS "prefix:*" | xargs redis-cli DEL 返回list的长度 > LPUSH test &q ...

  3. Btrace使用入门

    1.什么是BTrace BTrace是sun公司推出的一款Java 动态.安全追踪(监控)工具,可以在不用重启的情况下监控系统运行情况,方便的获取程序运行时的数据信息,如方法参数.返回值.全局变量和堆 ...

  4. iOS开发进阶 - 自定义UICollectionViewLayout实现瀑布流布局

    移动端访问不佳,请访问我的个人博客 最近项目中需要用到瀑布流的效果,但是用UICollectionViewFlowLayout又达不到效果,自己动手写了一个瀑布流的layout,下面是我的心路路程 先 ...

  5. 配置ssh秘钥登陆

    环境2台linux服务器:node1 192.168.X.234                               node2 192.168.X.242 演示用node1无密码登陆node ...

  6. Why not inherit from List<T>?

    问题: When planning out my programs, I often start with a chain of thought like so: A football team is ...

  7. HTTP-API-DESIGN 怎样设计一个合理的 HTTP API (二)

    接上篇 HTTP-API-DESIGN 怎样设计一个合理的 HTTP API (一) 整个 ppt 可以去这里下载. 这一篇主要从服务端应该如何返回合理的返回值的角度,讨论如何设计一个合理的 HTTP ...

  8. 配置spring boot 内置tomcat的accessLog日志

    #配置内置tomcat的访问日志server.tomcat.accesslog.buffered=trueserver.tomcat.accesslog.directory=/home/hygw/lo ...

  9. C#显示接口实现和隐式接口实现

    在项目中可能会遇到显示接口实现和隐式接口实现.什么意思呢?简单来说使用接口名作为方法名的前缀,这称为“显式接口实现”:传统的实现方式,称为“隐式接口实现”.隐式接口实现如下: interface IS ...

  10. 51nod-1574-排列转换

    1574 排列转换  题目来源: CodeForces 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题  收藏  关注 现在有两个长度为n的排列p和s.要求通过交换 ...