NVIDIA TX2 (Ubuntu 16.04)上安装CUDA 8.0

使用如下方式安装:

至于如何获取最新的 NVIDIA TX2上使用的 CUDA 8.0版本的下载地址,请访问Jetson Download Center,下载目前最新的JetPack 3.1。执行之后在存储目录下的 repository.json中找到最新的下载链接即可。当然也可以让JetPack 3.1自动下载完成最新的 CUDA 8.0版本到指定目录。

NVIDIA TX2 (Ubuntu 16.04)上安装ROS

首先编辑安装源

找到如下内容

开启 universe源,修改为:

然后更新源

然后执行如下安装脚本:

参考链接


Ubuntu 16.04上使用crosstool-ng编译Nvidia TX2上使用的boost库

目前在 Nvidia TX2上尝试安装 ROS Kinetic的时候发现依赖 libboost-all-dev,但是自带的源http://ports.ubuntu.com下面没有合适的源,尽管在 universe源下面包含 libboost-all-dev ,但是实际安装的时候发现安装不上。

因此尝试手工编译最新的 boost安装包,建立自己的源。

首先,编译安装最新的 crosstool-ng,如下:

生成的工具链在 ~/x-tools/aarch64-rpi3-linux-gnueabi目录下,编译的时候,指定编译工具即可。

安装编译依赖

接着,下载并编译最新的代码

注意,对于 boost-1.58来说,当时的代码是没有检测 ARM64的功能的,当年也没有 ARM64的芯片。因此需要修改 {boost_root}/libs/config/checks/architecture/arm.cpp里面的代码,增加 ARM64的判断

调整为

参考链接


Ubuntu 16.04.3在使用GeForce GTX 970显卡的电脑上无法安装以及启动的解决方法

最近在一台安装了 GeForce GTX 970显卡的机器上,一直无法安装 Ubuntu 16.04.3系统的时候,一直卡住在如下界面:

继续阅读Ubuntu 16.04.3在使用GeForce GTX 970显卡的电脑上无法安装以及启动的解决方法

Linux下编辑ISO文件的方法

我们知道 Windows下有类似 UltraISO的这样的软件可以用来编辑 ISO文件,可引导 ISO也没有问题。近来在 Linux下玩的比较多,正好要改个 ISO,于是就开始找 Linux下有没有类似的软件。

Ubuntu软件中心里有一款叫 ISOMaster的软件,可以创建和修改 ISO文件。

继续阅读Linux下编辑ISO文件的方法

OpenCV使用cv::imshow在子线程中更新图片不刷新

Ubuntu 16.04上测试 OpenCV 3.2,遇到一个在子线程中更新图像,而界面不刷新的问题。

编译执行如下代码:

可以看到,上面的代码执行之后,界面并没有出现,即使出现也没有刷新。

这个问题是由于界面更新必须在主线程中执行,需要手工通知主线程。

修改后的代码如下:

也就是每次更新图片后手工调用代码

这个等候时间,只要大于 即可,比如:

参考链接


c++ opencv image not display inside the boost thread

文件'/var/lib/update-notifier/package-data-downloads/partial/adobe-flashplugin_20170912.1.orig.tar.gz'无法被用户'_apt'访问,无法降低权限以进行下载。 - pkgAcquire::Run (13: 权限不够)

最近在更新 Ubuntu 16.04系统的时候,发现总是在安装 Adobe Flash更新的时候失败,提示如下信息:

如果系统语言是英文的,可能看到下面的信息:

解决方法如下:

这样,就可以正常安装更新了。

参考链接


Can't drop privileges for downloading as file '/var/lib/update-notifier/package-data-downloads/partial/andale32.exe' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied)

ubuntu 16.04执行letsencrypt的时候报告错误“ImportError: No module named datetime”

网站一直使用 letsencrypt提供的 HTTPS证书,这个证书的问题在于每隔三个月就必须更新一次,本次更新证书的时候,提示如下错误:

错误发生的原因在于 letsencrypt自己构建了一个 Python的虚拟环境来隔离,但是早期建立的虚拟环境中是缺少部分软件包的,而自身的 BUG导致也没有重新更新虚拟环境,导致出现异常。

解决方法就是删除 letsencrypt自己构建的 Python的虚拟环境,然后继续执行脚本让他重建即可。

参考链接


Ubuntu 16.04系统上修改Docker镜像的存储路径

最近在 Ubuntu 16.04系统上使用 Docker结果由于默认的镜像存储路径在系统分区上,而系统分区又不足够大,导致整个系统都不能正常工作了。

因此我们需要把 Docker的镜像存储目录移动到数据分区。

执行如下命令查询默认的存储路径

我们看到如下输出

比较简单的方法是通过软链接的方式来实现,具体命令如下:

参考链接


Ubuntu 14.04系统上安装部署OpenWhisk(本地CouchDB版本)

1.安装配置CouchDB

校验 CouchDB是否工作正常

看到如下输出即可

2.编译配置OpenWhisk

下载 OpenWhisk的源代码

配置 OpenWhisk编译需要的环境

执行编译

3.发布并运行OpenWhisk服务

配置运行环境

安装必备软件

运行测试 Demo

如过想查看刚刚通过 vagrant部署完成的镜像系统里面的内容,则执行如下命令:

如果成功部署了 OpenWhisk,那么可以在 Docker机器中执行如下代码验证是否可以正常调用

外部的机器访问则执行如下命令来验证

4.遇到的问题

最大的问题是在编译发布的过程中系统分区被消耗干净,导致编译发布失败。
解决方法如下
1.参照Ubuntu 16.04系统上修改Docker镜像的存储路径介绍的方法调整 Docker镜像的存储路径到合适的分区
2.如果使用 sudo的方式执行,那么可能会在 /root目录下生成虚拟机的镜像文件,同样导致系统分区被消耗,解决方法也是通过软链接的方式把 /root目录链接到合适的分区目录

如过执行中遇到如下错误,则增加 -i参数即可

参考链接