JavaScript enginたちのコンパイル(2015)

2015年版の情報ですが、SpiderMonkeyとv8のビルド手順を確認した際のメモです。
勿体無いので一応公開しておきます。


 SpiderMonkeyの取得とビルド



公式の手順にあるビルドシステムのブートストラップを実行します。
wget -O bootstrap.py https://hg.mozilla.org/mozilla-central/raw-file/default/python/mozboot/bin/bootstrap.py && python bootstrap.py

下記の返答を 要求されたので「1」を答えました。
その後で依存パッケージ導入のために管理者権限を要求されます。
Please choose the version of Firefox you want to build:
1. Firefox for Desktop
2. Firefox for Android
Your choice:

SpiderMonkeyの環境構築はV8と違って、ブートストラップの最後にgitリポジトリの案内まで表示してくれる親切さです。(公式ダウンロードリポジトリ案内を読むまでもなかった。)


Gitリポジトリ取得は、履歴の長さ故かとても時間がかかります。
git clone https://git.mozilla.org/integration/gecko-dev.git

わたしは一晩放置しました。
最新ソースだけ欲しい場合は、単に最新ソースツリーを指定して取得したほうが良さそうです。
git clone --depth 1 https://github.com/mozilla/gecko-dev.git


ビルドは、思った以上に早く終わりました。8コア指定したからかもしれません。
autoconfは念の為にバージョンを確認しましょう。 ブートストラップが最適バージョンを配置してくれているようですが。
autoconf --version
autoconf
mkdir build_OPT.OBJ
cd build_OPT.OBJ
../configure make -j8

ビルド成功を確認。
dist/bin/js --help

今回は、インストールはしませんでした。




JavaScript v8の取得



V8 JavaScriptエンジンの取得

公式のGit利用案内ページにはいろいろ書いてありますが、結局Githubの公式ミラーからいつものcloneで取得できます。
git clone https://github.com/v8/v8-git-mirror.git


glient <- V8ビルドシステム(makefile生成)


リンクを辿ってChromiumビルドツールのページ http://dev.chromium.org/developers/how-tos/install-depot-tools  にて
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git


export PATH=`pwd`/depot_tools:"$PATH"

要はパスを通しておけということのようです。

gclient --help
が通ることを確認。

公式手順には記載されていませんがgclientはconfigが必要。
gclient config https://chromium.googlesource.com/v8/v8
gclient sync

しばらく反応がなかったり、反応があったと思えば時間をカウントするだけだったり、進行しているのか疑ってしまう動作のあとでProgressがちゃんと進行します。


SVNは、checkoutの途中でエラーで止まりました。

Linuxコマンドライン上でSVGベクタ画像をJPG等へラスタライズ変換する

 Linuxコマンドライン上でSVGベクタ画像をJPG等へラスタライズ変換することができるが、上手く変換されない場合がある。   以前作った魔法陣イラスト素材をイラスト素材ストックサイトへ登録しようと思い立ち、改めて素材用にラスタライズ変換をかけようとした。   ラスタライズ変換...