2014-12-04 19 views
16

Die folgende Ausgabe kann nach der Installation von R von Homebrew und ohne in meinem OSX erhältlich:Wie werden Warnmeldungen nach der Installation von R gelöscht?

During startup - Warning messages: 
1: Setting LC_CTYPE failed, using "C" 
2: Setting LC_COLLATE failed, using "C" 
3: Setting LC_TIME failed, using "C" 
4: Setting LC_MESSAGES failed, using "C" 
5: Setting LC_MONETARY failed, using "C"   # this line is not occurring in OSX 10.10.1 Yosemite but other four are. 

Ich fand eine question bestehenden, aber die Lösung nicht für mich arbeiten. Ich mache das

  1. Open Terminal
  2. schreiben oder fügen Sie in: defaults write org.R-project.R force.LANG en_US.UTF-8
  3. Schließen Klemme
  4. starten R

und die Warnmeldungen noch angezeigt werden. Ich denke, das funktioniert bei der Installation von R mit dem Paket von der R-Projektseite.

Wie Sie diese Warnmeldungen nach der Installation von R in OSX loswerden?

+0

@RichardScriven, ich bin mir sicher, es ist ein großartiger Vorschlag, aber ich folge nicht ganz. Ich betreibe R in einem Terminal. In meinem Anwendungsverzeichnis befindet sich keine App. Ich weiß, dass es eines gibt, wenn man R mit Installer-Paket von der Projektseite installiert. –

+0

Sie haben Recht. Ich habe das Etikett entfernt. –

+0

Ich bekomme die gleichen Fehler ohne die Zeile "5: - -" in Yosemite 10.10.1, die sich tatsächlich wahrscheinlich von dem Post unterscheiden, den ich sagte, um zu duplizieren: http://stackoverflow.com/questions/9689104/installing-r -on-mac-warnmeldungen-setting-lc-ctype-failed-using-c In den Themen kann dasselbe Problem auftreten. Ich habe R ohne Homebrew installiert und bekomme das gleiche Problem, daher empfehle ich, Homebrew in Titel und Körper zu entfernen. –

Antwort

7

Problem: Gebietsschema-Variablen, die angeben, welche Codierung verwendet werden soll, sind nicht festgelegt. Um das Problem zu sehen, die im Terminal, Typ locale, und Sie wahrscheinlich so etwas wie

LANG= 
LC_COLLATE= 
LC_CTYPE= 
LC_MESSAGES= 
LC_MONETARY= 
LC_NUMERIC="en_US.UTF-8" 
LC_TIME= 
LC_ALL= 

LC_NUMERIC bekommen kann oder auch nicht eingestellt werden, aber Ihre Fehler gegeben, der Rest entweder nicht auf etwas R setzen oder einstellen‘ t verwenden. Wenn diese Variablen leer sind, wird sich R beschweren. So beheben Sie das Problem:

Option 1: Terminaleinstellungen Gehen Sie zu den Einstellungen des Terminals. Stellen Sie unter der Registerkarte "Erweitert" sicher, dass "Text Encoding" auf "Unicode (UTF-8)" (oder was auch immer Sie benötigen) festgelegt ist. Stellen Sie sicher, dass das Kontrollkästchen für "Gebietsschema-Umgebungsvariablen beim Start festlegen" aktiviert ist. Wenn Sie das Kontrollkästchen deaktivieren, werden die Gebietsschemavariablen oft nicht gesetzt oder als "C" angezeigt, es sei denn, Sie haben .bash_profile, .bashrc oder .profile (abhängig von Ihrem System) geändert. Das könnte ausreichen, um dein Problem zu beheben. Falls nicht:

Option 2: Stellen Sie von R So legen Sie sie aus dem Inneren von R, Typ

R> Sys.setenv(LANG="en_US.UTF-8") 
R> Sys.setenv(LC_ALL="en_US.UTF-8") 

..., die über alle Variablen R beschwert sich setzen soll.

Option 3: Stellen Sie vom Terminal Um sie vom Terminal gesetzt, Typ

export LANG=en_US.UTF-8 
export LC_ALL=en_US.UTF-8 

..., die den Rest der Variablen R etwa beschwert sich setzen soll.

Überprüfen: Geben Sie im Terminal erneut locale ein. Sie sollten erhalten

LANG="en_US.UTF-8" 
LC_COLLATE="en_US.UTF-8" 
LC_CTYPE="en_US.UTF-8" 
LC_MESSAGES="en_US.UTF-8" 
LC_MONETARY="en_US.UTF-8" 
LC_NUMERIC="en_US.UTF-8" 
LC_TIME="en_US.UTF-8" 
LC_ALL="en_US.UTF-8" 

Neustart R, und Sie sollten eingestellt werden.

+0

Ich habe alles wie Sie angewiesen, aber nicht bekommen die Ausgabe der Sprachumgebung, wie Sie sagen. Ich bekomme * LANG =; LC_COLLATE = "C"; LC_CTYPE = "en_US.UTF-8"; LC_MESSAGES = "C"; LC_MONETARY = "C"; LC_NUMERIC = "C"; LC_TIME = "C"; LC_ALL = *; "Jede andere Option? –

+0

Wann bekommen Sie das? Nach der manuellen Einstellung der Variablen à la" Option 3 ", aber vor dem Zurücksetzen, sollte es wie das Gebietsschema" Check "aussehen. Wenn es zurückgesetzt wird, wenn Sie Terminal neu starten, Entweder ist das Kontrollkästchen in den Prefs des Terminals nicht aktiviert, oder Sie haben andere Startanweisungen für bash in .bash_profile, .bashrc oder .profle (unter OS X sollte es .bash_profile sein.) Das OS X "Sprache & Region "Prepane (Name variiert je nach OS X-Version) kann sich auch auf das Gebietsschema auswirken, aber das klingt nicht nach dem, was hier passiert. – alistaire

2

Bezogen auf Alistair Antwort, änderte ich nur die LANG-Variable auf meinem ~ /.Profildatei:

export LANG=en_US.UTF-8

Dann starten Sie den Terminal-Session (source ~/.profile) und schon kann es losgehen.

+0

Ihre Prozedur funktioniert nicht. Ich habe stattdessen den Befehl in $ HOME/.bashrc eingefügt, der funktioniert. Es scheint, dass $ HOME/.profile nicht automatisch am Anfang der Eingabeaufruf Quelle: –

+0

@Masi - Haben Sie einen Systemneustart nach dem Ändern von. Profile? – Dason

+0

@Dason Nein. Ich denke, das ist der Fehler. –

2

Setzen Sie folgendes zu Ihrem $ HOME/.bashrc

export LANG=en_US.UTF-8 

Es scheint, dass aus irgendeinem Grund wird die $ HOME/.profile beim Starten der Terminal nicht gelesen.

1

Ich öffnete Systemeinstellungen/Sprache und Region und ausgewählte USA als meine Region, alle Warnungen sind verschwunden.

Verwandte Themen