It seems like the MinGW-w64 headers provide a declaration for strlwr_l but it doesn't really work. On MSDN I do not see anything about that function, but I do see the similarly named function _strlwr_l.
_strlwr_l is defined in libmsvcrt.a, but it is not mentioned in the MinGW-w64 headers. That seems like a bug that the maintainers would probably accept a patch for. If I provide an appropriate declaration for it, then I can use it in a simple C program: #include <string.h> #include <stdio.h> _SECIMP char *_strlwr_l(char *, _locale_t); int main() { char buffer[64] = "Tom\0\0"; _strlwr_l(buffer, 0); printf("%s\n", buffer); } I hope this helps! --David On Thu, Jan 21, 2021 at 11:22 AM Kacvinsky, Tom <tom.kacvin...@vector.com> wrote: > What library is strlwr_l supposed to come from? I have a lew of link > errors due to missing wide > char functions, but I have not been able to figure out which library to > use. I am using the most > up to date MSYS2 + the package for the GCC toolchain (GCC 10.2), with no > modifications, but have had no joy. This happens with the i686 and x86_^4 > flavors of MinGW-w64. > > Thanks, > > Tom > > _______________________________________________ > Mingw-w64-public mailing list > Mingw-w64-public@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/mingw-w64-public > _______________________________________________ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public