[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [bug-gettext] [sr #108743] Inconsistent definition of libintl_gettex
From: |
Dagobert Michelsen |
Subject: |
Re: [bug-gettext] [sr #108743] Inconsistent definition of libintl_gettext_germanic_plural |
Date: |
Wed, 8 Jul 2015 14:10:14 +0200 |
Hi Daiki,
Am 19.02.2015 um 05:02 schrieb Daiki Ueno <address@hidden>:
> Dagobert Michelsen <address@hidden> writes:
>> FAIL: lang-vala
>> ===============
>>
>> ld.so.1: prog: fatal: libintl.so.8: open failed: No such file or directory
>> ./lang-vala: line 90: 29632 Killed LANGUAGE=
>> LC_ALL=$LOCALE_FR ./prog > prog.out
>> FAIL lang-vala (exit status: 1)
>
> Vala is basically a C translator and it takes compiler/linker flags from
> pkgconfig. So I suspect your glib-2.0.pc does not point to the correct
> location of the system's libintl library. You could try adding
> --verbose to ${VALAC} command line in lang-vala to get the actual linker
> command line (maybe we should add it by default for better diagnostics).
I finally managed to isolate the issue. Here is my testcase:
prog.vala:
int main (string[] args) {
Intl.setlocale (LocaleCategory.ALL, "");
Intl.textdomain ("prog");
Intl.bindtextdomain ("prog", ".");
stdout.printf ("%s\n", _("'Your command, please?', asked the waiter."));
stdout.printf ("%s\n", _("%s is replaced by %s.").printf ("FF", "EUR"));
return 0;
}
Works:
PATH=/usr/bin:/opt/csw/bin truss -o valac.truss -f valac
'--Xcc=-DGETTEXT_PACKAGE="prog"‘ prog.vala
Does not work:
PATH=/opt/csw/bin:/usr/bin truss -o valac.truss -f valac
'--Xcc=-DGETTEXT_PACKAGE="prog"' prog.vala
When I use
PATH=/opt/csw/bin:/usr/bin
then pkg-config from OpenCSW takes precedence and glib-2.0.pc is taken from
OpenCSW which requires libintl.so.8 and marks it as NEEDED in the resulting
binary.
When the binary is run the RUNPATH is not correctly set to include
-R/opt/csw/lib
as it is usually passed via -R to LD_OPTIONS and implicitly pulled in and not
registered in the pc-file.
Adding LD_OPTIONS=-R/opt/csw/lib to the invocation of the testsuite makes
the tests passing.
I do pass LDFLAGS=-R/opt/csw/lib during configure-time but that doesn’t seem to
be
sufficient. Is this intended or should the tests take LDFLAGS into account?
Best regards
— Dago
--
"You don't become great by trying to be great, you become great by wanting to
do something,
and then doing it so hard that you become great in the process." - xkcd #896
smime.p7s
Description: S/MIME cryptographic signature
- Re: [bug-gettext] [sr #108743] Inconsistent definition of libintl_gettext_germanic_plural,
Dagobert Michelsen <=