2014-12-04 69 views
16

下面的輸出可以在安裝的R由自制並沒有在我的OSX後獲得:安裝R後如何擺脫警告信息?

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. 

我找到現有question但解決方案並不爲我工作。我這樣做

  1. 打開終端
  2. 寫或粘貼:defaults write org.R-project.R force.LANG en_US.UTF-8
  3. 關閉終端
  4. 開始[R

和警告消息仍顯示。我想這在從R項目頁面使用軟件包安裝R時起作用。

在OSX中安裝R之後如何擺脫這些警告信息?

+0

@RichardScriven,我確定這是一個很好的建議,但我不太關注。我在終端上運行R.我的應用程序目錄中沒有應用程序。我知道從項目頁面安裝帶安裝程序包的R時有一個。 – 2014-12-04 17:35:48

+0

你說得對。我刪除了標籤。 – 2014-12-05 07:09:41

+0

我在Yosemite 10.10.1中沒有找到行「5: - - 」的同樣的錯誤,這些錯誤實際上可能與我說的重複的帖子不同:http://stackoverflow.com/questions/9689104/installing-r -on-mac-warning-messages-setting-lc-ctype-failed-using-c主題中可能存在相同的問題。我實際上安裝R沒有自制軟件,我得到同樣的問題,所以我建議刪除標題和正文中的Homebrew。 – 2015-01-25 20:48:38

回答

7

問題:未設置指示要使用的編碼的區域設置變量。要看到問題,在終端上使用locale,你可能會得到這樣的

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

LC_NUMERIC可能會或可能不會進行設置,但由於你的錯誤,其餘的要麼不設置或者設置爲R可以」使用。如果這些變量是空的,R將會抱怨。要解決此問題:

選項1:終端首選項轉到終端的首選項。在「高級」選項卡下,確保「文本編碼」設置爲「Unicode(UTF-8)」(或任何您需要的)。確保選中「啓動時設置語言環境變量」下面的複選框。除非您更改.bash_profile,.bashrc或.profile(取決於您的系統),否則取消選中它往往會將區域設置變量置爲未設置或「C」。這可能足以解決您的問題。如果不是:

選項2:來自R設置於從R裏面,

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

型......應設置所有變量R抱怨的設置。

方案3:從端子設定於從終端設置它們,類型

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

...這應該設置變量R抱怨的其餘部分。

檢查:在終端中,再次鍵入locale。你應該得到

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" 

重新啓動R,你應該設置。

+0

我做了你所做的一切,但沒有得到你所說的語言環境的輸出。我得到* LANG =; LC_COLLATE = 「C」; LC_CTYPE = 「的en_US.UTF-8」; LC_MESSAGES = 「C」; LC_MONETARY = 「C」; LC_NUMERIC = 「C」; LC_TIME = 「C」; LC_ALL = *;「其他選項? – 2015-01-28 08:32:01

+0

什麼時候可以得到?在手動設置變量à」Option 3「之後,但在重置之前,它應該看起來像」Check「區域設置,如果在重新啓動Terminal時重置,這是因爲終端的Prefs中的複選框沒有被選中,或者因爲你在.bash_profile,.bashrc或者.profle中有不同的啓動指令(在OS X上,它應該是.bash_profile)。OS X「Language &區域「prefpane(名稱因OS X版本而異)也會影響語言環境,但這聽起來不像這裏發生的情況 – alistaire 2015-01-29 18:43:52

2

有關alistaire的答案,我只改變了我的〜/上的LANG變量。配置文件:

export LANG=en_US.UTF-8

然後,重新啓動終端會話(或源〜/ .profile文件)和您去。

+0

您的過程不起作用,而是將命令插入到$ HOME/.bashrc中。看起來$ HOME/.profile不是在提示開始時自動採集的。 – 2015-01-29 16:31:21

+0

@Masi - 修改.profile後是否重新啓動系統? – Dason 2015-01-29 16:37:50

+0

@Dason No.我認爲這是錯誤。 – 2015-01-29 17:26:22

2

將以下到$ HOME/.bashrc中

export LANG=en_US.UTF-8 

看來,由於某種原因,在$ HOME/.profile文件中沒有啓動終端採購。

1

我打開系統首選項/語言和地區,並選擇美國作爲我的地區,所有警告消失。