2015年26週目まとめおおたの物置2015年26週目まとめ2015-06-29Tweetfluentd-forwarderのビルドの仕組み基本はREADMEの通りにすればビルド出来ますが、やっていることがちょっと複雑なのでメモ。github.com/fluent/fluentd-forwarder/entrypoints/build_fluentd_forwarderで、GOPATH以下にリポジトリがcloneし、entrypoints/build_fluentd_forwarder内のビルド作業用バイナリが作られます。-uを実行し、リポジトリをcloneして(既にしているけど)、entrypoints/fluentd_forwarder下をビルドします。getでfluentd_forwarderをビルドする。いう流れになっています。fluentd-forwarderに手を加えてみるローカルで変更する場合fluentd-forwarderに手を加えたい場合、GOPATH下のfluent/fluentd-forwarderを書き換えてビルドするのが最も早い方法です。build_fluentd_forwarderがcloneしますが、変更はそのままでビルド出来ます。Forkしたリポジトリに変更を加える場合Forkしてそこに対して変更をした場合、若干やっかいな事が起きます。getを使い、リポジトリをクローンしてビルドします。そのため、build_fluentd_forwarderの中に書いてあるリポジトリを書き換え、自分のリポジトリに変更する必要があります。entrypoints/fluentd_forwarderはリポジトリルートのファイルを外部ライブラリとしてインポートしています。そのため、main.goでfluent/fluentd_folwarderをインポートしている部分も、自分のリポジトリに変更する必要があります。以上の変更を加えることで、Forkした自分のリポジトリからビルドすることが出来ます。まとめると以下のの2ステップになります。後者はgoのimportの仕組みがリポジトリ名まで指定する仕組みのため、書き換える以外に良い解決方法が思いつきません。ota42yC++/Ruby/RoR/golang/rust/flutter。