https://bugs.winehq.org/show_bug.cgi?id=54319
Bug ID: 54319 Summary: wrc doesn't find locales.nls Product: Wine Version: 8.0-rc4 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: tools Assignee: wine-bugs@winehq.org Reporter: steve.schnepp@gmail.com Distribution: ---
Created attachment 73883 --> https://bugs.winehq.org/attachment.cgi?id=73883 tools/wrc/wrc.c.diff
When building 8.0rc4 in a i386 chroot I have an error :
tools/wrc/wrc -u -o dlls/aclui/aclui.res --nostdinc --po-dir=po -Idlls/aclui -Iinclude -Iinclude/msvcrt -D_UCRT \ -D__WINESRC__ dlls/aclui/aclui.rc Error: unable to load locale.nls make: *** [Makefile:1459: dlls/aclui/aclui.res] Error 2
If I launch the command with a --nls-dir=nls it works. It actually works with *any* directory.
It seems that the 1st NULL is never replaced correctly in the line 145 of tools/wrc/wrc.c.
const char *nlsdirs[3] = { NULL, NLSDIR, NULL };
When I replace it with ...
const char *nlsdirs[3] = { "whatever", NLSDIR, NULL };
... it does work. But only if wine is already installed, as there's a
-DNLSDIR=""/opt/wine-devel/share/wine/nls""
when compiling tools/wrc/wrc.c
So, I'm using
const char *nlsdirs[3] = { "nls", NLSDIR, NULL };
and it does work even without the wine package being installed.