なぜBottleにしたかって? 1ファイルのサーバだからな。
brumpyはgit cloneしたあとに
make export GOPATH=$PWD/build export PYTHONPATH=$PWD/build/lib/python2.7/site-packages
これでいけた。 2.7対応なのでそれしないとだめっぽい。 ↓このエラー。
Traceback (most recent call last): File "tools/grumpc", line 25, in <module> from grumpy.compiler import block ImportError: No module named grumpy.compiler
Bottleをpipじゃなくてファイルダウンロード
curl -O https://raw.githubusercontent.com/bottlepy/bottle/master/bottle.py
tools/grumpc bottle.py > bottle.go
これをやるとexec
やデフォルト引数に**
が入ったメソッドで怒られる。
line 671: expression node not yet implemented: Set
こんなエラー出たら該当のbottle.pyをコメントアウトw
そして、
def _copy_file(self, fp, chunk_size=2 ** 16):
おそらくデフォルト引数に**を認識しないような構文解析されてるかもしれんので、
2 ** 16 65536
なんで
def _copy_file(self, fp, chunk_size=65536):
こうする!
すると再度tools/grumpc bottle.py > bottle.go
でとりあえずbottle.py
がbottle.go
に変換された!
そいつをビルド
go build -o bottle bottle.go
bottle.go:4:2: cannot find package "grumpy/lib/Cheetah" in any of: /usr/local/opt/go/libexec/src/grumpy/lib/Cheetah (from $GOROOT) /Users/shinriyo/grumpy/build/src/grumpy/lib/Cheetah (from $GOPATH) bottle.go:5:2: cannot find package "grumpy/lib/Cheetah/Template" in any of: /usr/local/opt/go/libexec/src/grumpy/lib/Cheetah/Template (from $GOROOT) /Users/shinriyo/grumpy/build/src/grumpy/lib/Cheetah/Template (from $GOPATH)
ぎょええええ
さすがにpip依存は無理なのかも。