bug-gettext
[Top][All Lists]
Advanced

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

[bug #66356] On Windows: msginit fails to run cldr-plurals if shared bui


From: Michele Locati
Subject: [bug #66356] On Windows: msginit fails to run cldr-plurals if shared build
Date: Sat, 19 Oct 2024 13:05:46 -0400 (EDT)

URL:
  <https://savannah.gnu.org/bugs/?66356>

                 Summary: On Windows: msginit fails to run cldr-plurals if
shared build
                   Group: GNU gettext
               Submitter: mlocati
               Submitted: Sat 19 Oct 2024 07:05:43 PM CEST
                Category: None
                Severity: 3 - Normal
              Item Group: None
                  Status: None
                 Privacy: Public
             Assigned to: None
             Open/Closed: Open
         Discussion Lock: Any


    _______________________________________________________

Follow-up Comments:


-------------------------------------------------------
Date: Sat 19 Oct 2024 07:05:43 PM CEST By: Michele Locati <mlocati>
If we set the GETTEXTCLDRDIR environment variable to the path of a directory
that contains the common/supplemental/plurals.xml file, bin/msginit executes
libexec/gettext/cldr-plurals in order to derive the plural rules from the CLDR
data.

Everything works as expected, except when gettext is built for Windows in
"shared" mode.

In that mode, we have .exe files that load functions from .dll files.
Windows locates the .dll files by looking in the directory of the .exe files
and in the directories listed in the PATH environment variable.

Thus, the executables in the bin directory work.

However, executables in other directories don't work if the bin directory
(which contains the .dll files) isn't added to the PATH environment variable.

Indeed, msginit outputs this message:

See the attached file msginit-cldr-plurals-failure.png, where you can see that
msginit executes cldr-plurals, but cldr-plurals fails to find the gettext .dll
files (libintl-8.dll and libgettextlib-0.23-pre1.dll).

I see two possible fixes:

1. when msginit launches cldr-plurals, temporarily set the current directory
to the one where msginit is located.

2. when msginit launches cldr-plurals, temporarily add the directory of
msginit to the PATH environment variable.






    _______________________________________________________
File Attachments:


-------------------------------------------------------
Name: msginit-cldr-plurals-failure.png  Size: 152KiB
<https://file.savannah.gnu.org/file/msginit-cldr-plurals-failure.png?file_id=56556>

    AGPL NOTICE

These attachments are served by Savane. You can download the corresponding
source code of Savane at
https://git.savannah.nongnu.org/cgit/administration/savane.git/snapshot/savane-a0d195b6c3392c5f36ab8952df55e848831b569e.tar.gz

    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?66356>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]