Travis CIでlibstdc++のバージョンを変更する

Travis CIでプロジェクトをテストしようとしたところ、以下のようなエラーが出て止まりました。

https://travis-ci.org/KamataRyo/wms/jobs/165426659#L387

Travis CIのデフォルトのコンテナでは、古い標準C++ライブラリのlibstdc++がインストールされており、要求されているGLIBCXX_3.4.20が見つからないようです。

$ strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_DEBUG_MESSAGE_LENGTH

Travis CIの設定を変更し、十分新しいと思われるlibstdc++をインストールします。

.taravis.ymlAddonsディレクティブに以下の項目を記載し、toolchainの設定で使用するlibstdc++のバージョンを明示したところ、GLIBCXX_3.4.20は正しくロードされました。

addons:
  apt:
    sources:
      - ubuntu-toolchain-r-test
    packages:
      - libstdc++-4.9-dev
$ strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_3.4.20
GLIBCXX_3.4.21
GLIBCXX_3.4.22
GLIBCXX_DEBUG_MESSAGE_LENGTH

https://travis-ci.org/KamataRyo/wms/jobs/165431750#L384
ビルドもパスしています。やったね!

参考

Sublime Textの設定ファイルを削除してディスクスペースを確保する

かつてMacからアンインストールしたSublime Textの設定ファイル等を削除し忘れており、ストレージを消費していたので削除しました。
“Sublime Textの設定ファイルを削除してディスクスペースを確保する” の続きを読む

鐘乳石が山道に転がっている

滋賀県の米原市と岐阜県の関ヶ原町にまたがる伊吹山にハイキングに行ってきました。
5合目を過ぎたあたりで写真の石を見つけました。

Instagramのキャプションにもあるとおり、これは、鐘乳石が石から剥がれたものと思われます。鐘乳石はある程度の規模の空間がなければ形成されないため、これは5号目より高い場所に鍾乳洞があったことを物語っています。

伊吹山周辺や鈴鹿山系の北部は石灰岩地帯となっており、周囲には河内の風穴や佐目のコウモリ穴など大小の鍾乳洞が点在しています。

琵琶湖東岸の石灰岩地帯は十分に調査がされていないそうです。
このあたりには、未踏の巨大な鍾乳洞が必ず存在すると思われます。

wp-adminに移動するブックマークレット

小ネタです。WordPressのログインページに移動するブックマークレットです。
ログインURLを変更していない限り、ログインページに移動します。

javascript:a=location.href.split('/').slice(0,3);a.push('wp-admin');location=a.join('/')

ブラウザのブックマークに追加してクリックすると、任意のWordPressサイトにいるときに、http(s)://example.com/wp-adminに移動します。
フォルダを切っている場合(ホームがhttp(s)://example.com/wordpress/など)には対応していません。

余呉湖と琵琶湖を結ぶ西野水道

余呉湖と琵琶湖を結ぶ西野水道に行ってきました。

西野水道は、余呉湖から流出し湖北町を経て琵琶湖に流入する余呉川のショートカットで、治水のため掘削された人工の放水路です。西野水道 (wikipeidia)

2016-06-26 19.03.35 HDR

トンネルを通り、高月町側から琵琶湖側に抜けることができます。湖岸には道路がないため、トンネルを抜ける以外でのアプローチは難しい場所です。
放水路を通って運ばれた土砂が堆積して砂州を形成しており、独特の景観を形作っています。
2016-06-26 18.14.06

後背はオニクルミの純林で、たくさんのクルミが実っており、また波打際には実生が多く見られました。砂州の上はヤナギなどが多く見られます。

湖岸にはたくさんのワカサギがいましたが、ほぼ例外なく潰瘍ができており、冷水病が蔓延していることが伺えます。このワカサギを取っているのか、多くの親子連れが網で魚を掬っていました。また、バス釣りのスポットでもあるようです。

水道は3つあり、史跡に指定されている初代の水道、この砂州への連絡通路になっている2代目、コンクリ固めで現在の放水路となっている3代目があります。細く暗い初代の水道は、現在では水は流れておらず、ヘルメットをかぶって見学することができるようです。

道路から隔絶されており、非日常を味わうことのできるスポットでした。
2016-06-26 18.38.53

StyleCIを使ってPHPのコーディングスタイルをチェックする (2)

前回に続き、StyleCIの設定と使用方法について解説します。今回は、PHPのスタイル解析の詳細な設定や、Githubへのプッシュがあった際に、自動でスタイル解析を行う方法を解説します。
“StyleCIを使ってPHPのコーディングスタイルをチェックする (2)” の続きを読む

StyleCIを使ってPHPのコーディングスタイルをチェックする (1)

StyleCIはPHPのコーディングスタイルチェックに特化したCI支援サービスです。Travis CIなどと同様に、オープンソースプロジェクトの場合は無料で利用できます。このエントリでは、Githubでホストされているオープンソースプロジェクトに対して、StyleCIの導入と設定を行う方法を解説します。
“StyleCIを使ってPHPのコーディングスタイルをチェックする (1)” の続きを読む

GitやBashにGit関係のエイリアスを追加する

私が使っているコマンドのエイリアスです。吟味しながら追記・削除していきます。

Gitコマンド

git configコマンドに--globalオプションをつけると、コマンドのエイリアスなどを設定できます。

# checkoutコマンドのエイリアスをcoに設定して短縮する
# 例) git co master # masterブランチにチェックアウト
$ git config --global alias.co checkout

# branchコマンドのエイリアスをbrに設定して短縮する
# 例) git br -d foobar # fooブランチを削除
$ git config --global alias.br branch

# statusコマンドのエイリアスをstに設定して短縮する
# 例) git st # statusチェック
$ git config --global alias.st status

~/.gitconfigを直接編集してもOKです。

$ vi ~/.gitconfig 
..
[alias]
    co = checkout
    br = branch
    st = status
..

Bash Profiles

シェルのエイリアスとして設定しているのはこちら。

# 使用頻度の高いcloneコマンドをシェルのエイリアスとして設定して短縮する
$ echo "alias gc='git clone'" >> ~/.bash_profile