Re: non-ASCII error messages from gcc

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Sep 28, 2005 at 06:03:16AM -0400, Jakub Jelinek wrote:

>>  On Wed, Sep 28, 2005 at 04:56:09AM -0500, Berna Massingill wrote:
>>  > On FC2 (and earlier RedHat) systems, error messages from gcc seem
>>  > to have been straight ASCII.  On a couple of FC4 systems, output
>>  > includes some non-ASCII characters; specifically, the characters
>>  > used for single quotes (previous ` and ') have been replaced by
>>  > something multi-byte.  (I base this claim on redirecting stderr
>>  > into a file and then displaying file contents with "od -c".)
>>  > The sequence that replaces ' displays okay, but the sequence that
>>  > replaces ` does not (appears as boldface u with umlaut).
>>  > 
>>  > My guess is that there's an environment variable somewhere that's
>>  > not getting set quite right; the man page for gcc seems to be
>>  > indicating that what gets produced for error messages is controlled
>>  > by environment variables LANG and LC_MESSAGES.  LC_MESSAGES is unset;
>>  > LANG is set to en_US.UTF-8.
>>  
>>  It is LC_CTYPE that tells the compiler what the display character set is.
>>  If LC_ALL nor LC_CTYPE is present in the environment, ctype defaults
>>  to $LANG (if set), otherwise to C.
>>  If your terminal can't display UTF-8 encoded characters, then I guess
>>  you shouldn't be using UTF-8 character set...
>>  
>>  Works just fine here in FC4 both on the console and in gnome-terminal.

(Sorry about the delay in responding; I wanted to check behavior on
a couple of different systems.)

Interesting ....  

I would have said "isn't a text console a text console, and they all
work the same way?" but apparently not -- on one system I use, I get
the weird symptom I describe, while on another I don't.  I guess it
does make a kind of sense given that the two systems have different
video hardware and presumably use different drivers.

Terminal emulations (gnome-terminal and xterm) seem to be fine on
both systems.

Setting LC_CTYPE=C on the badly-behaving system makes the annoying
symptom go away.  I would not have guessed from the description in
the gcc man page that this would have any effect on how error
messages are formatted.

Thanks for the help!

-- blm


[Index of Archives]     [Current Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]     [Fedora Docs]

  Powered by Linux