ハングアップの日々

2014年 7月分

2014/07/30

memo

2014/07/26

memo

2014/07/24

memo

2014/07/23

memo

2014/07/20

memo

2014/07/17

memo

2014/07/16

memo

 Noto Sans CJK、Source Han Sans について。

2014/07/12

memo

2014/07/11

memo

 Bracketed Paste Mode について。

2014/07/10

memo

2014/07/08

memo

2014/07/04

memo

2014/07/01

LTVERSION

 libtool を使ってライブラリをビルドする場合、LTVERSION を設定する必要があるが、これについてよく分かっていなかったので、調べてみた。
 鬼雲では、configure.in の中で、このように LTVERSION を設定している。LTVERSION は、Current:Revision:Age の形式で指定する。Current, Revision, Age の意味は、Libtool versioning - Libtool によると、

ということである。
 C:R:A の値は、(Linux の場合) 共有ライブラリの名前の後ろに付く数字を生成するのに使われるが、値がそのまま使われるわけではない点に注意が必要である。その数字がどのように生成されるかはドキュメントに明記されていないようだが、libfoo.so.X.Y.Z という共有ライブラリ名は以下のように生成されるようである。

X = C - A
Y = A
Z = R

 X の値が増えたときはインターフェースに互換が無い。Y の値が増えたときは新しいインターフェースが追加されているが互換性はある。Z の値のみが増えたときはインターフェースに変更は無い。

 C:R:A の決め方は以下が詳しい。


Copyright (C) 2014 K.Takata