Installing Pycharm, Python Tensorflow, Cuda and cudnn in Ubu


星期日, 02. 九月 2018 11:58下午 - beautifulzzzz

The version compatibility across the OS and these packages is a nightmare for every new person who tries to use Tensorflow.  In here, I record the successful procedure to install everything listed in the title of this note.


   Connection Manager简称connman,connman是使用d-bus做为进程间通信机制来管理Linux网络链接的一种软件。在connman的d-bus接口中,有一个接口叫做service。该接口的全称为:net.connman.Service,自然是挂在net.connman上面的。做为net.connman.Service接口,它可以访问到network的细节以及用户偏好使用什么类型的网络(比如3g、wifi、wimax等等)。外部的程序就通过net.connman.Service的一堆Properties和Methods来实现它基本的功能。(可能诠释的不对,可能是整体的connman的功能)


Related articles

  • Network configuration
  • Wireless network configuration
  • Category:Network configuration

ConnMan is a command-line network manager designed for use with embedded devices and fast resolve times. It is modular through a plugin architecture, but has native DHCP and NTP support.

图片 1

First of all, make sure that you have the exact same version of software in every steps, or it may not work.  To install Tensorflow at Ubuntu, you will need to install Ubuntu 16.04.  Run 


  • 1 Installation
    • 1.1 Desktop clients
  • 2 Usage
    • 2.1 Wired
    • 2.2 Wi-Fi
      • 2.2.1 Enabling and disabling wifi
      • 2.2.2 Connecting to an open access point
      • 2.2.3 Connecting to a protected access point
    • 2.3 Settings
    • 2.4 Technologies
  • 3 Tips and tricks
    • 3.1 Avoid changing the hostname
    • 3.2 Prefer ethernet to wireless
    • 3.3 Exclusive connection
    • 3.4 Connecting to eduroam (802.1X)
    • 3.5 Avoiding conflicts with local DNS server
    • 3.6 Blacklist interfaces
  • 4 Troubleshooting
    • 4.1 Error /net/connman/technology/wifi: Not supported
    • 4.2 Error /net/connman/technology/wifi: No carrier
    • 4.3 Error Failed to set hostname/domainname
    • 4.4 Unknown route on connection
  • 5 See also

1. Introduction

Bluez is the default Bluetooth protocol stack on Linux. It should be present and installed on your Linux distribution. If not, building and installing from source is not too difficult:

  • Download the latest stable source release of Bluez from here. Unzip the compressed file you downloaded.
  • Install the headers and libraries required for Bluez compilation:

图片 2

lsb_release -a 


Install the connman package. wpa_supplicant and bluez are optional dependencies required for Wi-Fi and Bluetooth functionality respectively.

Before enabling connman.service, ensure any existing network configuration is disabled.

2. Download And Install

I follow the blog (Installing Bluez 5.44 onto Raspbian?) to install bluez-5.50.

Download the most recent version from the official page:.

For example, at the time of writing it was 5.50, so I used(on my pi):


Then I extracted it and built it:

tar -xf bluez-5.50.tar.xz
cd bluez-5.50

Read the README! It lists the dependencies and the configure switches:

Install the dependencies first: (glib, dbus, libdbus, udev, etc.)

sudo apt install libdbus-1-dev libudev-dev libical-dev libreadline-dev

note: If you do not install the libdbus-1-dev, you will later get this strange error:

configure: error: D-Bus >= 1.6 is required

once you've installed dependencies, you can configure switches:

./configure --prefix=/usr --mandir=/usr/share/man --sysconfdir=/etc --localstatedir=/var  --enable-experimental

then do:

sudo make install

It takes maybe 10 minutes to compile. After installing, you should find bluetoothd in /usr/libexec/bluetooth. You should also see bluetoothd in /usr/lib/bluetooth.

Go to each of these directories and type

./bluetoothd --version

You'll note that the one in libexec is new and the one in lib is old.

In order to make sure that d-bus is talking to you new BlueZ 5.50 and not your old BlueZ 5.43, you need to tell systemd to use the new bluetooth daemon:

sudo vim /lib/systemd/system/bluetooth.service

Make sure the exec.start line points to your new daemon in /usr/libexec/bluetooth.

For me, that wasn't enough. No matter what, upon restart I always got bluetoothd 5.43... So I just created a symlink from the old one to the new.

First rename the old file:

sudo mv /usr/lib/bluetooth/bluetoothd /usr/lib/bluetooth/bluetoothd-543.orig

Create the symlink:

sudo ln -s /usr/libexec/bluetooth/bluetoothd /usr/lib/bluetooth/bluetoothd
sudo systemctl daemon-reload

That should do it.

图片 3

to check the version of your Ubuntu.  If you want to dual-boost OS from window10, like what I did, there is another note teach you how to do the dual-boost.  The following passages assume you have already had your Ubuntu 16.04 installed correctly.

Desktop clients

  • cmst — Qt GUI for ConnMan.

|| cmstAUR

  • connman-ncurses — Simple ncurses UI for ConnMan; not all of connman functionality is implemented, but usable (with X or from terminal without X), see the wiki.

|| connman-ncurses-gitAUR

  • connman-notify — Connman event notification client

|| connman-notifyAUR[[broken link]( archived in [aur-mirror](]

  • ConnMan-UI — GTK3 client applet.

|| connman-ui-gitAUR

  • connman_dmenu — Client/frontend for dmenu.

|| connman_dmenu-gitAUR

  • Econnman — Enlightenment desktop panel applet. || econnmanAUR

  • LXQt-Connman-Applet — LXQt desktop panel applet.

|| lxqt-connman-applet-gitAUR

  • qconnman-ui — Qt management interface used on O.S. Systems products

|| qconnman-ui-gitAUR[[broken link]( archived in [aur-mirror](]

  • connman-gtk — GTK client.

|| connman-gtkAUR

  • gnome-extension-connman — Gnome3 extension for connman; it contains only some of the functionality without installing connman-gtk.


3. How to use the bluez and hcitool


图片 4This article or section needs expansion.图片 5

Reason: Only Wired and Wi-Fi plugins are described. (Discuss in Talk:ConnMan#)

ConnMan has a standard command line client connmanctl. It can run in 2 modes:

  • In command mode commands are entered as arguments to connmanctl command, just like systemctl.
  • Interactive mode is started by typing connmanctl without arguments. Prompt will change to connmanctl> to indicate it is waiting for user commands, just like python interactive mode. The interactive mode supports tab completion, which makes finding the correct connection easy.