[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: libtool and sonames



Scavenging the mail folder uncovered Marcelo E. Magallon's letter:
> >> Federico Di Gregorio <fog@mixadlive.com> writes:
> 
>  > right. but the packages are more like libelastic14, libelastic22, ...,
>  > libelastic123 (go, read configure.in and see what's the default way
>  > of generating  library versioning info...)
> 
>  Gladly, if you tell me where to find the source for this library.

www.elasticworld.org (it is a new interpreted programming language with
a lot of features [real closures, oo-programming, i like to call it
"a python with what's missing from python"...])

>  > at now, the author does not use --version-info, it uses -release instead.
>  > i can simply provide elastic0.0.15, elastic0.0.16 and so on (with libs
>  > packages libelastic0.0.15, etc...) but i have to produce a **new** 
>  > package everytime the upstream author does a release. and that is *bad*.
> 
>  Hmmm... that's what the libtool documentation says you should do.  At
>  least the author is reading the docs.
> 
>  Again, if the API is really *that* unstable, a) I don't think many
>  people will be using this library soon and b) it sounds like its being
>  used as part of a larger project, which again, makes this a good
>  candidate for a static library, at least for now.  Static libraries
>  aren't inferior as you suggest.  It's just a pain to recompile stuff
>  everytime the library changes, but AFAICS you'll be doing that anyway.

maybe you're right. if i can't find a better soulution i'll go for
static linking. the problem is that the api changes, but is not
backward-uncompatible, so a shared library would be fine.

>  > now, in debian we have to put major version as soname. this is
>  > required by policy. so the question is: what version number do i put
>  > in the library?  (note that programs compiled on other dists won't
>  > run anyway...) 
>  
>  What's the soname of the library? (objdump -p libfoo.so | grep SONAME) 

with --release:

	libelastic-0.0.15.so

with --version-info:

	libelastic.so.14.0.1

(note that if the api changes, next version will be):

	libelastic-0.0.15.so or libelastic.so.15.0.1

ciao,
federico

-- 
Federico Di Gregorio
MIXAD LIVE System Programmer                           fog@mixadlive.com
Debian GNU/Linux Developer & Italian Press Contact        fog@debian.org
             A short story: I want you. I love you. I'll miss you. -- Me



Reply to: