Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[gettext] The msgfmt.exe from the tools feature does always fail in --xml mode (only the VCPKG build and only Windows) #44299

Open
JoergAtGithub opened this issue Mar 10, 2025 · 3 comments · May be fixed by #44340
Assignees
Labels
category:question This issue is a question

Comments

@JoergAtGithub
Copy link
Contributor

Operating system

x64-windows (I know that the macOS builds ARM & x64 work - don't know about other triplets)

Compiler

MSVC

Steps to reproduce the behavior

1.) Install the gettext port with tools feature: .\vcpkg.exe install gettext[tools]
2.) Run .\installed\x64-windows\tools\gettext\bin\msgfmt.exe with option --xml as described in https://www.gnu.org/software/gettext/manual/html_node/Preparing-ITS-Rules.html

for example: msgfmt.exe" -v --xml --template "D:/vcpkg/buildtrees/shared-mime-info/src/2.4-b756cadafd.clean/data/freedesktop.org.xml.in" -d "D:/vcpkg/buildtrees/shared-mime-info/src/2.4-b756cadafd.clean/data/../po" -o "D:/vcpkg/buildtrees/shared-mime-info/x64-windows-dbg/data/freedesktop.org.xml"

Optional with setting the env var GETTEXTDATADIRS before: $env:GETTEXTDATADIRS = "D:/vcpkg/buildtrees/shared-mime-info/src/2.4-b756cadafd.clean/data/its;"

Failure logs

Any call of the msgfmt.exe from the VCPKG port with argument --xml fails with: installed/x64-windows/tools/gettext/bin/msgfmt.EXE: cannot locate ITS rules for ../src/2.4-b756cadafd.clean/data/freedesktop.org.xml.in

The same commands work with the macOS builds of the same VCPKG port both for arm and x64.

For comparision, I downloaded the gettext Windows binaries (x64 shared) from http://mlocati.github.io/articles/gettext-iconv-windows.html and the same commands work out of the box.

I tried also various older versions of the VCPKG port, down to version 0.21 and they all show the same bug. It seems that the --xml mode never worked with the VCPKG builds of gettext

See also: mixxxdj/mixxx#14437

Additional context

No response

@JoergAtGithub JoergAtGithub added the category:port-bug The issue is with a library, which is something the port should already support label Mar 10, 2025
@JoergAtGithub JoergAtGithub changed the title [gettext] The msgfmt.exe from the tools feature does always fail in --xml mode (only the VCPKG build and only Windows)) [gettext] The msgfmt.exe from the tools feature does always fail in --xml mode (only the VCPKG build and only Windows) Mar 10, 2025
@jimwang118 jimwang118 self-assigned this Mar 11, 2025
@jimwang118
Copy link
Contributor

Runnable programs can be run.

Image

@jimwang118 jimwang118 added category:question This issue is a question and removed category:port-bug The issue is with a library, which is something the port should already support labels Mar 12, 2025
@JoergAtGithub
Copy link
Contributor Author

Yes, it runs, but the XML mode always fails, because it fails to find the .its file. Other modes work. There seems to be something wrong with handling of Windows paths.

@daschuer daschuer linked a pull request Mar 12, 2025 that will close this issue
7 tasks
@daschuer
Copy link
Contributor

#44340 fixes the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:question This issue is a question
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants