“Gtk-WARNING **: Locale not supported by C library

2019-04-09 08:02发布

问题:

Background information:

I use Mac OSX Yosemite.

I've installed gtk+ using brew install gtk+ and fixed the errors using export PKG_CONFIG_PATH=/opt/X11/lib/pkgconfig.

I've build my program using make but when I try to run it I get a warning like this:

(process:16182): Gtk-WARNING **: Locale not supported by C library.
        Using the fallback 'C' locale.

Problem: I cannot find any solutions for OS X for this particular problem.

What I've learnt so far:

  1. In this thread (Gtk-WARNING **: Locale not supported by C library. while using several Python modules (mayavi, spectral)) they suggests using:

    ipython --pylab=wx instead of ipython --pylab=osx
    but I've got no idea how python can be related to my problem (my program is written in C - the same applies to gtk+ I guess)

  2. You can find a lot of threads on this issue like this one: (Gtk-WARNING **: Locale not supported by C library. when starting apps from the commandline) but they mainly refer to Linux and/or Ubuntu.
    Most of the answers use a command like this sooner or later:

     sudo dpkg-reconfigure locales
    

    But there is no dpkg on OS X.

回答1:

The issue here is that the environment variable LANG is not set, because I've mixed settings for Polish and English in the Language and Region section in System Preferences.

Quoting @KenThomases who helped me a lot with this problem:

There's not going to be any C library locale defined for the English language in Poland (i.e. en_PL.UTF-8). That's why Terminal is not setting LANG for you in your shells, even though you have "Set locale environment variables on startup" enabled.

You can read the in-depth solution here:
Is it bad that LANG and LC_ALL are empty when running `locale -a` on OS X Yosemite?



标签: c macos gtk locale