この文書の現在のバージョンと選択したバージョンの差分を表示します。
両方とも前のリビジョン 前のリビジョン | |||
mae3xx_devel:setup_os_on_container:start [2016/01/08 13:42] admin |
mae3xx_devel:setup_os_on_container:start [2016/01/08 13:50] (現在) admin |
||
---|---|---|---|
ライン 1: | ライン 1: | ||
+ | ====== 開発環境用コンテナのセットアップ(Ubuntu以外のディストリビューション使用の場合) ====== | ||
+ | |||
+ | Ubuntu 以外のディストリビューションを利用している場合でも、クロスコンパイラなどの導入を考えると\\ | ||
+ | Ubuntu の環境を構築するのがお勧めです。 | ||
+ | |||
+ | 仮想マシンを作成するとリソースを消費しますので、コンテナ(LXC((https://ja.wikipedia.org/wiki/LXC)) (([[http://knowledge.sakura.ad.jp/tech/2108/|15分で分かるLXC(Linux Containers)の仕組みと基本的な使い方 - さくらのナレッジ]])))でUbuntuの環境を作成する方法を紹介します。 | ||
+ | |||
+ | ホストの環境は Debian(Jessie) を想定しています。 | ||
+ | |||
+ | ※ [[.emdebian_toolchain:start]] (([[http://qiita.com/myahal@github/items/fc332e53713df244518f|armhfクロスコンパイル環境を作る - Qiita]]))もあるようです。 | ||
+ | |||
+ | \\ | ||
+ | |||
+ | |||
+ | ===== Ubuntu コンテナの作成 ===== | ||
+ | |||
+ | ==== LXC パッケージの導入 ==== | ||
+ | |||
+ | LXC を使用するためのパッケージを導入します。 | ||
+ | |||
+ | <code> | ||
+ | root@jessie:~# apt-get install lxc | ||
+ | Reading package lists... Done | ||
+ | Building dependency tree | ||
+ | Reading state information... Done | ||
+ | The following extra packages will be installed: | ||
+ | debootstrap dh-python libapparmor1 libmpdec2 libpython3-stdlib libpython3.4-minimal libpython3.4-stdlib | ||
+ | libseccomp2 python3 python3-minimal python3.4 python3.4-minimal rsync | ||
+ | Suggested packages: | ||
+ | lua5.2 python3-doc python3-tk python3-venv python3.4-venv python3.4-doc binutils binfmt-support | ||
+ | The following NEW packages will be installed: | ||
+ | debootstrap dh-python libapparmor1 libmpdec2 libpython3-stdlib libpython3.4-minimal libpython3.4-stdlib | ||
+ | libseccomp2 lxc python3 python3-minimal python3.4 python3.4-minimal rsync | ||
+ | 0 upgraded, 14 newly installed, 0 to remove and 0 not upgraded. | ||
+ | Need to get 5,822 kB of archives. | ||
+ | After this operation, 22.7 MB of additional disk space will be used. | ||
+ | Do you want to continue? [Y/n] | ||
+ | </code> | ||
+ | |||
+ | <code> | ||
+ | Do you want to continue? [Y/n] y | ||
+ | Get:1 http://ftp.jaist.ac.jp/debian/ jessie/main libmpdec2 amd64 2.4.1-1 [85.7 kB] | ||
+ | Get:2 http://ftp.jaist.ac.jp/debian/ jessie/main libpython3.4-minimal amd64 3.4.2-1 [492 kB] | ||
+ | Get:3 http://ftp.jaist.ac.jp/debian/ jessie/main libpython3.4-stdlib amd64 3.4.2-1 [2,088 kB] | ||
+ | Get:4 http://ftp.jaist.ac.jp/debian/ jessie/main libseccomp2 amd64 2.1.1-1 [27.6 kB] | ||
+ | Get:5 http://security.debian.org/ jessie/updates/main lxc amd64 1:1.0.6-6+deb8u2 [626 kB] | ||
+ | Get:6 http://ftp.jaist.ac.jp/debian/ jessie/main libapparmor1 amd64 2.9.0-3 [60.3 kB] | ||
+ | Get:7 http://ftp.jaist.ac.jp/debian/ jessie/main python3.4-minimal amd64 3.4.2-1 [1,646 kB] | ||
+ | Get:8 http://ftp.jaist.ac.jp/debian/ jessie/main python3.4 amd64 3.4.2-1 [204 kB] | ||
+ | Get:9 http://ftp.jaist.ac.jp/debian/ jessie/main python3-minimal amd64 3.4.2-2 [34.7 kB] | ||
+ | Get:10 http://ftp.jaist.ac.jp/debian/ jessie/main libpython3-stdlib amd64 3.4.2-2 [18.1 kB] | ||
+ | Get:11 http://ftp.jaist.ac.jp/debian/ jessie/main dh-python all 1.20141111-2 [66.4 kB] | ||
+ | Get:12 http://ftp.jaist.ac.jp/debian/ jessie/main python3 amd64 3.4.2-2 [21.2 kB] | ||
+ | Get:13 http://ftp.jaist.ac.jp/debian/ jessie/main rsync amd64 3.1.1-3 [390 kB] | ||
+ | Get:14 http://ftp.jaist.ac.jp/debian/ jessie/main debootstrap all 1.0.67 [62.7 kB] | ||
+ | Fetched 5,822 kB in 2s (2,785 kB/s) | ||
+ | Selecting previously unselected package libmpdec2:amd64. | ||
+ | (Reading database ... 29812 files and directories currently installed.) | ||
+ | Preparing to unpack .../libmpdec2_2.4.1-1_amd64.deb ... | ||
+ | 〜〜〜 中略 〜〜〜 | ||
+ | Setting up python3 (3.4.2-2) ... | ||
+ | running python rtupdate hooks for python3.4... | ||
+ | running python post-rtupdate hooks for python3.4... | ||
+ | Setting up lxc (1:1.0.6-6+deb8u2) ... | ||
+ | Setting up dh-python (1.20141111-2) ... | ||
+ | Processing triggers for libc-bin (2.19-18+deb8u1) ... | ||
+ | Processing triggers for systemd (215-17+deb8u2) ... | ||
+ | root@jessie:~# | ||
+ | </code> | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ==== コンテナの作成 ==== | ||
+ | |||
+ | lxc-create コマンドで、Ubuntu テンプレートを使用して Ubuntu のコンテナを作成します。 | ||
+ | |||
+ | <code> | ||
+ | root@jessie:~# MIRROR=https://mirrors.kernel.org/ubuntu lxc-create -n trusty -t ubuntu -- -r trusty | ||
+ | Checking cache download in /var/cache/lxc/trusty/rootfs-amd64 ... | ||
+ | Installing packages in template: ssh,vim,language-pack-en | ||
+ | Downloading ubuntu trusty minimal ... | ||
+ | W: Cannot check Release signature; keyring file not available /usr/share/keyrings/ubuntu-archive-keyring.gpg | ||
+ | I: Retrieving Release | ||
+ | I: Retrieving Packages | ||
+ | I: Validating Packages | ||
+ | I: Retrieving Packages | ||
+ | I: Validating Packages | ||
+ | I: Resolving dependencies of required packages... | ||
+ | I: Resolving dependencies of base packages... | ||
+ | ... | ||
+ | Generating locales... | ||
+ | en_US.UTF-8... up-to-date | ||
+ | Generation complete. | ||
+ | Creating SSH2 RSA key; this may take some time ... | ||
+ | Creating SSH2 DSA key; this may take some time ... | ||
+ | Creating SSH2 ECDSA key; this may take some time ... | ||
+ | Creating SSH2 ED25519 key; this may take some time ... | ||
+ | initctl: Unable to connect to Upstart: Failed to connect to socket /com/ubuntu/upstart: Connection refused | ||
+ | update-rc.d: warning: default stop runlevel arguments (0 1 6) do not match ssh Default-Stop values (none) | ||
+ | initctl: Unable to connect to Upstart: Failed to connect to socket /com/ubuntu/upstart: Connection refused | ||
+ | invoke-rc.d: policy-rc.d denied execution of start. | ||
+ | |||
+ | Current default time zone: 'Asia/Tokyo' | ||
+ | Local time is now: Fri Jan 8 11:38:36 JST 2016. | ||
+ | Universal Time is now: Fri Jan 8 02:38:36 UTC 2016. | ||
+ | |||
+ | |||
+ | ## | ||
+ | # The default user is 'ubuntu' with password 'ubuntu'! | ||
+ | # Use the 'sudo' command to run tasks as root in the container. | ||
+ | ## | ||
+ | |||
+ | root@jessie:~# | ||
+ | </code> | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ==== 設定 ==== | ||
+ | |||
+ | Debian の lxc-create では細かい設定をしてくれないので、手動で設定を変更します。 | ||
+ | |||
+ | === /var/lib/lxc/trusty/config の編集 === | ||
+ | |||
+ | <code> | ||
+ | root@jessie:~# nano -w /var/lib/lxc/trusty/config | ||
+ | </code> | ||
+ | |||
+ | <code> | ||
+ | # Template used to create this container: /usr/share/lxc/templates/lxc-ubuntu | ||
+ | # Parameters passed to the template: -r trusty | ||
+ | # For additional config options, please look at lxc.container.conf(5) | ||
+ | |||
+ | # Common configuration | ||
+ | lxc.include = /usr/share/lxc/config/ubuntu.common.conf | ||
+ | |||
+ | # Container specific configuration | ||
+ | lxc.rootfs = /var/lib/lxc/trusty/rootfs | ||
+ | lxc.mount = /var/lib/lxc/trusty/fstab | ||
+ | lxc.utsname = trusty | ||
+ | lxc.arch = amd64 | ||
+ | |||
+ | # Network configuration | ||
+ | lxc.network.type = veth | ||
+ | lxc.network.link = lxcbr0 | ||
+ | lxc.network.flags = up | ||
+ | |||
+ | lxc.devttydir = lxc | ||
+ | </code> | ||
+ | |||
+ | \\ | ||
+ | |||
+ | === lxcbr0 I/F の作成 === | ||
+ | |||
+ | bridge-utils パッケージを導入します。 | ||
+ | |||
+ | <code> | ||
+ | root@jessie:~# apt-get install bridge-utils | ||
+ | </code> | ||
+ | |||
+ | /etc/network/interfaces を編集し、lxcbr0 の設定を追加します。 | ||
+ | |||
+ | <code> | ||
+ | root@jessie:~# nano -w /etc/network/interfaces | ||
+ | </code> | ||
+ | |||
+ | <code> | ||
+ | # This file describes the network interfaces available on your system | ||
+ | # and how to activate them. For more information, see interfaces(5). | ||
+ | |||
+ | source /etc/network/interfaces.d/* | ||
+ | |||
+ | # The loopback network interface | ||
+ | auto lo | ||
+ | iface lo inet loopback | ||
+ | |||
+ | # The primary network interface | ||
+ | allow-hotplug eth0 | ||
+ | iface eth0 inet dhcp | ||
+ | |||
+ | auto lxcbr0 | ||
+ | iface lxcbr0 inet static | ||
+ | address 192.168.8.1 | ||
+ | netmask 255.255.255.0 | ||
+ | pre-up brctl addbr lxcbr0 | ||
+ | </code> | ||
+ | |||
+ | \\ | ||
+ | |||
+ | === dnsmasq の導入 === | ||
+ | |||
+ | DHCPサーバ/DNSキャッシュ用 dnsmasq パッケージを導入します。 | ||
+ | |||
+ | <code> | ||
+ | root@jessie:~# apt-get install dnsmasq | ||
+ | </code> | ||
+ | |||
+ | /etc/dnsmasq.conf を編集します。 | ||
+ | |||
+ | <code> | ||
+ | root@jessie:~# nano -w /etc/dnsmasq.conf | ||
+ | </code> | ||
+ | |||
+ | 下記エントリを追加します。 | ||
+ | |||
+ | <code> | ||
+ | interface=lxcbr0 | ||
+ | bind-interfaces | ||
+ | dhcp-range=192.168.8.50,192.168.8.150,12h | ||
+ | </code> | ||
+ | |||
+ | \\ | ||
+ | |||
+ | === iptables の設定 === | ||
+ | |||
+ | iptables の設定を自動化するため、iptables-persistent パッケージを導入します。\\ | ||
+ | 導入時に現在のルールを保存するか聞かれるため、eth0 への MASQUERADE 設定(コンテナから外へ抜けるため) を追加しておきます。 | ||
+ | |||
+ | <code> | ||
+ | root@jessie:~# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE | ||
+ | </code> | ||
+ | |||
+ | \\ | ||
+ | |||
+ | <code> | ||
+ | root@jessie:~# apt-get install iptables-persistent | ||
+ | Reading package lists... Done | ||
+ | Building dependency tree | ||
+ | Reading state information... Done | ||
+ | The following extra packages will be installed: | ||
+ | netfilter-persistent | ||
+ | The following NEW packages will be installed: | ||
+ | iptables-persistent netfilter-persistent | ||
+ | 0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded. | ||
+ | Need to get 18.9 kB of archives. | ||
+ | After this operation, 147 kB of additional disk space will be used. | ||
+ | Do you want to continue? [Y/n] | ||
+ | Get:1 http://ftp.jaist.ac.jp/debian/ jessie/main netfilter-persistent all 1.0.3 [8,036 B] | ||
+ | Get:2 http://ftp.jaist.ac.jp/debian/ jessie/main iptables-persistent all 1.0.3 [10.8 kB] | ||
+ | Fetched 18.9 kB in 0s (198 kB/s) | ||
+ | Preconfiguring packages ... | ||
+ | Selecting previously unselected package netfilter-persistent. | ||
+ | (Reading database ... 31310 files and directories currently installed.) | ||
+ | Preparing to unpack .../netfilter-persistent_1.0.3_all.deb ... | ||
+ | Unpacking netfilter-persistent (1.0.3) ... | ||
+ | Selecting previously unselected package iptables-persistent. | ||
+ | Preparing to unpack .../iptables-persistent_1.0.3_all.deb ... | ||
+ | Unpacking iptables-persistent (1.0.3) ... | ||
+ | Processing triggers for man-db (2.7.0.2-5) ... | ||
+ | Processing triggers for systemd (215-17+deb8u2) ... | ||
+ | Setting up netfilter-persistent (1.0.3) ... | ||
+ | update-rc.d: warning: start and stop actions are no longer supported; falling back to defaults | ||
+ | Setting up iptables-persistent (1.0.3) ... | ||
+ | Processing triggers for systemd (215-17+deb8u2) ... | ||
+ | </code> | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ==== Ubuntu コンテナの起動 ==== | ||
+ | |||
+ | lxc-start コマンドで、作成した Ubuntu コンテナを起動します。 | ||
+ | |||
+ | <code> | ||
+ | root@jessie:~# lxc-start -n trusty | ||
+ | lxc-start: No such file or directory - Mount of '/sys/fs/fuse/connections' onto '/usr/lib/x86_64-linux-gnu/lxc/rootfs/sys/fs/fuse/connections' failed | ||
+ | <4>init: plymouth-upstart-bridge main process (5) terminated with status 1 | ||
+ | <4>init: plymouth-upstart-bridge main process ended, respawning | ||
+ | <4>init: hwclock main process (7) terminated with status 77 | ||
+ | <4>init: ureadahead main process (8) terminated with status 5 | ||
+ | <4>init: plymouth-upstart-bridge main process (15) terminated with status 1 | ||
+ | <4>init: plymouth-upstart-bridge main process ended, respawning | ||
+ | * Starting Mount filesystems on boot ...done. | ||
+ | * Starting Signal sysvinit that the rootfs is mounted ...done. | ||
+ | * Stopping Send an event to indicate plymouth is up ...done. | ||
+ | * Starting Clean /tmp directory ...done. | ||
+ | * Starting Populate and link to /run filesystem ...done. | ||
+ | * Stopping Populate and link to /run filesystem ...done. | ||
+ | * Stopping Clean /tmp directory ...done. | ||
+ | * Starting Track if upstart is running in a container ...done. | ||
+ | * Starting load fallback graphics devices ...done. | ||
+ | * Starting workaround for missing events in container ...done. | ||
+ | * Starting Initialize or finalize resolvconf ...done. | ||
+ | * Stopping load fallback graphics devices ...done. | ||
+ | <4>init: console-font main process (114) terminated with status 1 | ||
+ | * Stopping workaround for missing events in container ...done. | ||
+ | * Starting userspace bootsplash ...done. | ||
+ | </code> | ||
+ | |||
+ | <code> | ||
+ | Ubuntu 14.04.3 LTS trusty console | ||
+ | |||
+ | trusty login: <4>init: setvtrgb main process (417) terminated with status 1 | ||
+ | <4>init: plymouth-upstart-bridge main process (21) killed by TERM signal | ||
+ | |||
+ | |||
+ | Ubuntu 14.04.3 LTS trusty console | ||
+ | |||
+ | trusty login: | ||
+ | </code> | ||
+ | |||
+ | ubuntu/ubuntu でログインできます。 | ||
+ | |||
+ | <code> | ||
+ | Ubuntu 14.04.3 LTS trusty console | ||
+ | |||
+ | trusty login: ubuntu | ||
+ | Password: | ||
+ | Last login: Fri Jan 8 13:09:57 JST 2016 on lxc/console | ||
+ | Welcome to Ubuntu 14.04.3 LTS (GNU/Linux 3.16.0-4-amd64 x86_64) | ||
+ | |||
+ | * Documentation: https://help.ubuntu.com/ | ||
+ | ubuntu@trusty:~$ ifconfig | ||
+ | eth0 Link encap:Ethernet HWaddr 4e:0a:d2:c2:7a:ff | ||
+ | inet addr:192.168.8.79 Bcast:192.168.8.255 Mask:255.255.255.0 | ||
+ | inet6 addr: fe80::4c0a:d2ff:fec2:7aff/64 Scope:Link | ||
+ | UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 | ||
+ | RX packets:20 errors:0 dropped:0 overruns:0 frame:0 | ||
+ | TX packets:35 errors:0 dropped:0 overruns:0 carrier:0 | ||
+ | collisions:0 txqueuelen:1000 | ||
+ | RX bytes:2020 (2.0 KB) TX bytes:4178 (4.1 KB) | ||
+ | |||
+ | lo Link encap:Local Loopback | ||
+ | inet addr:127.0.0.1 Mask:255.0.0.0 | ||
+ | inet6 addr: ::1/128 Scope:Host | ||
+ | UP LOOPBACK RUNNING MTU:65536 Metric:1 | ||
+ | RX packets:0 errors:0 dropped:0 overruns:0 frame:0 | ||
+ | TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 | ||
+ | collisions:0 txqueuelen:0 | ||
+ | RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) | ||
+ | |||
+ | ubuntu@trusty:~$ | ||
+ | </code> | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ssh でログインすることもできます。 | ||
+ | |||
+ | <code> | ||
+ | root@jessie:~# lxc-ls --fancy | ||
+ | NAME STATE IPV4 IPV6 AUTOSTART | ||
+ | ---------------------------------------------- | ||
+ | trusty RUNNING 192.168.8.79 - NO | ||
+ | </code> | ||
+ | <code> | ||
+ | root@jessie:~# ssh -l ubuntu 192.168.8.79 | ||
+ | The authenticity of host '192.168.8.79 (192.168.8.79)' can't be established. | ||
+ | ECDSA key fingerprint is 10:86:e7:23:d0:6d:98:da:ef:14:d6:8b:45:7c:09:fc. | ||
+ | Are you sure you want to continue connecting (yes/no)? yes | ||
+ | Warning: Permanently added '192.168.8.79' (ECDSA) to the list of known hosts. | ||
+ | ubuntu@192.168.8.79's password: | ||
+ | Welcome to Ubuntu 14.04.3 LTS (GNU/Linux 3.16.0-4-amd64 x86_64) | ||
+ | |||
+ | * Documentation: https://help.ubuntu.com/ | ||
+ | Last login: Fri Jan 8 13:23:18 2016 | ||
+ | ubuntu@trusty:~$ | ||
+ | </code> | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ===== Ubuntu 環境の利用 ===== | ||
+ | |||
+ | あとは、apt-get でクロスコンパイラパッケージを導入するなり、Ubuntu のマシンを用意したのと同じことが可能です。 | ||
+ | |||
+ | <code> | ||
+ | ubuntu@trusty:~$ sudo apt-get update | ||
+ | [sudo] password for ubuntu: | ||
+ | Hit http://security.ubuntu.com trusty-security InRelease | ||
+ | Hit http://security.ubuntu.com trusty-security/main amd64 Packages | ||
+ | Ign https://mirrors.kernel.org trusty InRelease | ||
+ | Hit http://security.ubuntu.com trusty-security/restricted amd64 Packages | ||
+ | Hit https://mirrors.kernel.org trusty-updates InRelease | ||
+ | Hit http://security.ubuntu.com trusty-security/universe amd64 Packages | ||
+ | Hit https://mirrors.kernel.org trusty Release.gpg | ||
+ | Hit https://mirrors.kernel.org trusty-updates/main amd64 Packages | ||
+ | Hit http://security.ubuntu.com trusty-security/multiverse amd64 Packages | ||
+ | Hit https://mirrors.kernel.org trusty-updates/restricted amd64 Packages | ||
+ | Hit http://security.ubuntu.com trusty-security/main Translation-en | ||
+ | Hit https://mirrors.kernel.org trusty-updates/universe amd64 Packages | ||
+ | Hit http://security.ubuntu.com trusty-security/multiverse Translation-en | ||
+ | Hit https://mirrors.kernel.org trusty-updates/multiverse amd64 Packages | ||
+ | Hit https://mirrors.kernel.org trusty-updates/main Translation-en | ||
+ | Hit http://security.ubuntu.com trusty-security/restricted Translation-en | ||
+ | Hit https://mirrors.kernel.org trusty-updates/multiverse Translation-en | ||
+ | Hit http://security.ubuntu.com trusty-security/universe Translation-en | ||
+ | Hit https://mirrors.kernel.org trusty-updates/restricted Translation-en | ||
+ | Hit https://mirrors.kernel.org trusty-updates/universe Translation-en | ||
+ | Hit https://mirrors.kernel.org trusty Release | ||
+ | Hit https://mirrors.kernel.org trusty/main amd64 Packages | ||
+ | Hit https://mirrors.kernel.org trusty/restricted amd64 Packages | ||
+ | Hit https://mirrors.kernel.org trusty/universe amd64 Packages | ||
+ | Hit https://mirrors.kernel.org trusty/multiverse amd64 Packages | ||
+ | Get:1 https://mirrors.kernel.org trusty/main Translation-en_US | ||
+ | Hit https://mirrors.kernel.org trusty/main Translation-en | ||
+ | Get:2 https://mirrors.kernel.org trusty/multiverse Translation-en_US | ||
+ | Hit https://mirrors.kernel.org trusty/multiverse Translation-en | ||
+ | Get:3 https://mirrors.kernel.org trusty/restricted Translation-en_US | ||
+ | Hit https://mirrors.kernel.org trusty/restricted Translation-en | ||
+ | Get:4 https://mirrors.kernel.org trusty/universe Translation-en_US | ||
+ | Hit https://mirrors.kernel.org trusty/universe Translation-en | ||
+ | Get:5 https://mirrors.kernel.org trusty/main Translation-en_US | ||
+ | Ign https://mirrors.kernel.org trusty/main Translation-en_US | ||
+ | Ign https://mirrors.kernel.org trusty/multiverse Translation-en_US | ||
+ | Ign https://mirrors.kernel.org trusty/restricted Translation-en_US | ||
+ | Ign https://mirrors.kernel.org trusty/universe Translation-en_US | ||
+ | Reading package lists... Done | ||
+ | ubuntu@trusty:~$ | ||
+ | </code> | ||
+ | |||
+ | ARMhf 開発ツールの導入 | ||
+ | <code> | ||
+ | ubuntu@trusty:~$ sudo apt-cache search gcc|grep armhf | ||
+ | cpp-arm-linux-gnueabihf - The GNU C preprocessor (cpp) for armhf architecture | ||
+ | gcc-arm-linux-gnueabihf - The GNU C compiler for armhf architecture | ||
+ | libatomic1-armhf-cross - support library providing __atomic built-in functions | ||
+ | libgcc-4.8-dev-armhf-cross - GCC support library (development files) | ||
+ | libgcc1-armhf-cross - GCC support library | ||
+ | libgomp1-armhf-cross - GCC OpenMP (GOMP) support library | ||
+ | libsfatomic1-armhf-cross - support library providing __atomic built-in functions (soft float ABI) | ||
+ | libsfgcc-4.8-dev-armhf-cross - GCC support library (soft float ABI development files) | ||
+ | libsfgcc1-armhf-cross - GCC support library (soft float ABI) | ||
+ | libsfgomp1-armhf-cross - GCC OpenMP (GOMP) support library (soft float ABI) | ||
+ | gfortran-arm-linux-gnueabihf - The GNU Fortran 95 compiler for armhf architecture | ||
+ | gobjc++-arm-linux-gnueabihf - The GNU Objective-C++ compiler for armhf architecture | ||
+ | gobjc-arm-linux-gnueabihf - The GNU Objective-C compiler for armhf architecture | ||
+ | libatomic1-dbg-armhf-cross - support library providing __atomic built-in functions (debug symbols) | ||
+ | libgcc-4.7-dev-armhf-cross - GCC support library (development files) | ||
+ | libgcc1-dbg-armhf-cross - GCC support library (debug symbols) | ||
+ | libgomp1-dbg-armhf-cross - GCC OpenMP (GOMP) support library (debug symbols) | ||
+ | libmudflap0-4.7-dev-armhf-cross - GCC mudflap support libraries (development files) | ||
+ | libmudflap0-4.8-dev-armhf-cross - GCC mudflap support libraries (development files) | ||
+ | libmudflap0-armhf-cross - GCC mudflap shared support libraries | ||
+ | libmudflap0-dbg-armhf-cross - GCC mudflap shared support libraries (debug symbols) | ||
+ | libsfatomic1-dbg-armhf-cross - support library providing __atomic built-in functions (soft float ABI debug symbols) | ||
+ | libsfgcc-4.7-dev-armhf-cross - GCC support library (soft float ABI development files) | ||
+ | libsfgcc1-dbg-armhf-cross - GCC support library (debug symbols) | ||
+ | libsfgomp1-dbg-armhf-cross - GCC OpenMP (GOMP) support library (soft float ABI debug symbols) | ||
+ | libsfmudflap0-armhf-cross - GCC mudflap shared support libraries (soft float) | ||
+ | libsfmudflap0-dbg-armhf-cross - GCC mudflap shared support libraries (soft float debug symbols) | ||
+ | </code> | ||
+ | <code> | ||
+ | ubuntu@trusty:~$ sudo apt-get install gcc-arm-linux-gnueabihf | ||
+ | Reading package lists... Done | ||
+ | Building dependency tree | ||
+ | Reading state information... Done | ||
+ | The following extra packages will be installed: | ||
+ | binutils binutils-arm-linux-gnueabihf cpp-4.8-arm-linux-gnueabihf | ||
+ | cpp-arm-linux-gnueabihf gcc-4.8-arm-linux-gnueabihf | ||
+ | gcc-4.8-arm-linux-gnueabihf-base gcc-4.8-multilib-arm-linux-gnueabihf | ||
+ | libasan0-armhf-cross libatomic1-armhf-cross libc6-armel-armhf-cross | ||
+ | libc6-armel-cross libc6-armhf-cross libc6-dev-armel-armhf-cross | ||
+ | libc6-dev-armel-cross libc6-dev-armhf-cross libcloog-isl4 | ||
+ | libgcc-4.8-dev-armhf-cross libgcc1-armhf-cross libgmp10 libgomp1-armhf-cross | ||
+ | libisl10 libmpc3 libmpfr4 libsfasan0-armhf-cross libsfatomic1-armhf-cross | ||
+ | libsfgcc-4.8-dev-armhf-cross libsfgcc1-armhf-cross libsfgomp1-armhf-cross | ||
+ | linux-libc-dev-armel-cross linux-libc-dev-armhf-cross | ||
+ | Suggested packages: | ||
+ | binutils-doc gcc-4.8-locales cpp-doc gcc-4.8-doc libgcc1-dbg-armhf-cross | ||
+ | libgomp1-dbg-armhf-cross libitm1-dbg-armhf-cross libatomic1-dbg-armhf-cross | ||
+ | libasan0-dbg-armhf-cross libtsan0-dbg-armhf-cross | ||
+ | libbacktrace1-dbg-armhf-cross libquadmath-dbg-armhf-cross binutils-gold make | ||
+ | manpages-dev autoconf automake1.9 libtool flex bison gdb-arm-linux-gnueabihf | ||
+ | gcc-doc | ||
+ | The following NEW packages will be installed: | ||
+ | binutils binutils-arm-linux-gnueabihf cpp-4.8-arm-linux-gnueabihf | ||
+ | cpp-arm-linux-gnueabihf gcc-4.8-arm-linux-gnueabihf | ||
+ | gcc-4.8-arm-linux-gnueabihf-base gcc-4.8-multilib-arm-linux-gnueabihf | ||
+ | gcc-arm-linux-gnueabihf libasan0-armhf-cross libatomic1-armhf-cross | ||
+ | libc6-armel-armhf-cross libc6-armel-cross libc6-armhf-cross | ||
+ | libc6-dev-armel-armhf-cross libc6-dev-armel-cross libc6-dev-armhf-cross | ||
+ | libcloog-isl4 libgcc-4.8-dev-armhf-cross libgcc1-armhf-cross libgmp10 | ||
+ | libgomp1-armhf-cross libisl10 libmpc3 libmpfr4 libsfasan0-armhf-cross | ||
+ | libsfatomic1-armhf-cross libsfgcc-4.8-dev-armhf-cross libsfgcc1-armhf-cross | ||
+ | libsfgomp1-armhf-cross linux-libc-dev-armel-cross linux-libc-dev-armhf-cross | ||
+ | 0 upgraded, 31 newly installed, 0 to remove and 0 not upgraded. | ||
+ | Need to get 23.6 MB of archives. | ||
+ | After this operation, 73.2 MB of additional disk space will be used. | ||
+ | Do you want to continue? [Y/n] | ||
+ | </code> | ||