Re: Bug#134045: b-f needs to be updated to compile with slang1a-utf8
Eduard Bloch <edi@gmx.de> cum veritate scripsit:
> I see. I did already wonder how mutt links against the new utf8 libs.
> Okay, my mistake. Assuming you are right, we have needed library packages. But:
>
> loadtrm ../libfdisk/libfdisk.a -lnewt -lslang
> /usr/bin/ld: warning: libslang.so.1, needed by /usr/lib/libnewt.so, may conflict with libslang.so.1-UTF8
>
> This .so link is provided by the libnewt-dev package, and gcc is fooled.
> I suggest to provide a symlink like /usr/lib/libnewt_utf8.so in
> libnewt-utf8-0 and link dbootstrap with -lnewt_utf8.
What I've realized is that libnewt-utf8-dev is really required, and
libnewt-utf8 would need to exist, just like slang, because the
two versions of slang are binary incompatible, and newt too will be
binary-incompatible.
> so_pattern = re.compile("(.*)\.so(\.\d+)+")
> ...
> # Find a PIC archive for the library
> def find_pic(lib):
> base_name = so_pattern.match(lib).group(1)
> for path in lib_path:
> for file in glob.glob(path + "/" + base_name + "*_pic.a"):
> if os.access(file, os.F_OK):
> return resolve_link(file)
> return ""
>
> IF I interpret mklibs.py correctly, soname is not used for locating the
> PIC file. It is only extracted from the NEEDED and wroten later into the
> created library, but the symbols may come from the wrong _pic.a file.
>
> To mellum: is this correct? Could you fix it to look for
> basename*SONAME*_pic.a first? I could try, but Python typicaly hates me.
The PIC file is a random collection of data, in the "ar" archive format,
that does not have any management information included...
But I think this should be working.
I'll take a look at it (I don't really grok python)
when it really causes problems.
regards,
junichi
--
dancer@debian.org : Junichi Uekawa http://www.netfort.gr.jp/~dancer
GPG Fingerprint : 17D6 120E 4455 1832 9423 7447 3059 BF92 CD37 56F4
Reply to: