annotate slides/2018/05/01/slide.md @ 36:74859abd87cc

update cli tool
author Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
date Mon, 07 May 2018 12:59:27 +0900
parents 0d0c8ed9adb4
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
36
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
1 title: CbCによるMoarVMの改良
35
0d0c8ed9adb4 auto-Update generated slides by script
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
2 author: Takahiro Shimizu
0d0c8ed9adb4 auto-Update generated slides by script
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
3 profile:
0d0c8ed9adb4 auto-Update generated slides by script
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
4 lang: Japanese
0d0c8ed9adb4 auto-Update generated slides by script
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
5
0d0c8ed9adb4 auto-Update generated slides by script
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
6
0d0c8ed9adb4 auto-Update generated slides by script
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
7 # 研究内容
36
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
8 - Perl5の後継言語として開発されているPerl6はMoarVMと呼ばれるVMを搭載している.
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
9 - Perl6はMoarVM,JVM上で動くRakudoと呼ばれる実装と,コンパイラ開発者用のサブセットであるNQPが主な実装となっている.
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
10 - 現在Perl6及びMoarVMは全体的な速度がPerl5と比較し低下しており,実務として利用できるレベルに達していない.
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
11 - またPerl6の実装自体巨大なcase-switch文など見通しが悪くなっている.
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
12 - 本研究では継続を中心に開発されたContinuation based Cを用いてMoarVMの改良を検討する.
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
13
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
14 # 今週の進捗
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
15
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
16 - dalmoreでCbCgccでMoarVM/NQPが動きました
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
17
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
18 # MoarVMのclone
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
19
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
20 - MoarVMをgithubからcloneする
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
21
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
22 ```
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
23 $ git clone https://github.com/MoarVM/MoarVM.git
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
24 ```
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
25
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
26 # MoarVMのmake
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
27
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
28 - Perlの`Configure.pl`を叩いてMakefileを生成する
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
29 - 別のディレクトリからは叩け無い仕様に成っていた
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
30
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
31 ```
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
32 ./Configure.pl --cc /usr/local/x86-cbc/bin/gcc --debug --compiler gcc --prefix=/mnt/dalmore-home/one/src/build_perl6/MoarVM`
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
33 ```
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
34
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
35 - オプション
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
36 - cc
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
37 - コンパイラのパスを設定する
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
38 - debug
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
39 - debugオプション
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
40 - compiler
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
41 - コンパイラの種類を指定する
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
42 - gcc, clang, clをサポートしている
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
43 - toolchain <toolchain>
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
44 - "posix", "gnu", "bsd" and "msvc"のツールチェインを選択可能
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
45 - prefix
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
46 - make installの先を指定
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
47
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
48 # llvmでの実行
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
49
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
50 ```
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
51 (dalmore) ./Configure.pl --cc /usr/local/cbclang/bin/clang
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
52 ```
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
53
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
54 - セグフォで死ぬ
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
55
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
56 ```
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
57 0. Program arguments: /net/open/CentOS/local/cbclang/bin/clang-7.0 -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -disable-free -main-f
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
58 ile-name io.c -mrelocation-model pic -pic-level 2 -mthread-model posix -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
59 -init-array -target-cpu x86-64 -dwarf-column-info -debug-info-kind=limited -dwarf-version=4 -debugger-tuning=gdb -momit-leaf-frame-pointer -c
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
60 overage-notes-file /mnt/dalmore-home/one/src/MoarVM/src/platform/posix/io.gcno -resource-dir /net/open/CentOS/local/cbclang/lib/clang/7.0.0 -
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
61 D NDEBUG -D _REENTRANT -D _FILE_OFFSET_BITS=64 -D DEBUG_HELPERS -D MVM_TRACING=0 -D MVM_CGOTO=1 -D MVM_RDTSCP=1 -D MVM_BUILD_SHARED -I 3rdpar
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
62 ty/libuv/include -I 3rdparty/libuv/src -I 3rdparty/libatomicops/src -I 3rdparty/libtommath -I 3rdparty/dyncall/dynload -I 3rdparty/dyncall/dy
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
63 ncall -I 3rdparty/dyncall/dyncallback -I 3rdparty/sha1 -I 3rdparty/tinymt -I 3rdparty/dynasm -I 3rdparty/cmp -I 3rdparty -I src -internal-isy
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
64 stem /usr/local/include -internal-isystem /net/open/CentOS/local/cbclang/lib/clang/7.0.0/include -internal-externc-isystem /include -internal
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
65 -externc-isystem /usr/include -O3 -Werror=declaration-after-statement -Werror=pointer-arith -fdebug-compilation-dir /mnt/dalmore-home/one/src
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
66 /MoarVM -ferror-limit 19 -fmessage-length 136 -fobjc-runtime=gcc -fdiagnostics-show-option -fcolor-diagnostics -vectorize-loops -vectorize-sl
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
67 p -o src/platform/posix/io.o -x c src/platform/posix/io.c
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
68 1. <eof> parser at end of file
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
69 clang-7.0: error: unable to execute command: Segmentation fault
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
70 clang-7.0: error: clang frontend command failed due to signal (use -v to see invocation)
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
71 clang version 7.0.0
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
72 Target: x86_64-unknown-linux-gnu
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
73 Thread model: posix
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
74 InstalledDir: /usr/local/cbclang/bin
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
75 clang-7.0: note: diagnostic msg: PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace, preprocessed source, a
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
76 nd associated run script.
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
77 clang-7.0: note: diagnostic msg:
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
78 ********************
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
79
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
80 PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
81 Preprocessed source(s) and associated run script(s) are located at:
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
82 clang-7.0: note: diagnostic msg: /tmp/io-e696e2.c
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
83 clang-7.0: note: diagnostic msg: /tmp/io-e696e2.sh
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
84 clang-7.0: note: diagnostic msg:
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
85
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
86 ********************
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
87 ```
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
88
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
89 # make
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
90
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
91 ```
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
92 $ make -j 50 && make install
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
93 ```
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
94
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
95 - 何故かsrc側にもmoarのバイナリが生成された
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
96 - `/mnt/dalmore-home/one/src/build_perl6/MoarVM/bin`にMoarのバイナリが生成
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
97
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
98
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
99 # NQPのmake
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
100
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
101
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
102 ```
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
103 +dalmore+one ./Configure.pl --prefix=/mnt/dalmore-home/one/src/build_perl6/nqp --backends=moar --with-moar=/mnt/dalmore-home/one/src/build_perl6/MoarVM/bin/moar
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
104 ```
35
0d0c8ed9adb4 auto-Update generated slides by script
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
105
36
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
106 - オプション
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
107 - `prefix`
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
108 - ビルド先
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
109 - `backends`
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
110 - NQPが走るVMを選択する
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
111 - `--with-moar`
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
112 - MoarVMを使う場合MoarVMのパス
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
113
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
114 # バージョン
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
115
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
116 ```
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
117 Creating tools/build/install-jvm-runner.pl ...
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
118
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
119 ===SORRY!===
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
120 Found /mnt/dalmore-home/one/src/build_perl6/MoarVM/bin/moar version 2018.04-1-g577857a, which is too old. Wanted at least 2018.04-18-ge7d79d8
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
121 69
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
122
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
123 No suitable MoarVM (moar executable) found using the --prefix
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
124 (You can get a MoarVM built automatically with --gen-moar.)
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
125 ```
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
126
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
127 - MoarVMとバージョンが異なるらしくエラーが発生した
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
128
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
129 ```
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
130 /mnt/dalmore-home/one/src/build_perl6/MoarVM/bin/moar --libpath=src/vm/moar/stage0 src/vm/moar/stage0/nqp.moarvm --bootstrap --module-path=ge
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
131 n/moar/stage1 --setting-path=gen/moar/stage1 \
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
132 --setting=NQPCORE --no-regex-lib --target=mbc \
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
133 --output=gen/moar/stage1/NQPP6QRegex.moarvm gen/moar/stage1/NQPP6QRegex.nqp
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
134 /usr/bin/perl -MExtUtils::Command -e mkpath gen/moar/stage1/gen
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
135 /usr/bin/perl tools/build/gen-version.pl /mnt/dalmore-home/one/src/build_perl6/nqp /mnt/dalmore-home/one/src/build_perl6/nqp/share/nqp/lib >
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
136 gen/moar/stage1/nqp-config.nqp
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
137 Can't locate Digest/SHA.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
138 5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at tools/build/gen-version.pl line 9.
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
139 BEGIN failed--compilation aborted at tools/build/gen-version.pl line 9.
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
140 make: *** [gen/moar/stage1/nqp.moarvm] Error 2
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
141 ```
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
142
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
143 - バージョンを更新したところ`Digest::SHA`が入っていないエラーが発生した
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
144
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
145 # Perlモジュールの追加
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
146
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
147 - 最近のPerlのモジュールinstallツールのcpanmをoneにいれました
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
148 - `yum install perl-devel`を実行してperlのコアモジュールを追加した
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
149 - `curl -L https://cpanmin.us | perl - --sudo App::cpanminus `
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
150 - `cpanm --force Digest::SHA`
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
151
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
152
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
153 # MacOSX上でのgccのエラー
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
154
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
155 ```
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
156 $./Configure.pl --prefix=/Users/anatofuz/workspace/cr/Basic/build_perl6 --cc /Users/anatofuz/workspace/cr/build_gcc/bin/gcc --compiler gcc
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
157 ```
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
158
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
159 これを実行すると
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
160
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
161 ```
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
162 compiling 3rdparty/libuv/src/unix/darwin-proctitle.o
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
163 compiling 3rdparty/libuv/src/unix/fsevents.o
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
164 In file included from /System/Library/Frameworks/Security.framework/Headers/AuthSession.h:32:0,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
165 from /System/Library/Frameworks/Security.framework/Headers/Security.h:43,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
166 from /System/Library/Frameworks/CoreServices.framework/Frameworks/OSServices.framework/Headers/CSIdentity.h:43,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
167 from /System/Library/Frameworks/CoreServices.framework/Frameworks/OSServices.framework/Headers/OSServices.h:27,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
168 from /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Headers/IconsCore.h:23,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
169 from /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Headers/LaunchServices.h:22,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
170 from /System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.h:39,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
171 from /System/Library/Frameworks/ApplicationServices.framework/Headers/ApplicationServices.h:23,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
172 from 3rdparty/libuv/src/unix/darwin-proctitle.c:33:
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
173 /System/Library/Frameworks/Security.framework/Headers/Authorization.h:193:7: error: variably modified 'bytes' at file scope
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
174 char bytes[kAuthorizationExternalFormLength];
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
175 ^~~~~
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
176 In file included from /System/Library/Frameworks/Security.framework/Headers/AuthSession.h:32:0,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
177 from /System/Library/Frameworks/Security.framework/Headers/Security.h:43,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
178 from /System/Library/Frameworks/CoreServices.framework/Frameworks/OSServices.framework/Headers/CSIdentity.h:43,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
179 from /System/Library/Frameworks/CoreServices.framework/Frameworks/OSServices.framework/Headers/OSServices.h:27,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
180 from /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Headers/IconsCore.h:23,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
181 from /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Headers/LaunchServices.h:22,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
182 from /System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.h:39,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
183 from 3rdparty/libuv/src/unix/fsevents.c:49:
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
184 /System/Library/Frameworks/Security.framework/Headers/Authorization.h:193:7: error: variably modified 'bytes' at file scope
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
185 char bytes[kAuthorizationExternalFormLength];
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
186 ^~~~~
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
187 make: *** [3rdparty/libuv/src/unix/fsevents.o] Error 1
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
188 make: *** Waiting for unfinished jobs....
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
189 In file included from /System/Library/Frameworks/CoreGraphics.framework/Headers/CGContext.h:18:0,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
190 from /System/Library/Frameworks/CoreGraphics.framework/Headers/CGBitmapContext.h:9,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
191 from /System/Library/Frameworks/CoreGraphics.framework/Headers/CoreGraphics.h:11,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
192 from /System/Library/Frameworks/ApplicationServices.framework/Headers/ApplicationServices.h:35,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
193 from 3rdparty/libuv/src/unix/darwin-proctitle.c:33:
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
194 /System/Library/Frameworks/CoreGraphics.framework/Headers/CGFont.h:53:40: error: initializer element is not constant
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
195 static const CGFontIndex kCGGlyphMax = kCGFontIndexMax;
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
196 ^~~~~~~~~~~~~~~
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
197 In file included from /System/Library/Frameworks/CoreGraphics.framework/Headers/CGContext.h:21:0,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
198 from /System/Library/Frameworks/CoreGraphics.framework/Headers/CGBitmapContext.h:9,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
199 from /System/Library/Frameworks/CoreGraphics.framework/Headers/CoreGraphics.h:11,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
200 from /System/Library/Frameworks/ApplicationServices.framework/Headers/ApplicationServices.h:35,
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
201 from 3rdparty/libuv/src/unix/darwin-proctitle.c:33:
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
202 /System/Library/Frameworks/CoreGraphics.framework/Headers/CGPath.h:391:15: error: expected identifier or '(' before '^' token
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
203 typedef void (^CGPathApplyBlock)(const CGPathElement * element);
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
204 ^
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
205 /System/Library/Frameworks/CoreGraphics.framework/Headers/CGPath.h:393:53: error: unknown type name 'CGPathApplyBlock'
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
206 CG_EXTERN void CGPathApplyWithBlock(CGPathRef path, CGPathApplyBlock CF_NOESCAPE block)
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
207 ^~~~~~~~~~~~~~~~
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
208 make: *** [3rdparty/libuv/src/unix/darwin-proctitle.o] Error 1
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
209 ```
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
210
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
211
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
212 とフレームワークのコンパイルエラーが発生する.
74859abd87cc update cli tool
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents: 35
diff changeset
213 これはbrew経由で入れたgcc-7でも発生した