GTK+ FAQ for Debian
---------------------

Q. the following message is output. gtk+ doesn't provide it.

Gdk-WARNING **: Missing charsets in FontSet creation
Gdk-WARNING **:     xxxxxxxx

A1. In .gtkrc which is made by you or gtkrc that gtk+ has by default, when
    the fonts has no xxxxxxxx encoding, these warnings are output.
    so please check it before file a bug.

    1. if you don't have strace, runs apt-get install strace.
    2. strace <gtk apps> |& grep gtkrc | grep open
    3. if you get something, check those files. the fonts should be specified
       invalid font in these files.
    4. check owner of these files.
       e.g. dpkg -S /etc/gtk/gtkrc.iso-8859-2

A2. you may specify invalid locale. GTK+ will find gtkrc as the following
    rules:

    1. gtkrc.ll_cc.lowercasecodeset
    2. gtkrc.ll_cc.normalizedcodeset
    3. gtkrc.ll.lowercasecodeset
    4. gtkrc.ll.normalizedcodeset
    5. gtkrc.lowercasecodeset
    6. gtkrc.normalizedcodeset
    7. gtkrc.ll_cc
    8. gtkrc.ll

    normalize the charset into a standard form, which has all '-' and '_'
    characters removed.

    Also GTK+ affect your locale. you can check that by the following code:

    #include <stdio.h>
    #include <locale.h>
    #include <langinfo.h>

    int main (void)
    {
    	setlocale (LC_CTYPE, "");
	printf ("%s\n", nl_langinfo (CODESET));
	return 0;
    }

    for example, your /etc/locale.gen has:
    es_ES ISO-8859-1
    es_ES@euro ISO-8859-15

    and if you set es_ES@euro to LC_CTYPE, result of that program should be:
    $ LC_CTYPE=es_ES@euro ./test
    ISO-8859-15

    GTK+ use this value for lowercasecodeset and normalizedcodeset.
    if that value is not expected by you, probably you was wrong locale
    settings.

