Libraries.io monitors 9,194,564 open source packages across 32 different package managers, so you don't have to. Find out more
![Libraries - The Open Source Discovery Service](https://cdn-ak-scissors.b.st-hatena.com/image/square/afafd0fe25a9f7f7ca1ceb5a94255df126f30bcc/height=288;version=1;width=512/https%3A%2F%2Flibraries.io%2Fapple-touch-icon-152x152.png)
12/6のGo Conference 2015 WinterでGoでPHP拡張モジュールを書いたよ、という内容のLTをしてきました。 ざっくり言うと、Goって言ってもCのレベルに落ちてくれば連携なんて簡単でしょって思ってたけど、GoもPHP拡張もビルドプロセスが隠蔽されてるので、落としどころが見つからなくて苦労したよって話でした。もっと綺麗に連携できる方法を編み出した方は教えてください。 PHP拡張モジュール側のビルドについて補足 拡張モジュールを共有ライブラリじゃなく静的ライブラリとして作ればいいじゃん、って発想で作り始めましたが、実は拡張モジュールを静的ライブラリとして作るのは結構ダルいという事情があります。というのも、拡張モジュールをphpizeするとconfigureオプションで何を指定しても静的ライブラリが作られないようにm4マクロが展開されてしまうのです。 そこで、できあがった
Go 1.4 で android に対応していたのでもしかしてそろそろできるんじゃないかなぁとか思いながら github の go レポジトリを眺めていたら Go 1.5 から buildmode なんていうオプションが追加されていて、そこに c-shared なるものががが。 これは間違いないだろうと試してみました。 (ちなみに試すためには Go 1.5 が必要なので git clone して Go 1.4 でビルドしてください。本記事では Go 1.5 の準備は割愛します。) サンプルコードは gist にも上げておきました。 package main import ( "C" "log" ) //export fib func fib(n int) int { if (n < 2) { return n } return fib(n - 2) + fib(n - 1) } func
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く