MAC 没电了,哎.....

只能使用windows10将就了。   

截至目前,我已经找到了两个nanogui项目,都是大佬。 分别为:

  A、https://github.com/dalerank/nanogui

  B、https://github.com/wjakob/nanogui  

区别:

  1、A 链接的nanogui相对B而言,控件库更丰富, 多了控件 table等控件。

  2、B链接的nanogui,不支持vulkan.

  3、A链接的nanogui, 同时提供了UI设计的 editor.

本文将介绍 A连接的源码。

---------------- 源码A---------------------

我准备好了一份完整的源码, 下载后,可以直接通过编译, 避免出现下面的坑。

  下载链接:https://github.com/mohistH/nanogui_from_dalerank

  或者  https://github.com/mohistH/nanogui_from_dalerank/releases/tag/1.0.1

------ 踩坑总结:

  1、按照之前的方式下载了源码(https://github.com/dalerank/nanogui),使用cmake配置,cmake提示:

CMake Error at CMakeLists.txt:66 (message):
No backends selected! Select one of backends: opengl(NANOGUI_GLFW_BACKEND),
dx11(NANOGUI_DX11_BACKEND), dx12(NANOGUI_DX12_BACKEND),
vulkan(NANOGUI_VULKAN_BACKEND)

  2、于是自己打开 【CMakeLists.txt】, 将 【NANOGUI_GLFW_BACKEND】(根据你的需要)设置为ON(默认为OFF),并保存。

  3、打开CMake, clear cache。 重新配置,发现提示如下:

CMake Error at CMakeLists.txt:73 (message):
The NanoGUI dependency repositories (GLFW, etc.) are missing! You probably
did not clone the project with --recursive. It is possible to recover by
calling "git submodule update --init --recursive"

  4、于是重新使用终端来到源码文件夹,重新执行下载, 这里 也说过了下载源码的指令。下载源码的指令如下:

$ mkdir nanogui-test
$ cd nanogui-test
$ git init
$ git submodule add https://github.com/wjakob/nanogui.git lib/nanogui
$ git submodule update --init --recursive

  5、第一次下载源码nanogui,少了上面的最后一条指令。 重新执行后,下载成功,并且使用cmake重新配置成功。

  注意:上面的指令是下载源码B的方式,下载源码A的指令如下:

$ cd nanogui-test
$ git init
$ git submodule add https://github.com/dalerank/nanogui.git lib/nanogui
$ git submodule update --init --recursive

  6、我已经将下载好的源码放到了 github(点击访问), 可以下载后,直接配置生成成功。 mac没电了,就放一张windows下的cmake截图吧

  

  7、打开 cmake的构建目录,发现已经生成了解决方案(MAC没电了,Windows 将就了)。用VS打开 解决方案,选择项目all build , 执行 生成。生成结果:

  8、运行结果(cmake生成的项目,我选择生成了我需要的):

nanogui源码编译+下载的更多相关文章

  1. 【转】Android 4.3源码的下载和编译环境的安装及编译

    原文网址:http://jingyan.baidu.com/article/c85b7a641200e0003bac95a3.html  告诉windows用户一个不好的消息,windows环境下没法 ...

  2. Android源码的下载和编译

    由于公司会安排我做硬解码这块,所以最近一直想研究一下Android源码,可是Android源码的下载真的挺麻烦的(可能是我第一次下载),参照网上的方法,没有一个可行的,现在就将我的下载过程和大家分享一 ...

  3. 【流媒体开发】VLC Media Player - Android 平台源码编译 与 二次开发详解 (提供详细800M下载好的编译源码及eclipse可调试播放器源码下载)

    作者 : 韩曙亮  博客地址 : http://blog.csdn.net/shulianghan/article/details/42707293 转载请注明出处 : http://blog.csd ...

  4. Spring源码研究--下载-编译-导入eclipse-验证

    一,环境配置 操作系统:Unbutu14.04LTS JDK: 1.8.0_40 git: 1.9.1 gradle: 2.2.1 二,源码下载-编译-导入eclipse-验证 1,下载 使用git直 ...

  5. Android源码和内核源码的下载,编译和执行

    笔者依据罗升阳老师的<Android 系统源码情景分析>一书,尝试下载,编译和执行Android源码和内核源码.但可能是软件源"被墙"或版本号更新的原因.期间遇到诸多问 ...

  6. Android stdio Apktool源码编译

    Android Apktool源码编译 标签(空格分隔): Android Apktool 源码编译 需求 习惯NetBeans调试smali需要用Apktool反编译apk,需要用-d的参数才能生成 ...

  7. SSH/SSL 源码编译安装简易操作说明

    环境:CentOS 6.7 安全加固需求,由于某盟扫描系统主机有SSL系列漏洞,客户要求必须修复: 解决方案:将SSH/SSL升级到最新版本,删除SSL旧版本(实测不删除旧版本某盟扫描无法通过). 当 ...

  8. Hadoop源码编译过程

    一.           为什么要编译Hadoop源码 Hadoop是使用Java语言开发的,但是有一些需求和操作并不适合使用java,所以就引入了本地库(Native Libraries)的概念,通 ...

  9. World Wind .NET源码编译问题处理

    World  Wind  .NET源码编译问题处理 下载了World_Wind_1.4.0_Source源码(http://worldwindcentral.com/wiki/NASA_World_W ...

随机推荐

  1. Codeforces 79D - Password(状压 dp+差分转化)

    Codeforces 题目传送门 & 洛谷题目传送门 一个远古场的 *2800,在现在看来大概 *2600 左右罢( 不过我写这篇题解的原因大概是因为这题教会了我一个套路罢( 首先注意到每次翻 ...

  2. 实现一个简单的类似不蒜子的PV统计器

    内部的放到gitlab pages的博客,需要统计PV,不蒜子不能准确统计,原因在于gitlab的host设置了strict-origin-when-cross-origin, 导致不蒜子不能正确获取 ...

  3. python函数理解 json.dump()

    信息来自python说明文档(https://docs.python.org/3/library/json.html) 函数功能 输出一个python对象到文件 函数声明 json.dump(obj, ...

  4. 重测序(RADseq)做群体遗传分析套路

    实验材料 构建的群体,或自然群体,如各地方品种. RAD文库构建 提取DNA后,构建文库,简要步骤如下: ① 限制性内切酶TaqI酶切: ② 连接P1接头: ③ DNA随机打断片断化: ④ 目的片段回 ...

  5. Oracle-distinct()用法、count(distinct( 字段A || 字段B))是什么意思?distinct多个字段

    0.distinct用法 在oracle中distinct的使用主要是在查询中去除重复出现的数据 直接在字段前加distinct关键字即可,如:select distinct 名字 from tabl ...

  6. 亿级Web系统搭建:单机到分布式集群

    亿级Web系统搭建:单机到分布式集群 当一个Web系统从日访问量10万逐步增长到1000万,甚至超过1亿的过程中,Web系统承受的压力会越来越大,在这个过程中,我们会遇到很多的问题.为了解决这些性能压 ...

  7. 使用Postman轻松实现接口数据关联

    Postman Postman是一款非常流行的HTTP(s)接口测试工具,入门简单,界面美观,功能强大.作为一个测试/开发工程师,这是一款必须要会用的工具.今天以一个实际的案例,来介绍下Postman ...

  8. A Child's History of England.42

    The names of these knights were Reginald Fitzurse, William Tracy, Hugh de Morville, and Richard Brit ...

  9. day02 Linux基础

    day02 Linux基础 1.什么是服务器 服务器,也称伺服器,是提供计算服务的设备.由于服务器需要响应服务请求,并进行处理,因 此一般来说服务器应具备承担服务并且保障服务的能力. windows: ...

  10. Celery进阶

    Celery进阶 在你的应用中使用Celery 我们的项目 proj/__init__.py   /celery.py   /tasks.py 1 # celery.py 2 from celery ...