特にCmakeを利用している環境では手軽にWebAssemblyを試しづらい。
(例えばserverside-swifをビルドする際、cmake3が必要でWebAssemblyと環境を分けたいといったケースが考えられる。)
どうしても、手元のMacの環境上では実行しにくいというケースもあるだろう。
Linux上での実行方法はEmscripten SDKのページに書かれている。
ただしUbuntuベースの手順となっている。
https://kripken.github.io/emscripten-site/docs/getting_started/downloads.html
この投稿はCentOS7上でのWebAssembly実行方法として書きまとめる。
上記ページ等には明記はされていないが、webserverである
emrun
自体はVirtualBOX上で実行し、ブラウザ自体はWindowsやMac上のブラウザを利用する事ができる。ここでは、VirtualBox上のcentos-release-7-3.1611.el7.centos.x86_64で実行した。
# rpm -qa centos-release
centos-release-7-3.1611.el7.centos.x86_64
Virtual Boxは以下のバージョンを使用した。
バージョン 5.1.22 r115126 (Qt5.6.2)
環境構築の為の作業は割と手軽なのでお薦めする。
(LLVM等rpmでインストールしたもので動作した。)
自己責任でお試しいただきたい。
なおVirtualBox上のCentOSでemsdkのビルドにあたりCPUcoreは複数あった方が早く終わる。
ただし、CPUcoreを増やすとメモリも多く必要とする。
(メモリをキャッシュとして使われる様なので、回避策はあるのかも知れない。)
メモリが少ないとリンカが途中で停止する場合がある。
具体的には以下のメッセージが表示され停止する。
fatal error: ld terminated with signal 9 [Killed]
これは、README.mdに記載がある通りメモリ不足に起因する。git cloneでemsdkのソースを取得した際に一度目を通した方がいい。
何回かビルドたところ目安として、1Coreあたり3G程度のメモリがあった方がいいのだろうか。(必ず比例する訳でもない。)
1Coreでも2時間程度のビルド時間となる。
ハードディスクは35G程度は欲しい。
おおまかな作業としては、
https://developer.mozilla.org/ja/docs/WebAssembly/C_to_wasm
にある通り。
注意点としてはCentOS7ではepelにて提供されている、cmake3を利用する。
また、その際cmake3に対しcmakeとしてシンボリックリンクを張る。
(シンボリックリンクという回避策は快くは思わないが、emsdk内の表記をcmake3に変更する事の方がより難しいと思う。)
なおcmake2系で実行した場合、途中で以下のメッセージが表示され継続できない。
CMake Error at CMakeLists.txt:3 (cmake_minimum_required):
CMake 3.4.3 or higher is required. You are running version 2.8.12.2
また、cmake3に対しcmakeというシンボリックリンクを張らない場合は以下のfailとなり中断してしまう。Running CMake: ['cmake', '-G', 'Unix Makefiles', '-DCMAKE_BUILD_TYPE=RelWithDebInfo', '-DPYTHON_EXECUTABLE=/usr/bin/python', '-DLLVM_TARGETS_TO_BUILD=X86;JSBackend', '-DLLVM_INCLUDE_EXAMPLES=OFF', '-DCLANG_INCLUDE_EXAMPLES=OFF', '-DLLVM_INCLUDE_TESTS=OFF', '-DCLANG_INCLUDE_TESTS=OFF', '-DLLVM_ENABLE_ASSERTIONS=ON', '/usr/local/src/emsdk/clang/fastcomp/src']
Installation failed!
selinuxは事前に無効とした。ファイル、/etc/selinux/configのSELINUXの箇所は
SELINUX=disabled
とした。
VirtualBox再起動後
getenforce
で確認する。
# getenforce
Disabled
実際の環境構築手順としては以下の様になる。
# yum --disablerepo=\* --enablerepo=base install -y git
# yum --disablerepo=\* --enablerepo=base install -y gcc
# yum --disablerepo=\* --enablerepo=base install -y gcc-c++
# yum install -y epel-release
# yum --disablerepo=\* --enablerepo=base,epel install -y cmake3
# ln -s /usr/bin/cmake3 /usr/bin/cmake
# cd /usr/local/src
# git clone https://github.com/juj/emsdk.git
# cd emsdk
# ./emsdk install sdk-incoming-64bit binaryen-master-64bit
# ./emsdk activate sdk-incoming-64bit binaryen-master-64bit
サンプルなので/usr/local/src以下にソースを展開したが、当然他のディレクトリで良い。最後に環境構築変数を設定するシェルを実行する。
# source ./emsdk_env.sh
ここまでの手順でコンパイル環境は整う。次の投稿にてサンプルにある、hello worldを動かしてみる。
念の為、yumにてrpmをインストールした際のインストールログも記載しておく。 今後の動作しない場合等の参考となればと思う。
git
# yum --disablerepo=\* --enablerepo=base install -y git
Loaded plugins: fastestmirror
Determining fastest mirrors
* base: ftp.jaist.ac.jp
No package 2 available.
Resolving Dependencies
--> Running transaction check
---> Package git.x86_64 0:1.8.3.1-6.el7_2.1 will be installed
--> Processing Dependency: perl-Git = 1.8.3.1-6.el7_2.1 for package: git-1.8.3.1-6.el7_2.1.x86_64
--> Processing Dependency: perl >= 5.008 for package: git-1.8.3.1-6.el7_2.1.x86_64
--> Processing Dependency: rsync for package: git-1.8.3.1-6.el7_2.1.x86_64
--> Processing Dependency: perl(warnings) for package: git-1.8.3.1-6.el7_2.1.x86_64
--> Processing Dependency: perl(vars) for package: git-1.8.3.1-6.el7_2.1.x86_64
--> Processing Dependency: perl(strict) for package: git-1.8.3.1-6.el7_2.1.x86_64
--> Processing Dependency: perl(lib) for package: git-1.8.3.1-6.el7_2.1.x86_64
--> Processing Dependency: perl(Term::ReadKey) for package: git-1.8.3.1-6.el7_2.1.x86_64
--> Processing Dependency: perl(Git) for package: git-1.8.3.1-6.el7_2.1.x86_64
--> Processing Dependency: perl(Getopt::Long) for package: git-1.8.3.1-6.el7_2.1.x86_64
--> Processing Dependency: perl(File::stat) for package: git-1.8.3.1-6.el7_2.1.x86_64
--> Processing Dependency: perl(File::Temp) for package: git-1.8.3.1-6.el7_2.1.x86_64
--> Processing Dependency: perl(File::Spec) for package: git-1.8.3.1-6.el7_2.1.x86_64
--> Processing Dependency: perl(File::Path) for package: git-1.8.3.1-6.el7_2.1.x86_64
--> Processing Dependency: perl(File::Find) for package: git-1.8.3.1-6.el7_2.1.x86_64
--> Processing Dependency: perl(File::Copy) for package: git-1.8.3.1-6.el7_2.1.x86_64
--> Processing Dependency: perl(File::Basename) for package: git-1.8.3.1-6.el7_2.1.x86_64
--> Processing Dependency: perl(Exporter) for package: git-1.8.3.1-6.el7_2.1.x86_64
--> Processing Dependency: perl(Error) for package: git-1.8.3.1-6.el7_2.1.x86_64
--> Processing Dependency: /usr/bin/perl for package: git-1.8.3.1-6.el7_2.1.x86_64
--> Processing Dependency: libgnome-keyring.so.0()(64bit) for package: git-1.8.3.1-6.el7_2.1.x86_64
--> Running transaction check
---> Package libgnome-keyring.x86_64 0:3.8.0-3.el7 will be installed
---> Package perl.x86_64 4:5.16.3-291.el7 will be installed
--> Processing Dependency: perl-libs = 4:5.16.3-291.el7 for package: 4:perl-5.16.3-291.el7.x86_64
--> Processing Dependency: perl(Socket) >= 1.3 for package: 4:perl-5.16.3-291.el7.x86_64
--> Processing Dependency: perl(Scalar::Util) >= 1.10 for package: 4:perl-5.16.3-291.el7.x86_64
--> Processing Dependency: perl-macros for package: 4:perl-5.16.3-291.el7.x86_64
--> Processing Dependency: perl-libs for package: 4:perl-5.16.3-291.el7.x86_64
--> Processing Dependency: perl(threads::shared) for package: 4:perl-5.16.3-291.el7.x86_64
--> Processing Dependency: perl(threads) for package: 4:perl-5.16.3-291.el7.x86_64
--> Processing Dependency: perl(constant) for package: 4:perl-5.16.3-291.el7.x86_64
--> Processing Dependency: perl(Time::Local) for package: 4:perl-5.16.3-291.el7.x86_64
--> Processing Dependency: perl(Time::HiRes) for package: 4:perl-5.16.3-291.el7.x86_64
--> Processing Dependency: perl(Storable) for package: 4:perl-5.16.3-291.el7.x86_64
--> Processing Dependency: perl(Socket) for package: 4:perl-5.16.3-291.el7.x86_64
--> Processing Dependency: perl(Scalar::Util) for package: 4:perl-5.16.3-291.el7.x86_64
--> Processing Dependency: perl(Pod::Simple::XHTML) for package: 4:perl-5.16.3-291.el7.x86_64
--> Processing Dependency: perl(Pod::Simple::Search) for package: 4:perl-5.16.3-291.el7.x86_64
--> Processing Dependency: perl(Filter::Util::Call) for package: 4:perl-5.16.3-291.el7.x86_64
--> Processing Dependency: perl(Carp) for package: 4:perl-5.16.3-291.el7.x86_64
--> Processing Dependency: libperl.so()(64bit) for package: 4:perl-5.16.3-291.el7.x86_64
---> Package perl-Error.noarch 1:0.17020-2.el7 will be installed
---> Package perl-Exporter.noarch 0:5.68-3.el7 will be installed
---> Package perl-File-Path.noarch 0:2.09-2.el7 will be installed
---> Package perl-File-Temp.noarch 0:0.23.01-3.el7 will be installed
---> Package perl-Getopt-Long.noarch 0:2.40-2.el7 will be installed
--> Processing Dependency: perl(Pod::Usage) >= 1.14 for package: perl-Getopt-Long-2.40-2.el7.noarch
--> Processing Dependency: perl(Text::ParseWords) for package: perl-Getopt-Long-2.40-2.el7.noarch
---> Package perl-Git.noarch 0:1.8.3.1-6.el7_2.1 will be installed
---> Package perl-PathTools.x86_64 0:3.40-5.el7 will be installed
---> Package perl-TermReadKey.x86_64 0:2.30-20.el7 will be installed
---> Package rsync.x86_64 0:3.0.9-17.el7 will be installed
--> Running transaction check
---> Package perl-Carp.noarch 0:1.26-244.el7 will be installed
---> Package perl-Filter.x86_64 0:1.49-3.el7 will be installed
---> Package perl-Pod-Simple.noarch 1:3.28-4.el7 will be installed
--> Processing Dependency: perl(Pod::Escapes) >= 1.04 for package: 1:perl-Pod-Simple-3.28-4.el7.noarch
--> Processing Dependency: perl(Encode) for package: 1:perl-Pod-Simple-3.28-4.el7.noarch
---> Package perl-Pod-Usage.noarch 0:1.63-3.el7 will be installed
--> Processing Dependency: perl(Pod::Text) >= 3.15 for package: perl-Pod-Usage-1.63-3.el7.noarch
--> Processing Dependency: perl-Pod-Perldoc for package: perl-Pod-Usage-1.63-3.el7.noarch
---> Package perl-Scalar-List-Utils.x86_64 0:1.27-248.el7 will be installed
---> Package perl-Socket.x86_64 0:2.010-4.el7 will be installed
---> Package perl-Storable.x86_64 0:2.45-3.el7 will be installed
---> Package perl-Text-ParseWords.noarch 0:3.29-4.el7 will be installed
---> Package perl-Time-HiRes.x86_64 4:1.9725-3.el7 will be installed
---> Package perl-Time-Local.noarch 0:1.2300-2.el7 will be installed
---> Package perl-constant.noarch 0:1.27-2.el7 will be installed
---> Package perl-libs.x86_64 4:5.16.3-291.el7 will be installed
---> Package perl-macros.x86_64 4:5.16.3-291.el7 will be installed
---> Package perl-threads.x86_64 0:1.87-4.el7 will be installed
---> Package perl-threads-shared.x86_64 0:1.43-6.el7 will be installed
--> Running transaction check
---> Package perl-Encode.x86_64 0:2.51-7.el7 will be installed
---> Package perl-Pod-Escapes.noarch 1:1.04-291.el7 will be installed
---> Package perl-Pod-Perldoc.noarch 0:3.20-4.el7 will be installed
--> Processing Dependency: perl(parent) for package: perl-Pod-Perldoc-3.20-4.el7.noarch
--> Processing Dependency: perl(HTTP::Tiny) for package: perl-Pod-Perldoc-3.20-4.el7.noarch
---> Package perl-podlators.noarch 0:2.5.1-3.el7 will be installed
--> Running transaction check
---> Package perl-HTTP-Tiny.noarch 0:0.033-3.el7 will be installed
---> Package perl-parent.noarch 1:0.225-244.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
Package Arch Version Repository
Size
================================================================================
Installing:
git x86_64 1.8.3.1-6.el7_2.1 base 4.4 M
Installing for dependencies:
libgnome-keyring x86_64 3.8.0-3.el7 base 109 k
perl x86_64 4:5.16.3-291.el7 base 8.0 M
perl-Carp noarch 1.26-244.el7 base 19 k
perl-Encode x86_64 2.51-7.el7 base 1.5 M
perl-Error noarch 1:0.17020-2.el7 base 32 k
perl-Exporter noarch 5.68-3.el7 base 28 k
perl-File-Path noarch 2.09-2.el7 base 26 k
perl-File-Temp noarch 0.23.01-3.el7 base 56 k
perl-Filter x86_64 1.49-3.el7 base 76 k
perl-Getopt-Long noarch 2.40-2.el7 base 56 k
perl-Git noarch 1.8.3.1-6.el7_2.1 base 53 k
perl-HTTP-Tiny noarch 0.033-3.el7 base 38 k
perl-PathTools x86_64 3.40-5.el7 base 82 k
perl-Pod-Escapes noarch 1:1.04-291.el7 base 51 k
perl-Pod-Perldoc noarch 3.20-4.el7 base 87 k
perl-Pod-Simple noarch 1:3.28-4.el7 base 216 k
perl-Pod-Usage noarch 1.63-3.el7 base 27 k
perl-Scalar-List-Utils x86_64 1.27-248.el7 base 36 k
perl-Socket x86_64 2.010-4.el7 base 49 k
perl-Storable x86_64 2.45-3.el7 base 77 k
perl-TermReadKey x86_64 2.30-20.el7 base 31 k
perl-Text-ParseWords noarch 3.29-4.el7 base 14 k
perl-Time-HiRes x86_64 4:1.9725-3.el7 base 45 k
perl-Time-Local noarch 1.2300-2.el7 base 24 k
perl-constant noarch 1.27-2.el7 base 19 k
perl-libs x86_64 4:5.16.3-291.el7 base 688 k
perl-macros x86_64 4:5.16.3-291.el7 base 43 k
perl-parent noarch 1:0.225-244.el7 base 12 k
perl-podlators noarch 2.5.1-3.el7 base 112 k
perl-threads x86_64 1.87-4.el7 base 49 k
perl-threads-shared x86_64 1.43-6.el7 base 39 k
rsync x86_64 3.0.9-17.el7 base 360 k
Transaction Summary
================================================================================
Install 1 Package (+32 Dependent packages)
Total download size: 16 M
Installed size: 60 M
Downloading packages:
warning: /var/cache/yum/x86_64/7/base/packages/perl-Carp-1.26-244.el7.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
Public key for perl-Carp-1.26-244.el7.noarch.rpm is not installed
--------------------------------------------------------------------------------
Total 1.1 MB/s | 16 MB 00:15
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Importing GPG key 0xF4A80EB5:
Userid : "CentOS-7 Key (CentOS 7 Official Signing Key) "
Fingerprint: 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5
Package : centos-release-7-3.1611.el7.centos.x86_64 (@anaconda)
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : 1:perl-parent-0.225-244.el7.noarch 1/33
Installing : perl-HTTP-Tiny-0.033-3.el7.noarch 2/33
Installing : perl-podlators-2.5.1-3.el7.noarch 3/33
Installing : perl-Pod-Perldoc-3.20-4.el7.noarch 4/33
Installing : 1:perl-Pod-Escapes-1.04-291.el7.noarch 5/33
Installing : perl-Encode-2.51-7.el7.x86_64 6/33
Installing : perl-Text-ParseWords-3.29-4.el7.noarch 7/33
Installing : perl-Pod-Usage-1.63-3.el7.noarch 8/33
Installing : perl-Storable-2.45-3.el7.x86_64 9/33
Installing : perl-Exporter-5.68-3.el7.noarch 10/33
Installing : perl-constant-1.27-2.el7.noarch 11/33
Installing : perl-Time-Local-1.2300-2.el7.noarch 12/33
Installing : perl-Socket-2.010-4.el7.x86_64 13/33
Installing : perl-Carp-1.26-244.el7.noarch 14/33
Installing : 4:perl-Time-HiRes-1.9725-3.el7.x86_64 15/33
Installing : perl-PathTools-3.40-5.el7.x86_64 16/33
Installing : perl-Scalar-List-Utils-1.27-248.el7.x86_64 17/33
Installing : 4:perl-libs-5.16.3-291.el7.x86_64 18/33
Installing : 4:perl-macros-5.16.3-291.el7.x86_64 19/33
Installing : 1:perl-Pod-Simple-3.28-4.el7.noarch 20/33
Installing : perl-File-Temp-0.23.01-3.el7.noarch 21/33
Installing : perl-File-Path-2.09-2.el7.noarch 22/33
Installing : perl-threads-shared-1.43-6.el7.x86_64 23/33
Installing : perl-threads-1.87-4.el7.x86_64 24/33
Installing : perl-Filter-1.49-3.el7.x86_64 25/33
Installing : perl-Getopt-Long-2.40-2.el7.noarch 26/33
Installing : 4:perl-5.16.3-291.el7.x86_64 27/33
Installing : 1:perl-Error-0.17020-2.el7.noarch 28/33
Installing : perl-TermReadKey-2.30-20.el7.x86_64 29/33
Installing : rsync-3.0.9-17.el7.x86_64 30/33
Installing : libgnome-keyring-3.8.0-3.el7.x86_64 31/33
Installing : perl-Git-1.8.3.1-6.el7_2.1.noarch 32/33
Installing : git-1.8.3.1-6.el7_2.1.x86_64 33/33
Verifying : perl-HTTP-Tiny-0.033-3.el7.noarch 1/33
Verifying : perl-threads-shared-1.43-6.el7.x86_64 2/33
Verifying : perl-Storable-2.45-3.el7.x86_64 3/33
Verifying : perl-Exporter-5.68-3.el7.noarch 4/33
Verifying : perl-constant-1.27-2.el7.noarch 5/33
Verifying : perl-PathTools-3.40-5.el7.x86_64 6/33
Verifying : 1:perl-Pod-Escapes-1.04-291.el7.noarch 7/33
Verifying : 1:perl-parent-0.225-244.el7.noarch 8/33
Verifying : perl-TermReadKey-2.30-20.el7.x86_64 9/33
Verifying : perl-File-Temp-0.23.01-3.el7.noarch 10/33
Verifying : 1:perl-Pod-Simple-3.28-4.el7.noarch 11/33
Verifying : perl-Time-Local-1.2300-2.el7.noarch 12/33
Verifying : perl-Pod-Perldoc-3.20-4.el7.noarch 13/33
Verifying : perl-Git-1.8.3.1-6.el7_2.1.noarch 14/33
Verifying : perl-Socket-2.010-4.el7.x86_64 15/33
Verifying : perl-Carp-1.26-244.el7.noarch 16/33
Verifying : 1:perl-Error-0.17020-2.el7.noarch 17/33
Verifying : 4:perl-Time-HiRes-1.9725-3.el7.x86_64 18/33
Verifying : perl-Scalar-List-Utils-1.27-248.el7.x86_64 19/33
Verifying : 4:perl-libs-5.16.3-291.el7.x86_64 20/33
Verifying : 4:perl-macros-5.16.3-291.el7.x86_64 21/33
Verifying : libgnome-keyring-3.8.0-3.el7.x86_64 22/33
Verifying : perl-Pod-Usage-1.63-3.el7.noarch 23/33
Verifying : perl-Encode-2.51-7.el7.x86_64 24/33
Verifying : perl-podlators-2.5.1-3.el7.noarch 25/33
Verifying : perl-Getopt-Long-2.40-2.el7.noarch 26/33
Verifying : perl-File-Path-2.09-2.el7.noarch 27/33
Verifying : 4:perl-5.16.3-291.el7.x86_64 28/33
Verifying : perl-threads-1.87-4.el7.x86_64 29/33
Verifying : perl-Filter-1.49-3.el7.x86_64 30/33
Verifying : perl-Text-ParseWords-3.29-4.el7.noarch 31/33
Verifying : git-1.8.3.1-6.el7_2.1.x86_64 32/33
Verifying : rsync-3.0.9-17.el7.x86_64 33/33
Installed:
git.x86_64 0:1.8.3.1-6.el7_2.1
Dependency Installed:
libgnome-keyring.x86_64 0:3.8.0-3.el7
perl.x86_64 4:5.16.3-291.el7
perl-Carp.noarch 0:1.26-244.el7
perl-Encode.x86_64 0:2.51-7.el7
perl-Error.noarch 1:0.17020-2.el7
perl-Exporter.noarch 0:5.68-3.el7
perl-File-Path.noarch 0:2.09-2.el7
perl-File-Temp.noarch 0:0.23.01-3.el7
perl-Filter.x86_64 0:1.49-3.el7
perl-Getopt-Long.noarch 0:2.40-2.el7
perl-Git.noarch 0:1.8.3.1-6.el7_2.1
perl-HTTP-Tiny.noarch 0:0.033-3.el7
perl-PathTools.x86_64 0:3.40-5.el7
perl-Pod-Escapes.noarch 1:1.04-291.el7
perl-Pod-Perldoc.noarch 0:3.20-4.el7
perl-Pod-Simple.noarch 1:3.28-4.el7
perl-Pod-Usage.noarch 0:1.63-3.el7
perl-Scalar-List-Utils.x86_64 0:1.27-248.el7
perl-Socket.x86_64 0:2.010-4.el7
perl-Storable.x86_64 0:2.45-3.el7
perl-TermReadKey.x86_64 0:2.30-20.el7
perl-Text-ParseWords.noarch 0:3.29-4.el7
perl-Time-HiRes.x86_64 4:1.9725-3.el7
perl-Time-Local.noarch 0:1.2300-2.el7
perl-constant.noarch 0:1.27-2.el7
perl-libs.x86_64 4:5.16.3-291.el7
perl-macros.x86_64 4:5.16.3-291.el7
perl-parent.noarch 1:0.225-244.el7
perl-podlators.noarch 0:2.5.1-3.el7
perl-threads.x86_64 0:1.87-4.el7
perl-threads-shared.x86_64 0:1.43-6.el7
rsync.x86_64 0:3.0.9-17.el7
Complete!
gcc# yum --disablerepo=\* --enablerepo=base install -y gcc
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.jaist.ac.jp
No package 2 available.
Resolving Dependencies
--> Running transaction check
---> Package gcc.x86_64 0:4.8.5-11.el7 will be installed
--> Processing Dependency: cpp = 4.8.5-11.el7 for package: gcc-4.8.5-11.el7.x86_64
--> Processing Dependency: glibc-devel >= 2.2.90-12 for package: gcc-4.8.5-11.el7.x86_64
--> Processing Dependency: libmpfr.so.4()(64bit) for package: gcc-4.8.5-11.el7.x86_64
--> Processing Dependency: libmpc.so.3()(64bit) for package: gcc-4.8.5-11.el7.x86_64
--> Running transaction check
---> Package cpp.x86_64 0:4.8.5-11.el7 will be installed
---> Package glibc-devel.x86_64 0:2.17-157.el7 will be installed
--> Processing Dependency: glibc-headers = 2.17-157.el7 for package: glibc-devel-2.17-157.el7.x86_64
--> Processing Dependency: glibc-headers for package: glibc-devel-2.17-157.el7.x86_64
---> Package libmpc.x86_64 0:1.0.1-3.el7 will be installed
---> Package mpfr.x86_64 0:3.1.1-4.el7 will be installed
--> Running transaction check
---> Package glibc-headers.x86_64 0:2.17-157.el7 will be installed
--> Processing Dependency: kernel-headers >= 2.2.1 for package: glibc-headers-2.17-157.el7.x86_64
--> Processing Dependency: kernel-headers for package: glibc-headers-2.17-157.el7.x86_64
--> Running transaction check
---> Package kernel-headers.x86_64 0:3.10.0-514.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
gcc x86_64 4.8.5-11.el7 base 16 M
Installing for dependencies:
cpp x86_64 4.8.5-11.el7 base 5.9 M
glibc-devel x86_64 2.17-157.el7 base 1.1 M
glibc-headers x86_64 2.17-157.el7 base 668 k
kernel-headers x86_64 3.10.0-514.el7 base 4.8 M
libmpc x86_64 1.0.1-3.el7 base 51 k
mpfr x86_64 3.1.1-4.el7 base 203 k
Transaction Summary
================================================================================
Install 1 Package (+6 Dependent packages)
Total download size: 29 M
Installed size: 60 M
Downloading packages:
--------------------------------------------------------------------------------
Total 719 kB/s | 29 MB 00:41
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : mpfr-3.1.1-4.el7.x86_64 1/7
Installing : libmpc-1.0.1-3.el7.x86_64 2/7
Installing : cpp-4.8.5-11.el7.x86_64 3/7
Installing : kernel-headers-3.10.0-514.el7.x86_64 4/7
Installing : glibc-headers-2.17-157.el7.x86_64 5/7
Installing : glibc-devel-2.17-157.el7.x86_64 6/7
Installing : gcc-4.8.5-11.el7.x86_64 7/7
Verifying : glibc-devel-2.17-157.el7.x86_64 1/7
Verifying : kernel-headers-3.10.0-514.el7.x86_64 2/7
Verifying : mpfr-3.1.1-4.el7.x86_64 3/7
Verifying : cpp-4.8.5-11.el7.x86_64 4/7
Verifying : gcc-4.8.5-11.el7.x86_64 5/7
Verifying : glibc-headers-2.17-157.el7.x86_64 6/7
Verifying : libmpc-1.0.1-3.el7.x86_64 7/7
Installed:
gcc.x86_64 0:4.8.5-11.el7
Dependency Installed:
cpp.x86_64 0:4.8.5-11.el7 glibc-devel.x86_64 0:2.17-157.el7
glibc-headers.x86_64 0:2.17-157.el7 kernel-headers.x86_64 0:3.10.0-514.el7
libmpc.x86_64 0:1.0.1-3.el7 mpfr.x86_64 0:3.1.1-4.el7
Complete!
gcc-c++# yum --disablerepo=\* --enablerepo=base install -y gcc-c++
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.jaist.ac.jp
No package 2 available.
Resolving Dependencies
--> Running transaction check
---> Package gcc-c++.x86_64 0:4.8.5-11.el7 will be installed
--> Processing Dependency: libstdc++-devel = 4.8.5-11.el7 for package: gcc-c++-4.8.5-11.el7.x86_64
--> Running transaction check
---> Package libstdc++-devel.x86_64 0:4.8.5-11.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
gcc-c++ x86_64 4.8.5-11.el7 base 7.2 M
Installing for dependencies:
libstdc++-devel x86_64 4.8.5-11.el7 base 1.5 M
Transaction Summary
================================================================================
Install 1 Package (+1 Dependent package)
Total download size: 8.7 M
Installed size: 25 M
Downloading packages:
--------------------------------------------------------------------------------
Total 2.0 MB/s | 8.7 MB 00:04
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : libstdc++-devel-4.8.5-11.el7.x86_64 1/2
Installing : gcc-c++-4.8.5-11.el7.x86_64 2/2
Verifying : gcc-c++-4.8.5-11.el7.x86_64 1/2
Verifying : libstdc++-devel-4.8.5-11.el7.x86_64 2/2
Installed:
gcc-c++.x86_64 0:4.8.5-11.el7
Dependency Installed:
libstdc++-devel.x86_64 0:4.8.5-11.el7
Complete!
epel-release
cmake3# yum --disablerepo=\* --enablerepo=base,epel install -y cmake3
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.iij.ad.jp
No package 2 available.
Resolving Dependencies
--> Running transaction check
---> Package cmake.x86_64 0:2.8.12.2-2.el7 will be installed
--> Processing Dependency: libarchive.so.13()(64bit) for package: cmake-2.8.12.2-2.el7.x86_64
--> Running transaction check
---> Package libarchive.x86_64 0:3.1.2-10.el7_2 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
cmake x86_64 2.8.12.2-2.el7 base 7.1 M
Installing for dependencies:
libarchive x86_64 3.1.2-10.el7_2 base 318 k
Transaction Summary
================================================================================
Install 1 Package (+1 Dependent package)
Total download size: 7.4 M
Installed size: 27 M
Downloading packages:
--------------------------------------------------------------------------------
Total 2.4 MB/s | 7.4 MB 00:03
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : libarchive-3.1.2-10.el7_2.x86_64 1/2
Installing : cmake-2.8.12.2-2.el7.x86_64 2/2
Verifying : cmake-2.8.12.2-2.el7.x86_64 1/2
Verifying : libarchive-3.1.2-10.el7_2.x86_64 2/2
Installed:
cmake.x86_64 0:2.8.12.2-2.el7
Dependency Installed:
libarchive.x86_64 0:3.1.2-10.el7_2
Complete!
参考http://webassembly.org/getting-started/developers-guide/
0 件のコメント:
コメントを投稿