docker(40) Cコンパイラ３種をdockerで(その２）

Cコンパイラ３種をdockerで
https://qiita.com/kaizen_nagoya/items/77184cf005490d7579e6
は、gcc, mscode, clangの順に入れようとした。

ここでは、gcc, clang, mscodeの順に入れてみる。

# gcc
gccを最初にするのは、３つのうち唯一公式dockerがあり、それを利用するため。

```shell-session:macOS
$ docker run -it gcc /bin/bash
```

# clang

```shell-session:docker/ubuntu
# apt update; apt -y upgrade
# apt install vim wget sudo apt-utils curl 
#  apt install -y clang
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  binfmt-support clang-3.8 libclang-common-3.8-dev libclang1-3.8 libgc1c2 libjsoncpp1 libllvm3.8 libobjc-6-dev
  libobjc4 libpipeline1 llvm-3.8 llvm-3.8-dev llvm-3.8-runtime
Suggested packages:
  gnustep gnustep-devel clang-3.8-doc llvm-3.8-doc
The following NEW packages will be installed:
  binfmt-support clang clang-3.8 libclang-common-3.8-dev libclang1-3.8 libgc1c2 libjsoncpp1 libllvm3.8
  libobjc-6-dev libobjc4 libpipeline1 llvm-3.8 llvm-3.8-dev llvm-3.8-runtime
0 upgraded, 14 newly installed, 0 to remove and 0 not upgraded.
Need to get 58.0 MB of archives.
After this operation, 293 MB of additional disk space will be used.
Get:1 http://deb.debian.org/debian stretch/main amd64 libpipeline1 amd64 1.4.1-2 [27.6 kB]
Get:2 http://deb.debian.org/debian stretch/main amd64 libgc1c2 amd64 1:7.4.2-8 [208 kB]
Get:3 http://deb.debian.org/debian stretch/main amd64 binfmt-support amd64 2.1.6-2 [59.5 kB]
Get:4 http://deb.debian.org/debian stretch/main amd64 libllvm3.8 amd64 1:3.8.1-24 [10.4 MB]
Get:5 http://deb.debian.org/debian stretch/main amd64 libclang1-3.8 amd64 1:3.8.1-24 [4190 kB]
Get:6 http://deb.debian.org/debian stretch/main amd64 libobjc4 amd64 6.3.0-18+deb9u1 [49.5 kB]
Get:7 http://deb.debian.org/debian stretch/main amd64 libobjc-6-dev amd64 6.3.0-18+deb9u1 [196 kB]
Get:8 http://deb.debian.org/debian stretch/main amd64 libclang-common-3.8-dev amd64 1:3.8.1-24 [2198 kB]
Get:9 http://deb.debian.org/debian stretch/main amd64 clang-3.8 amd64 1:3.8.1-24 [22.8 MB]
Get:10 http://deb.debian.org/debian stretch/main amd64 clang amd64 1:3.8-36 [5810 B]                               
Get:11 http://deb.debian.org/debian stretch/main amd64 llvm-3.8-runtime amd64 1:3.8.1-24 [87.9 kB]                 
Get:12 http://deb.debian.org/debian stretch/main amd64 llvm-3.8 amd64 1:3.8.1-24 [1548 kB]                         
Get:13 http://deb.debian.org/debian stretch/main amd64 libjsoncpp1 amd64 1.7.4-3 [75.6 kB]                         
Get:14 http://deb.debian.org/debian stretch/main amd64 llvm-3.8-dev amd64 1:3.8.1-24 [16.1 MB]                     
Fetched 58.0 MB in 11s (5197 kB/s)                                                                                 
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package libpipeline1:amd64.
(Reading database ... 29985 files and directories currently installed.)
Preparing to unpack .../00-libpipeline1_1.4.1-2_amd64.deb ...
Unpacking libpipeline1:amd64 (1.4.1-2) ...
Selecting previously unselected package libgc1c2:amd64.
Preparing to unpack .../01-libgc1c2_1%3a7.4.2-8_amd64.deb ...
Unpacking libgc1c2:amd64 (1:7.4.2-8) ...
Selecting previously unselected package binfmt-support.
Preparing to unpack .../02-binfmt-support_2.1.6-2_amd64.deb ...
Unpacking binfmt-support (2.1.6-2) ...
Selecting previously unselected package libllvm3.8:amd64.
Preparing to unpack .../03-libllvm3.8_1%3a3.8.1-24_amd64.deb ...
Unpacking libllvm3.8:amd64 (1:3.8.1-24) ...
Selecting previously unselected package libclang1-3.8:amd64.
Preparing to unpack .../04-libclang1-3.8_1%3a3.8.1-24_amd64.deb ...
Unpacking libclang1-3.8:amd64 (1:3.8.1-24) ...
Selecting previously unselected package libobjc4:amd64.
Preparing to unpack .../05-libobjc4_6.3.0-18+deb9u1_amd64.deb ...
Unpacking libobjc4:amd64 (6.3.0-18+deb9u1) ...
Selecting previously unselected package libobjc-6-dev:amd64.
Preparing to unpack .../06-libobjc-6-dev_6.3.0-18+deb9u1_amd64.deb ...
Unpacking libobjc-6-dev:amd64 (6.3.0-18+deb9u1) ...
Selecting previously unselected package libclang-common-3.8-dev.
Preparing to unpack .../07-libclang-common-3.8-dev_1%3a3.8.1-24_amd64.deb ...
Unpacking libclang-common-3.8-dev (1:3.8.1-24) ...
Selecting previously unselected package clang-3.8.
Preparing to unpack .../08-clang-3.8_1%3a3.8.1-24_amd64.deb ...
Unpacking clang-3.8 (1:3.8.1-24) ...
Selecting previously unselected package clang.
Preparing to unpack .../09-clang_1%3a3.8-36_amd64.deb ...
Unpacking clang (1:3.8-36) ...
Selecting previously unselected package llvm-3.8-runtime.
Preparing to unpack .../10-llvm-3.8-runtime_1%3a3.8.1-24_amd64.deb ...
Unpacking llvm-3.8-runtime (1:3.8.1-24) ...
Selecting previously unselected package llvm-3.8.
Preparing to unpack .../11-llvm-3.8_1%3a3.8.1-24_amd64.deb ...
Unpacking llvm-3.8 (1:3.8.1-24) ...
Selecting previously unselected package libjsoncpp1:amd64.
Preparing to unpack .../12-libjsoncpp1_1.7.4-3_amd64.deb ...
Unpacking libjsoncpp1:amd64 (1.7.4-3) ...
Selecting previously unselected package llvm-3.8-dev.
Preparing to unpack .../13-llvm-3.8-dev_1%3a3.8.1-24_amd64.deb ...
Unpacking llvm-3.8-dev (1:3.8.1-24) ...
Setting up libllvm3.8:amd64 (1:3.8.1-24) ...
Setting up libclang-common-3.8-dev (1:3.8.1-24) ...
Setting up libclang1-3.8:amd64 (1:3.8.1-24) ...
Setting up libgc1c2:amd64 (1:7.4.2-8) ...
Setting up libpipeline1:amd64 (1.4.1-2) ...
Processing triggers for libc-bin (2.24-11+deb9u4) ...
Setting up libjsoncpp1:amd64 (1.7.4-3) ...
Setting up binfmt-support (2.1.6-2) ...
mount: permission denied
update-binfmts: warning: Couldn't mount the binfmt_misc filesystem on /proc/sys/fs/binfmt_misc.
mount: permission denied
update-binfmts: warning: Couldn't mount the binfmt_misc filesystem on /proc/sys/fs/binfmt_misc.
mount: permission denied
update-binfmts: warning: Couldn't mount the binfmt_misc filesystem on /proc/sys/fs/binfmt_misc.
invoke-rc.d: could not determine current runlevel
invoke-rc.d: policy-rc.d denied execution of start.
Setting up libobjc4:amd64 (6.3.0-18+deb9u1) ...
Setting up libobjc-6-dev:amd64 (6.3.0-18+deb9u1) ...
Setting up llvm-3.8-runtime (1:3.8.1-24) ...
mount: permission denied
update-binfmts: warning: Couldn't mount the binfmt_misc filesystem on /proc/sys/fs/binfmt_misc.
Setting up llvm-3.8 (1:3.8.1-24) ...
Setting up llvm-3.8-dev (1:3.8.1-24) ...
Setting up clang-3.8 (1:3.8.1-24) ...
Setting up clang (1:3.8-36) ...
Processing triggers for libc-bin (2.24-11+deb9u4) ...
```

# ms code

```shell-session:docker/ubuntu
# apt install dialog
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following NEW packages will be installed:
  dialog
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 262 kB of archives.
After this operation, 1138 kB of additional disk space will be used.
Get:1 http://deb.debian.org/debian stretch/main amd64 dialog amd64 1.3-20160828-2 [262 kB]
Fetched 262 kB in 0s (1943 kB/s)
debconf: unable to initialize frontend: Dialog
debconf: (No usable dialog-like program is installed, so the dialog based frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 76, <> line 1.)
debconf: falling back to frontend: Readline
Selecting previously unselected package dialog.
(Reading database ... 33556 files and directories currently installed.)
Preparing to unpack .../dialog_1.3-20160828-2_amd64.deb ...
Unpacking dialog (1.3-20160828-2) ...
Setting up dialog (1.3-20160828-2) ...

# curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   983  100   983    0     0   1596      0 --:--:-- --:--:-- --:--:--  1598

# install -o root -g root -m 644 microsoft.gpg /etc/apt/trusted.gpg.d/

# sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list'

...

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following NEW packages will be installed:
  apt-transport-https
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 171 kB of archives.
After this operation, 243 kB of additional disk space will be used.
Get:1 http://deb.debian.org/debian stretch/main amd64 apt-transport-https amd64 1.4.9 [171 kB]
Fetched 171 kB in 0s (2234 kB/s)        
Selecting previously unselected package apt-transport-https.
(Reading database ... 33710 files and directories currently installed.)
Preparing to unpack .../apt-transport-https_1.4.9_amd64.deb ...
Unpacking apt-transport-https (1.4.9) ...
Setting up apt-transport-https (1.4.9) ...

# apt update
Hit:1 http://security.debian.org/debian-security stretch/updates InRelease
Ign:2 http://deb.debian.org/debian stretch InRelease
Get:3 https://packages.microsoft.com/repos/vscode stable InRelease [3181 B]
Get:4 https://packages.microsoft.com/repos/vscode stable/main amd64 Packages [132 kB]
Hit:5 http://deb.debian.org/debian stretch-updates InRelease
Hit:6 http://deb.debian.org/debian stretch Release                                 
Fetched 135 kB in 1s (81.8 kB/s)
Reading package lists... Done
Building dependency tree       
Reading state information... Done
All packages are up to date.

# apt -y install code
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  adwaita-icon-theme at-spi2-core dconf-gsettings-backend dconf-service glib-networking glib-networking-common
  glib-networking-services gsettings-desktop-schemas libatk-bridge2.0-0 libatspi2.0-0 libcolord2 libdconf1 libdrm2
  libegl1-mesa libepoxy0 libgbm1 libgtk-3-0 libgtk-3-bin libgtk-3-common libjson-glib-1.0-0
  libjson-glib-1.0-common libnotify4 libnspr4 libnss3 libproxy1v5 librest-0.7-0 libsecret-1-0 libsecret-common
  libsoup-gnome2.4-1 libsoup2.4-1 libwayland-client0 libwayland-cursor0 libwayland-egl1-mesa libwayland-server0
  libx11-xcb1 libxcb-dri2-0 libxcb-dri3-0 libxcb-present0 libxcb-sync1 libxcb-xfixes0 libxkbcommon0 libxkbfile1
  libxshmfence1 libxss1 libxtst6 notification-daemon xkb-data
Suggested packages:
  colord gvfs
The following NEW packages will be installed:
  adwaita-icon-theme at-spi2-core code dconf-gsettings-backend dconf-service glib-networking
  glib-networking-common glib-networking-services gsettings-desktop-schemas libatk-bridge2.0-0 libatspi2.0-0
  libcolord2 libdconf1 libdrm2 libegl1-mesa libepoxy0 libgbm1 libgtk-3-0 libgtk-3-bin libgtk-3-common
  libjson-glib-1.0-0 libjson-glib-1.0-common libnotify4 libnspr4 libnss3 libproxy1v5 librest-0.7-0 libsecret-1-0
  libsecret-common libsoup-gnome2.4-1 libsoup2.4-1 libwayland-client0 libwayland-cursor0 libwayland-egl1-mesa
  libwayland-server0 libx11-xcb1 libxcb-dri2-0 libxcb-dri3-0 libxcb-present0 libxcb-sync1 libxcb-xfixes0
  libxkbcommon0 libxkbfile1 libxshmfence1 libxss1 libxtst6 notification-daemon xkb-data
0 upgraded, 48 newly installed, 0 to remove and 0 not upgraded.
Need to get 77.7 MB of archives.
After this operation, 319 MB of additional disk space will be used.
Get:1 http://deb.debian.org/debian stretch/main amd64 libxss1 amd64 1:1.2.2-1 [17.5 kB]
Get:2 http://deb.debian.org/debian stretch/main amd64 adwaita-icon-theme all 3.22.0-1+deb9u1 [11.5 MB]
Get:3 https://packages.microsoft.com/repos/vscode stable/main amd64 code amd64 1.37.0-1565227985 [54.8 MB]
Get:4 http://deb.debian.org/debian stretch/main amd64 libatspi2.0-0 amd64 2.22.0-6+deb9u1 [60.9 kB]
Get:5 http://deb.debian.org/debian stretch/main amd64 libxtst6 amd64 2:1.2.3-1 [27.8 kB]
Get:6 http://deb.debian.org/debian stretch/main amd64 at-spi2-core amd64 2.22.0-6+deb9u1 [69.3 kB]
Get:7 http://deb.debian.org/debian stretch/main amd64 libnotify4 amd64 0.7.7-2 [21.9 kB]
Get:8 http://deb.debian.org/debian stretch/main amd64 libnspr4 amd64 2:4.12-6 [117 kB]
Get:9 http://deb.debian.org/debian stretch/main amd64 libnss3 amd64 2:3.26.2-1.1+deb9u1 [1161 kB]
Get:10 http://deb.debian.org/debian stretch/main amd64 libxkbfile1 amd64 1:1.0.9-2 [74.6 kB]
Get:11 http://deb.debian.org/debian stretch/main amd64 libsecret-common all 0.18.5-3.1 [24.0 kB]
Get:12 http://deb.debian.org/debian stretch/main amd64 libsecret-1-0 amd64 0.18.5-3.1 [96.5 kB]
Get:13 http://deb.debian.org/debian stretch/main amd64 libdconf1 amd64 0.26.0-2+b1 [37.6 kB]
Get:14 http://deb.debian.org/debian stretch/main amd64 dconf-service amd64 0.26.0-2+b1 [34.7 kB]
Get:15 http://deb.debian.org/debian stretch/main amd64 dconf-gsettings-backend amd64 0.26.0-2+b1 [26.4 kB]
Get:16 http://deb.debian.org/debian stretch/main amd64 libgtk-3-common all 3.22.11-1 [3416 kB]
Get:17 http://deb.debian.org/debian stretch/main amd64 libatk-bridge2.0-0 amd64 2.22.0-2 [56.3 kB]
Get:18 http://deb.debian.org/debian stretch/main amd64 libcolord2 amd64 1.3.3-2 [252 kB]
Get:19 http://deb.debian.org/debian stretch/main amd64 libepoxy0 amd64 1.3.1-2 [176 kB]
Get:20 http://deb.debian.org/debian stretch/main amd64 libjson-glib-1.0-common all 1.2.6-1 [166 kB]
Get:21 http://deb.debian.org/debian stretch/main amd64 libjson-glib-1.0-0 amd64 1.2.6-1 [178 kB]
Get:22 http://deb.debian.org/debian stretch/main amd64 libproxy1v5 amd64 0.4.14-2 [57.4 kB]
Get:23 http://deb.debian.org/debian stretch/main amd64 glib-networking-common all 2.50.0-1 [49.1 kB]
Get:24 http://deb.debian.org/debian stretch/main amd64 glib-networking-services amd64 2.50.0-1+b1 [12.3 kB]
Get:25 http://deb.debian.org/debian stretch/main amd64 gsettings-desktop-schemas all 3.22.0-1 [473 kB]
Get:26 http://deb.debian.org/debian stretch/main amd64 glib-networking amd64 2.50.0-1+b1 [57.3 kB]
Get:27 http://deb.debian.org/debian stretch/main amd64 libsoup2.4-1 amd64 2.56.0-2+deb9u2 [296 kB]
Get:28 http://deb.debian.org/debian stretch/main amd64 libsoup-gnome2.4-1 amd64 2.56.0-2+deb9u2 [16.4 kB]
Get:29 http://deb.debian.org/debian stretch/main amd64 librest-0.7-0 amd64 0.8.0-2 [33.0 kB]
Get:30 http://deb.debian.org/debian stretch/main amd64 libwayland-client0 amd64 1.12.0-1+deb9u1 [25.1 kB]
Get:31 http://deb.debian.org/debian stretch/main amd64 libwayland-cursor0 amd64 1.12.0-1+deb9u1 [13.5 kB]
Get:32 http://deb.debian.org/debian stretch/main amd64 libdrm2 amd64 2.4.74-1 [36.2 kB]
Get:33 http://deb.debian.org/debian stretch/main amd64 libwayland-server0 amd64 1.12.0-1+deb9u1 [30.6 kB]
Get:34 http://deb.debian.org/debian stretch/main amd64 libgbm1 amd64 13.0.6-1+b2 [59.2 kB]
Get:35 http://deb.debian.org/debian stretch/main amd64 libx11-xcb1 amd64 2:1.6.4-3+deb9u1 [183 kB]
Get:36 http://deb.debian.org/debian stretch/main amd64 libxcb-dri2-0 amd64 1.12-1 [97.2 kB]
Get:37 http://deb.debian.org/debian stretch/main amd64 libxcb-dri3-0 amd64 1.12-1 [95.6 kB]
Get:38 http://deb.debian.org/debian stretch/main amd64 libxcb-present0 amd64 1.12-1 [95.8 kB]
Get:39 http://deb.debian.org/debian stretch/main amd64 libxcb-sync1 amd64 1.12-1 [99.2 kB]
Get:40 http://deb.debian.org/debian stretch/main amd64 libxcb-xfixes0 amd64 1.12-1 [99.6 kB]
Get:41 http://deb.debian.org/debian stretch/main amd64 libxshmfence1 amd64 1.2-1+b2 [7922 B]
Get:42 http://deb.debian.org/debian stretch/main amd64 libegl1-mesa amd64 13.0.6-1+b2 [112 kB]
Get:43 http://deb.debian.org/debian stretch/main amd64 libwayland-egl1-mesa amd64 13.0.6-1+b2 [43.0 kB]
Get:44 http://deb.debian.org/debian stretch/main amd64 xkb-data all 2.19-1+deb9u1 [650 kB]
Get:45 http://deb.debian.org/debian stretch/main amd64 libxkbcommon0 amd64 0.7.1-2~deb9u1 [122 kB]
Get:46 http://deb.debian.org/debian stretch/main amd64 libgtk-3-0 amd64 3.22.11-1 [2529 kB]
Get:47 http://deb.debian.org/debian stretch/main amd64 libgtk-3-bin amd64 3.22.11-1 [110 kB]
Get:48 http://deb.debian.org/debian stretch/main amd64 notification-daemon amd64 3.20.0-1+b1 [60.5 kB]
Fetched 77.7 MB in 10s (7309 kB/s)                                                                                 

...

Setting up libxkbfile1:amd64 (1:1.0.9-2) ...
Setting up libxcb-present0:amd64 (1.12-1) ...
Setting up libnotify4:amd64 (0.7.7-2) ...
Setting up libxcb-dri2-0:amd64 (1.12-1) ...
Setting up libsecret-common (0.18.5-3.1) ...
Setting up libxcb-dri3-0:amd64 (1.12-1) ...
Setting up libjson-glib-1.0-common (1.2.6-1) ...
Setting up libxcb-xfixes0:amd64 (1.12-1) ...
Setting up glib-networking-common (2.50.0-1) ...
Processing triggers for mime-support (3.60) ...
Setting up libatspi2.0-0:amd64 (2.22.0-6+deb9u1) ...
Processing triggers for libglib2.0-0:amd64 (2.50.3-2) ...
Setting up libxss1:amd64 (1:1.2.2-1) ...
Setting up libxshmfence1:amd64 (1.2-1+b2) ...
Setting up libwayland-client0:amd64 (1.12.0-1+deb9u1) ...
Setting up xkb-data (2.19-1+deb9u1) ...
Setting up libproxy1v5:amd64 (0.4.14-2) ...
Setting up glib-networking-services (2.50.0-1+b1) ...
Setting up libnspr4:amd64 (2:4.12-6) ...
Setting up libxtst6:amd64 (2:1.2.3-1) ...
Setting up libdrm2:amd64 (2.4.74-1) ...
Setting up libjson-glib-1.0-0:amd64 (1.2.6-1) ...
Setting up libxcb-sync1:amd64 (1.12-1) ...
Setting up libx11-xcb1:amd64 (2:1.6.4-3+deb9u1) ...
Processing triggers for libc-bin (2.24-11+deb9u4) ...
Setting up libepoxy0:amd64 (1.3.1-2) ...
Setting up libatk-bridge2.0-0:amd64 (2.22.0-2) ...
Setting up libdconf1:amd64 (0.26.0-2+b1) ...
Setting up libxkbcommon0:amd64 (0.7.1-2~deb9u1) ...
Setting up libcolord2:amd64 (1.3.3-2) ...
Setting up libsecret-1-0:amd64 (0.18.5-3.1) ...
Setting up libwayland-cursor0:amd64 (1.12.0-1+deb9u1) ...
Setting up libwayland-server0:amd64 (1.12.0-1+deb9u1) ...
Setting up adwaita-icon-theme (3.22.0-1+deb9u1) ...
update-alternatives: using /usr/share/icons/Adwaita/cursor.theme to provide /usr/share/icons/default/index.theme (x-cursor-theme) in auto mode
Setting up dconf-service (0.26.0-2+b1) ...
Setting up at-spi2-core (2.22.0-6+deb9u1) ...
Setting up libgbm1:amd64 (13.0.6-1+b2) ...
Setting up libnss3:amd64 (2:3.26.2-1.1+deb9u1) ...
Setting up dconf-gsettings-backend:amd64 (0.26.0-2+b1) ...
Setting up libegl1-mesa:amd64 (13.0.6-1+b2) ...
Setting up gsettings-desktop-schemas (3.22.0-1) ...
Setting up libgtk-3-common (3.22.11-1) ...
Setting up glib-networking:amd64 (2.50.0-1+b1) ...
Setting up libwayland-egl1-mesa:amd64 (13.0.6-1+b2) ...
Setting up libsoup2.4-1:amd64 (2.56.0-2+deb9u2) ...
Setting up libsoup-gnome2.4-1:amd64 (2.56.0-2+deb9u2) ...
Setting up librest-0.7-0:amd64 (0.8.0-2) ...
Setting up libgtk-3-0:amd64 (3.22.11-1) ...
Setting up libgtk-3-bin (3.22.11-1) ...
Setting up code (1.37.0-1565227985) ...
Setting up notification-daemon (3.20.0-1+b1) ...
Processing triggers for libc-bin (2.24-11+deb9u4) ...

# apt update
Hit:1 http://security.debian.org/debian-security stretch/updates InRelease
Ign:2 http://deb.debian.org/debian stretch InRelease
Get:3 http://deb.debian.org/debian stretch-updates InRelease [91.0 kB]
Hit:4 https://packages.microsoft.com/repos/vscode stable InRelease
Hit:5 http://deb.debian.org/debian stretch Release
Fetched 91.0 kB in 1s (86.6 kB/s)
Reading package lists... Done
Building dependency tree       
Reading state information... Done
All packages are up to date.

# apt install libasound2
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  libasound2-data
Suggested packages:
  libasound2-plugins alsa-utils
The following NEW packages will be installed:
  libasound2 libasound2-data
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 669 kB of archives.
After this operation, 1981 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://deb.debian.org/debian stretch/main amd64 libasound2-data all 1.1.3-5 [173 kB]
Get:2 http://deb.debian.org/debian stretch/main amd64 libasound2 amd64 1.1.3-5 [497 kB]
Fetched 669 kB in 0s (3099 kB/s)
Selecting previously unselected package libasound2-data.
(Reading database ... 42374 files and directories currently installed.)
Preparing to unpack .../libasound2-data_1.1.3-5_all.deb ...
Unpacking libasound2-data (1.1.3-5) ...
Selecting previously unselected package libasound2:amd64.
Preparing to unpack .../libasound2_1.1.3-5_amd64.deb ...
Unpacking libasound2:amd64 (1.1.3-5) ...
Setting up libasound2-data (1.1.3-5) ...
Setting up libasound2:amd64 (1.1.3-5) ...
Processing triggers for libc-bin (2.24-11+deb9u4) ...
```
ここまでの作業をdocker hubに登録。

```shell_session:macOS
$ docker commit f32197f7564e kaizenjapan/cc3a
sha256:13041561eeefbe6458a6bb1909e1d4e07a15bf43f3fb36118705bfec5ac4dd7b

$ docker push kaizenjapan/cc3a
The push refers to repository [docker.io/kaizenjapan/cc3a]
a387632ffdf1: Pushed 
df87de00b3f4: Mounted from library/gcc 
d60ba68c5679: Mounted from library/gcc 
9d0fbf0d0499: Mounted from library/gcc 
01cf0cfd5649: Mounted from library/gcc 
a637c551a0da: Mounted from library/gcc 
2c8d31157b81: Mounted from library/gcc 
7b76d801397d: Mounted from library/gcc 
f32868cde90b: Mounted from library/gcc 
0db06dff9d9a: Mounted from library/gcc 
latest: digest: sha256:cd606f726038bd4de149b5dae14b60e7f969c7a9345c9fedb707b441a55fd30c size: 2429
```

## 追記

```shell_session:docker/ubuntu
# wget https://github.com/microsoft/vscode-cpptools/releases/download/0.24.1/cpptools-linux.vsix
--2019-08-12 06:28:02--  https://github.com/microsoft/vscode-cpptools/releases/download/0.24.1/cpptools-linux.vsix
Resolving github.com (github.com)... 13.114.40.48
Connecting to github.com (github.com)|13.114.40.48|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://github-production-release-asset-2e65be.s3.amazonaws.com/54800346/cb67a400-ac7c-11e9-82d1-180a04307a5f?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20190812%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190812T062802Z&X-Amz-Expires=300&X-Amz-Signature=efb95e6d4343a37d688eac3ec5146d0b6da49ff4d5b2b67fb3b3f170475edc5c&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3Dcpptools-linux.vsix&response-content-type=application%2Foctet-stream [following]
--2019-08-12 06:28:03--  https://github-production-release-asset-2e65be.s3.amazonaws.com/54800346/cb67a400-ac7c-11e9-82d1-180a04307a5f?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20190812%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190812T062802Z&X-Amz-Expires=300&X-Amz-Signature=efb95e6d4343a37d688eac3ec5146d0b6da49ff4d5b2b67fb3b3f170475edc5c&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3Dcpptools-linux.vsix&response-content-type=application%2Foctet-stream
Resolving github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)... 52.216.236.11
Connecting to github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)|52.216.236.11|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 19283588 (18M) [application/octet-stream]
Saving to: 'cpptools-linux.vsix'

cpptools-linux.vsix            100%[===================================================>]  18.39M  4.80MB/s    in 4.8s    

2019-08-12 06:28:08 (3.84 MB/s) - 'cpptools-linux.vsix' saved [19283588/19283588]

root@f32197f7564e:/home/cpp#  code --install-extension  cpptools-linux.vsix  --user-data-dir /home/cpp
Installing extensions...
Extension 'cpptools-linux.vsix' was successfully installed.
```

ここまでの作業をdockerに再登録。


# 検索

```shell_session:docker/ubuntu
# ls -al /usr/bin/cc
lrwxrwxrwx 1 root root 20 Jun 11 00:31 /usr/bin/cc -> /etc/alternatives/cc
# ls -al /etc/alternatives/cc
lrwxrwxrwx 1 root root 18 Jun 11 17:32 /etc/alternatives/cc -> /usr/local/bin/gcc
```
ccはgccにリンクされている。gcc公式を入れたのだからそれはそうなっているのだろう。



# 参考資料(reference)

Ubuntu / DebianにコマンドでVSCode (Visual Studio Code) をインストールする方法
https://www.karelie.net/ubuntu-debian-command-install-vscode/

## 自己参考(selfreference)

docker gcc upgrade error
https://qiita.com/kaizen_nagoya/items/d2d424318b711aef4af5

Couldn't mount the binfmt_misc filesystem
https://qiita.com/kaizen_nagoya/items/da5b0989803b09cac369


docker: error pulling image configuration: Get
https://qiita.com/kaizen_nagoya/items/1350d5a7144706d0bd81

docker rmiのための順番
https://qiita.com/kaizen_nagoya/items/0bc05d08cf18af4a8801

vscode on docker 苦行は続く。
https://qiita.com/kaizen_nagoya/items/dfc517c22f5ea6094c11

docker gcc(g++) and llvm(clang++)
https://qiita.com/kaizen_nagoya/items/059874ea39c4de64c0f7

docker and vscode not visual studio code
https://qiita.com/kaizen_nagoya/items/165a281570a8c62ca50a

g++, clang++ and vscode++ をdockerで(まだエラー中)
https://qiita.com/kaizen_nagoya/items/825e9bcb017925e0fc5a

今日のms code error:error while loading shared libraries: libasound.so.2: cannot open shared object file: No such file or directory
https://qiita.com/kaizen_nagoya/items/07d4f9be954a9a803b92

Ethernet 記事一覧　Ethernet(0)
https://qiita.com/kaizen_nagoya/items/88d35e99f74aefc98794

Wireshark 一覧 wireshark(0)、Ethernet(48)
https://qiita.com/kaizen_nagoya/items/fbed841f61875c4731d0

線網（Wi-Fi）空中線(antenna)(0) 記事一覧(118/300目標)
https://qiita.com/kaizen_nagoya/items/5e5464ac2b24bd4cd001

C++ Support(0)　
https://qiita.com/kaizen_nagoya/items/8720d26f762369a80514

Coding Rules(0) C Secure , MISRA and so on
https://qiita.com/kaizen_nagoya/items/400725644a8a0e90fbb0

Autosar Guidelines C++14 example code compile list(1-169)
https://qiita.com/kaizen_nagoya/items/8ccbf6675c3494d57a76

Error一覧(C/C++, python, bash...) Error(0)
https://qiita.com/kaizen_nagoya/items/48b6cbc8d68eae2c42b8

なぜdockerで機械学習するか 書籍・ソース一覧作成中 (目標100)
https://qiita.com/kaizen_nagoya/items/ddd12477544bf5ba85e2

言語処理100本ノックをdockerで。python覚えるのに最適。:10+12
https://qiita.com/kaizen_nagoya/items/7e7eb7c543e0c18438c4

プログラムちょい替え（0）一覧:4件
https://qiita.com/kaizen_nagoya/items/296d87ef4bfd516bc394

一覧の一覧( The directory of directories of mine.) Qiita(100)
https://qiita.com/kaizen_nagoya/items/7eb0e006543886138f39

プログラマが知っていると良い「公序良俗」
https://qiita.com/kaizen_nagoya/items/9fe7c0dfac2fbd77a945

小川清最終講義、小川清最終講義（再）計画, Ethernet(100) 英語(100) 安全(100)
https://qiita.com/kaizen_nagoya/items/e2df642e3951e35e6a53
# 文書履歴(document history)
ver. 0.01 初稿 20190812 午前
ver. 0.02 導入済　20190812 昼
ver. 0.03 標題追記 20190813
### 最後までおよみいただきありがとうございました。
いいね　💚、フォローをお願いします。
#### Thank you very much for reading to the last sentence.
Please press the like icon 💚　and follow me for your happy life.