SCM Repository

[ihelp] View of /www/manual/rw-FAQ-ko.html
ViewVC logotype

View of /www/manual/rw-FAQ-ko.html

Parent Directory Parent Directory | Revision Log Revision Log

Revision 1273 - (download) (as text) (annotate)
Sun Dec 28 00:38:42 2014 UTC (5 years, 6 months ago) by gnustats
File size: 113189 byte(s)
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "">
<!-- Created by GNU Texinfo 5.2, -->
<title>R for Windows FAQ (translated in Korean)</title>

<meta name="description" content="R for Windows FAQ (translated in Korean)">
<meta name="keywords" content="R for Windows FAQ (translated in Korean)">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="#Top" rel="start" title="Top">
<link href="#SEC_Contents" rel="contents" title="Table of Contents">
<link href="dir.html#Top" rel="up" title="(dir)">
<style type="text/css">
a.summary-letter {text-decoration: none}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.indentedblock {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
div.smalllisp {margin-left: 3.2em}
kbd {font-style:oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit} {font-family: serif} {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nocodebreak {white-space:nowrap}
span.nolinebreak {white-space:nowrap}
span.roman {font-family:serif; font-weight:normal}
span.sansserif {font-family:sans-serif; font-weight:normal} {list-style: none}
body {
    margin-left: 5%;
    margin-right: 5%;

h1 {             
    background: white;
    color: rgb(25%, 25%, 25%);
    font-family: monospace;
    font-size: xx-large;
    text-align: center;

h2 {
    background: white;
    color: rgb(40%, 40%, 40%);
    font-family: monospace;
    font-size: x-large;
    text-align: center;

h3 {
    background: white;
    color: rgb(40%, 40%, 40%);
    font-family: monospace;
    font-size: large;

h4 {
    background: white;
    color: rgb(40%, 40%, 40%);
    font-family: monospace;

span.samp {
    font-family: monospace;

span.command {
    font-family: monospace;

span.option {
    font-family: monospace;

span.file {
    font-family: monospace;

span.env {
    font-family: monospace;

ul {
    margin-top: 0.25ex;
    margin-bottom: 0.25ex;

li {
    margin-top: 0.25ex;
    margin-bottom: 0.25ex;

p {
    margin-top: 0.6ex;
    margin-bottom: 1.2ex;



<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
<h1 class="settitle" align="center">R for Windows FAQ (translated in Korean)</h1>

 <h2>Version for <tt>3.2.0 Under development (unstable)</tt></h2> 
<address>B. D. Ripley
and D. J. Murdoch</address> <hr>

<a name="SEC_Contents"></a>
<h2 class="contents-heading">Table of Contents</h2>

<div class="contents">
<ul class="no-bullet">
<li><a name="toc-Introduction-1" href="#Introduction">1 Introduction</a></li>
<li><a name="toc-Installation-and-Usage-1" href="#Installation-and-Usage">2 Installation and Usage</a>
<ul class="no-bullet">
  <li><a name="toc-i_0027eii-iue_002a1_002f4-e2i-1_002f4i-i_00b03_002f4i-i-iie1i_003f" href="#g_t_00ec_0096_00b4_00eb_0094_0094_00ec_0097_0090_00ec_0084_009c-_00ec_00b5_009c_00ea_00b7_00bc-_00eb_00b2_0084_00ec-_00bc_00ec_009d_0084-_00ec_00b0_00be_00ec_009d_0084-_00ec_0088_0098-_00ec_009e_0088_00ec_009d_0084_00ea_00b9_008c_00ec_009a_0094_003f">2.1 어디에서 최근 버젼을 찾을 수 있을까요?</a></li>
  <li><a name="toc-i_0027e_00bbe2-iei_00b0ii-Ri-i_0024_003fi1i-i-iei_003f" href="#g_t_00ec_0096_00b4_00eb_0096_00bb_00ea_00b2_008c-_00ec_009c_0088_00eb_008f_0084_00ec_009a_00b0_00ec_0097_0090_00ec_0084_009c-R_00ec_009d_0084-_00ec_0084_00a4_00ec_00b9_0098_00ed_0095-_00ec_0088_0098-_00ec_009e_0088_00eb_0082_0098_00ec_009a_0094_003f">2.2 어떻게 윈도우에서 R을 설치할 수 있나요?</a></li>
  <li><a name="toc-How-do-I-check-an-installation-is-not-corrupt_003f" href="#How-do-I-check-an-installation_003f">2.3 How do I check an installation is not corrupt?</a></li>
  <li><a name="toc-Can-I-customize-the-installation_003f-1" href="#Can-I-customize-the-installation_003f">2.4 Can I customize the installation?</a></li>
  <li><a name="toc-How-do-I-run-it_003f-1" href="#How-do-I-run-it_003f">2.5 How do I run it?</a></li>
  <li><a name="toc-Can-I-run-R-from-a-CD-or-USB-drive_003f-1" href="#Can-I-run-R-from-a-CD-or-USB-drive_003f">2.6 Can I run R from a CD or USB drive?</a></li>
  <li><a name="toc-How-do-I-UNinstall-R_003f-1" href="#How-do-I-UNinstall-R_003f">2.7 How do I UNinstall R?</a></li>
  <li><a name="toc-What_0027s-the-best-way-to-upgrade_003f-1" href="#What_0027s-the-best-way-to-upgrade_003f">2.8 What&rsquo;s the best way to upgrade?</a></li>
  <li><a name="toc-There-seems-to-be-a-limit-on-the-memory-it-uses_0021-1" href="#There-seems-to-be-a-limit-on-the-memory-it-uses_0021">2.9 There seems to be a limit on the memory it uses!</a></li>
  <li><a name="toc-How-can-I-keep-workspaces-for-different-projects-in-different-directories_003f-1" href="#How-can-I-keep-workspaces-for-different-projects-in-different-directories_003f">2.10 How can I keep workspaces for different projects in different directories?</a></li>
  <li><a name="toc-How-do-I-print-from-R_003f-1" href="#How-do-I-print-from-R_003f">2.11 How do I print from R?</a></li>
  <li><a name="toc-Can-I-use-R-CMD-BATCH_003f-1" href="#Can-I-use-R-CMD-BATCH_003f">2.12 Can I use <code>R CMD BATCH</code>?</a></li>
  <li><a name="toc-Can-I-use-3_002e2_002e0-Under-development-_0028unstable_0029-with-ESS-and-Emacs_003f-1" href="#Can-I-use-3_002e2_002e0-Under-development-_0028unstable_0029-with-ESS-and-Emacs_003f">2.13 Can I use 3.2.0 Under development (unstable) with ESS and Emacs?</a></li>
  <li><a name="toc-What-are-HOME-and-working-directories_003f-1" href="#What-are-HOME-and-working-directories_003f">2.14 What are HOME and working directories?</a></li>
  <li><a name="toc-How-do-I-set-environment-variables_003f-1" href="#How-do-I-set-environment-variables_003f">2.15 How do I set environment variables?</a></li>
  <li><a name="toc-R-can_0027t-find-my-file_002c-but-I-know-it-is-there_0021" href="#R-can_0027t-find-my-file">2.16 R can&rsquo;t find my file, but I know it is there!</a></li>
  <li><a name="toc-Does-R-use-the-Registry_003f-1" href="#Does-R-use-the-Registry_003f">2.17 Does R use the Registry?</a></li>
  <li><a name="toc-Does-R-support-automation-_0028OLE_002c-COM_0029_003f" href="#Does-R-support-automation_003f">2.18 Does R support automation (OLE, COM)?</a></li>
  <li><a name="toc-The-Internet-download-functions-fail_002e-1" href="#The-Internet-download-functions-fail_002e">2.19 The Internet download functions fail.</a></li>
  <li><a name="toc-Entering-certain-characters-crashes-Rgui_002e-1" href="#Entering-certain-characters-crashes-Rgui_002e">2.20 Entering certain characters crashes Rgui.</a></li>
  <li><a name="toc-What-does-_0027DLL-attempted-to-change-FPU-control-word_0027-mean_003f-1" href="#What-does-_0027DLL-attempted-to-change-FPU-control-word_0027-mean_003f">2.21 What does &rsquo;DLL attempted to change FPU control word&rsquo; mean?</a></li>
  <li><a name="toc-Other-strange-crashes_002e-1" href="#Other-strange-crashes_002e">2.22 Other strange crashes.</a></li>
  <li><a name="toc-Why-does-R-never-use-more-than-50_0025-of-my-CPU_003f-1" href="#Why-does-R-never-use-more-than-50_0025-of-my-CPU_003f">2.23 Why does R never use more than 50% of my CPU?</a></li>
  <li><a name="toc-Does-R-run-under-Windows-Vista_002f7_002f8_002fServer-2008_003f" href="#Does-R-run-under-Windows-Vista_003f">2.24 Does R run under Windows Vista/7/8/Server 2008?</a></li>
  <li><a name="toc-Quotes-don_0027t-come-out-right-on-the-console_002fterminal_002fpager_002e" href="#Quotes-don_0027t-come-out-right-on-the-console_002fterminal_002fpager">2.25 Quotes don&rsquo;t come out right on the console/terminal/pager.</a></li>
  <li><a name="toc-There-is-no-tilde-on-my-keyboard_0021" href="#There-is-no-tilde-on-my-keyboard">2.26 There is no tilde on my keyboard!</a></li>
  <li><a name="toc-Can-I-use-R-on-64_002dbit-Windows_003f-1" href="#Can-I-use-R-on-64_002dbit-Windows_003f">2.27 Can I use R on 64-bit Windows?</a></li>
  <li><a name="toc-Should-I-run-32_002dbit-or-64_002dbit-R_003f-1" href="#Should-I-run-32_002dbit-or-64_002dbit-R_003f">2.28 Should I run 32-bit or 64-bit R?</a></li>
  <li><a name="toc-Can-both-32_002d-and-64_002dbit-R-be-installed-on-the-same-machine_003f-1" href="#Can-both-32_002d-and-64_002dbit-R-be-installed-on-the-same-machine_003f">2.29 Can both 32- and 64-bit R be installed on the same machine?</a></li>
  <li><a name="toc-Rcmd-is-not-found-in-my-PATH_0021-1" href="#Rcmd-is-not-found-in-my-PATH_0021">2.30 Rcmd is not found in my PATH!</a></li>
<li><a name="toc-Languages-and-Internationalization-1" href="#Languages-and-Internationalization">3 Languages and Internationalization</a>
<ul class="no-bullet">
  <li><a name="toc-The-installer-does-not-offer-my-language_002e" href="#The-installer-does-not-offer-my-language">3.1 The installer does not offer my language.</a></li>
  <li><a name="toc-I-want-R-in-English-_0028and-not-in-French_002fChinese_002f_002e_002e_002e_0029_0021" href="#I-want-R-in-English_0021">3.2 I want R in English (and not in French/Chinese/...)!</a></li>
  <li><a name="toc-I-want-to-run-R-in-Chinese_002fJapanese_002fKorean_002e" href="#I-want-to-run-R-in-Chinese_002fJapanese_002fKorean">3.3 I want to run R in Chinese/Japanese/Korean.</a></li>
  <li><a name="toc-I-selected-English-for-installation-but-R-runs-in-Chinese_002e" href="#I-selected-English-for-installation-but-R-runs-in-Chinese">3.4 I selected English for installation but R runs in Chinese.</a></li>
  <li><a name="toc-I-would-like-to-be-able-to-use-Japanese-fonts_002e" href="#I-would-like-to-be-able-to-use-Japanese-fonts">3.5 I would like to be able to use Japanese fonts.</a></li>
  <li><a name="toc-I-don_0027t-see-characters-with-accents-at-the-R-console_002c-for-example-in-_003ftext_002e" href="#I-don_0027t-see-characters-with-accents-at-the-R-console">3.6 I don&rsquo;t see characters with accents at the R console, for example in ?text.</a></li>
  <li><a name="toc-The-dialog-buttons-are-not-translated_002e" href="#The-dialog-buttons-are-not-translated">3.7 The dialog buttons are not translated.</a></li>
<li><a name="toc-Packages-1" href="#Packages">4 Packages</a>
<ul class="no-bullet">
  <li><a name="toc-Can-I-install-packages-into-libraries-in-this-version_003f-1" href="#Can-I-install-packages-into-libraries-in-this-version_003f">4.1 Can I install packages into libraries in this version?</a></li>
  <li><a name="toc-I-don_0027t-have-permission-to-write-to-the-3_002e2_002e0-Under-development-_0028unstable_0029_005clibrary-directory_002e" href="#I-don_0027t-have-permission-to-write-to-the-3_002e2_002e0-Under-development-_0028unstable_0029_005clibrary-directory">4.2 I don&rsquo;t have permission to write to the <samp>3.2.0 Under development (unstable)\library</samp> directory.</a></li>
  <li><a name="toc-The-packages-I-installed-do-not-appear-in-the-HTML-help-system_002e" href="#The-packages-I-installed-do-not-appear-in-the-HTML-help-system">4.3 The packages I installed do not appear in the HTML help system.</a></li>
  <li><a name="toc-My-functions-are-not-found-by-the-HTML-help-search-system_002e-1" href="#My-functions-are-not-found-by-the-HTML-help-search-system_002e">4.4 My functions are not found by the HTML help search system.</a></li>
  <li><a name="toc-Loading-a-package-fails_002e-1" href="#Loading-a-package-fails_002e">4.5 Loading a package fails.</a></li>
  <li><a name="toc-Package-TclTk-does-not-work_002e-1" href="#Package-TclTk-does-not-work_002e">4.6 Package TclTk does not work.</a></li>
  <li><a name="toc-Hyperlinks-in-HTML-sometimes-do-not-work_002e" href="#Hyperlinks-in-HTML-do-not-work_002e">4.7 Hyperlinks in HTML sometimes do not work.</a></li>
  <li><a name="toc-update_002epackages_0028_0029-fails_002e" href="#update_002epackages_0028_0029-fails">4.8 <code>update.packages()</code> fails.</a></li>
  <li><a name="toc-How-do-I-add-to-the-list-of-repositories_003f-1" href="#How-do-I-add-to-the-list-of-repositories_003f">4.9 How do I add to the list of repositories?</a></li>
  <li><a name="toc-Help-is-not-shown-for-some-of-the-packages-1" href="#Help-is-not-shown-for-some-of-the-packages">4.10 Help is not shown for some of the packages</a></li>
  <li><a name="toc-How-do-I-get-static-HTML-pages_003f-1" href="#How-do-I-get-static-HTML-pages_003f">4.11 How do I get static HTML pages?</a></li>
  <li><a name="toc-How-can-I-get-a-binary-version-of-a-package_003f-1" href="#How-can-I-get-a-binary-version-of-a-package_003f">4.12 How can I get a binary version of a package?</a></li>
  <li><a name="toc-Package-xxx-is-out-of-date-for-Windows-1" href="#Package-xxx-is-out-of-date-for-Windows">4.13 Package xxx is out of date for Windows</a></li>
  <li><a name="toc-No-binary-packages-appear-to-be-available-for-my-version-of-R-1" href="#No-binary-packages-appear-to-be-available-for-my-version-of-R">4.14 No binary packages appear to be available for my version of R</a></li>
  <li><a name="toc-How-do-I-build-my-package-for-both-32_002d-and-64_002dbit-R_003f-1" href="#How-do-I-build-my-package-for-both-32_002d-and-64_002dbit-R_003f">4.15 How do I build my package for both 32- and 64-bit R?</a></li>
<li><a name="toc-Windows-Features-1" href="#Windows-Features">5 Windows Features</a>
<ul class="no-bullet">
  <li><a name="toc-What-should-I-expect-to-behave-differently-from-the-Unix-version-of-R_003f" href="#What-should-I-expect-to-behave-differently-from-the-Unix-version">5.1 What should I expect to behave differently from the Unix version of R?</a></li>
  <li><a name="toc-I-hear-about-some-nifty-features_003a-please-tell-me-about-them_0021" href="#I-hear-about-some-nifty-features_002e">5.2 I hear about some nifty features: please tell me about them!</a></li>
  <li><a name="toc-Circles-appear-as-ovals-on-screen_002e" href="#Circles-appear-as-ovals-on-screen">5.3 Circles appear as ovals on screen.</a></li>
  <li><a name="toc-How-do-I-move-focus-to-a-graphics-window-or-the-console_003f-1" href="#How-do-I-move-focus-to-a-graphics-window-or-the-console_003f">5.4 How do I move focus to a graphics window or the console?</a></li>
  <li><a name="toc-What-does-TAB-completion-do_003f-1" href="#What-does-TAB-completion-do_003f">5.5 What does TAB completion do?</a></li>
<li><a name="toc-Workspaces-1" href="#Workspaces">6 Workspaces</a>
<ul class="no-bullet">
  <li><a name="toc-My-workspace-gets-saved-in-a-strange-place_003a-how-do-I-stop-this_003f" href="#My-workspace-gets-saved-in-a-strange-place_002e-How-do-I-stop-this_003f">6.1 My workspace gets saved in a strange place: how do I stop this?</a></li>
  <li><a name="toc-How-do-I-store-my-workspace-in-a-different-place_003f-1" href="#How-do-I-store-my-workspace-in-a-different-place_003f">6.2 How do I store my workspace in a different place?</a></li>
  <li><a name="toc-Can-I-load-workspaces-saved-under-Unix_002fGNU_002dLinux-or-Mac-OS-X_003f" href="#Can-I-load-workspaces-saved-under-Unix_002fGNU_002dLinux-or-OS-X_003f">6.3 Can I load workspaces saved under Unix/GNU-Linux or Mac OS X?</a></li>
<li><a name="toc-The-R-Console-1" href="#The-R-Console">7 The R Console</a>
<ul class="no-bullet">
  <li><a name="toc-When-using-Rgui-the-output-to-the-console-seems-to-be-delayed_002e" href="#The-output-to-the-console-seems-to-be-delayed">7.1 When using Rgui the output to the console seems to be delayed.</a></li>
  <li><a name="toc-Long-lines-in-the-console-or-pager-are-truncated_002e" href="#Long-lines-seem-to-be-truncated_002e">7.2 Long lines in the console or pager are truncated.</a></li>
<li><a name="toc-Building-from-Source-1" href="#Building-from-Source">8 Building from Source</a>
<ul class="no-bullet">
  <li><a name="toc-How-can-I-compile-R-from-source_003f-1" href="#How-can-I-compile-R-from-source_003f">8.1 How can I compile R from source?</a></li>
  <li><a name="toc-Can-I-use-a-fast-BLAS_003f-1" href="#Can-I-use-a-fast-BLAS_003f">8.2 Can I use a fast BLAS?</a></li>
  <li><a name="toc-How-do-I-include-compiled-C-code_003f-1" href="#How-do-I-include-compiled-C-code_003f">8.3 How do I include compiled C code?</a></li>
  <li><a name="toc-How-do-I-debug-code-that-I-have-compiled-and-dyn_002eload_002ded_003f-1" href="#How-do-I-debug-code-that-I-have-compiled-and-dyn_002eload_002ded_003f">8.4 How do I debug code that I have compiled and dyn.load-ed?</a></li>
  <li><a name="toc-How-do-I-include-C_002b_002b-code_003f-1" href="#How-do-I-include-C_002b_002b-code_003f">8.5 How do I include C++ code?</a></li>
  <li><a name="toc-The-output-from-my-C-code-disappears_002e-Why_003f" href="#The-output-from-my-C-code-disappears_002e">8.6 The output from my C code disappears.  Why?</a></li>
  <li><a name="toc-The-output-from-my-Fortran-code-disappears_002e-Why_003f" href="#The-output-from-my-Fortran-code-disappears_002e">8.7 The output from my Fortran code disappears.  Why?</a></li>
  <li><a name="toc-The-console-freezes-when-my-compiled-code-is-running_002e" href="#The-console-freezes-when-my-compiled-code-is-running">8.8 The console freezes when my compiled code is running.</a></li>


<p><strong>NOTE</strong> from the maintainer Chel Hee Lee &lt;<a href=""></a>&gt;
<p>This translation is updated on a day-by-day basis (Sat Dec 27 17:32:42 CST 2014).  The initial work was done with R-2.12.0 (15-OCT-2010) by Chel Hee Lee.  The latest version is based on the Revision: 67242 (3.2.0 Under development (unstable)). 
<p>This work is a result of cumulative efforts made by the contributors listed in the below:
<li> Chel Hee Lee &lt;<a href=""></a>&gt;, University of Saskatchewan, Saskatoon, Saskatchewan, Canada, 2010&ndash;2014
</li><li> Heather Kim &lt;<a href=""></a>&gt;, University of Mantioba, Winnipeg, Manitoba, Canada, 2013

<p>To offer your help on this Korean translation, please visit the project page at <a href=""></a>

<a name="Top"></a>
<h1 class="node-heading">Top</h1>

<a name="Introduction"></a>
<a name="Introduction-1"></a>
<h2 class="chapter">1 Introduction</h2>

<p>This FAQ is for the Windows port of R: it describes features specific to
that version.  The main R FAQ can be found at
<div class="display">
<pre class="display"><a href=""></a>.

<p>본 FAQ는 윈도우 사용자를 위해서 작성되었습니다. 이 FAQ는 R의 Windows 포트를 위한 것 입니다. 이것은 버전에 대한 특징들을
설명합니다. 중 요한 R FAQ는 <a href=""></a>에서 찾을수
있습니다. 여기에 있는 정보는 Windows에 대한 최신버전(&lsquo;<samp>3.0.0</samp>&rsquo; 이상)의 R만을 지원합니다. 이것은 64bit
Windows 유저들에게편향되어집니다.

<a name="Installation-and-Usage"></a>
<a name="Installation-and-Usage-1"></a>
<h2 class="chapter">2 Installation and Usage</h2>

<a name="g_t_00ec_0096_00b4_00eb_0094_0094_00ec_0097_0090_00ec_0084_009c-_00ec_00b5_009c_00ea_00b7_00bc-_00eb_00b2_0084_00ec-_00bc_00ec_009d_0084-_00ec_00b0_00be_00ec_009d_0084-_00ec_0088_0098-_00ec_009e_0088_00ec_009d_0084_00ea_00b9_008c_00ec_009a_0094_003f"></a>
<a name="i_0027eii-iue_002a1_002f4-e2i-1_002f4i-i_00b03_002f4i-i-iie1i_003f"></a>
<h3 class="section">2.1 어디에서 최근 버젼을 찾을 수 있을까요?</h3>

<p>CRAN 사이트 ( <a href=""></a> )를 방분하셔서
<samp>bin/windows/base</samp> 디렉토리를 찾아보시기 바랍니다. 그곳에서 필요한 파일들을 찾으실 수 있습니다. 현재 배포된
버젼은 &lsquo;<samp>R-3.0.1-win.exe</samp>&rsquo; 으로써 약 52 MB의 용량입니다.
<p>앞서 언급한 사이트에서 가시면 &lsquo;<samp>r-patched</samp>&rsquo; 와 &lsquo;<samp>r-devel</samp>&rsquo; 의 스냅샷에 연결된 링크를 찾으실 수
있습니다. 이것은 자주 업데이트되는 R 개발 버젼 빌드 입니다. &lsquo;<samp>r-patched</samp>&rsquo; 빌드는 오류 해결에서 최근 버젼까지를
포함하고 있고 &lsquo;<samp>r-devel</samp>&rsquo;은 이런 업데이트 뿐만 아니라 차후의 &lsquo;<samp>x.y.0</samp>&rsquo; 로 배포되는 업데이트를 가지고
<a name="g_t_00ec_0096_00b4_00eb_0096_00bb_00ea_00b2_008c-_00ec_009c_0088_00eb_008f_0084_00ec_009a_00b0_00ec_0097_0090_00ec_0084_009c-R_00ec_009d_0084-_00ec_0084_00a4_00ec_00b9_0098_00ed_0095-_00ec_0088_0098-_00ec_009e_0088_00eb_0082_0098_00ec_009a_0094_003f"></a>
<a name="i_0027e_00bbe2-iei_00b0ii-Ri-i_0024_003fi1i-i-iei_003f"></a>
<h3 class="section">2.2 어떻게 윈도우에서 R을 설치할 수 있나요?</h3>

<p>현재 배포된 윈도위 XP 혹은 그 이후의 버젼에 (64비트 포함) 대해서는 이 곳의 링크를 확인하시기 바랍니다. (See <a href="#Can-I-use-R-on-64_002dbit-Windows_003f">Can I use R on 64-bit Windows?</a>.)  윈도우 2000을 위한 마지막 버젼은 2.12.2 이고 윈도우
95/98/ME/NT4를 지원하는 마지막 버젼은 2.6.1 입니다.

<p>여기에서는 마이크로소프트사가 지원하는 윈도우 버젼에 대해서는 테스트한 것임을 알려드립니다. 그것은 대체로 윈도우 7, 8 (64비트
버전), 윈도 XP (32 비트, SP3) 까지 입니다. 
<p>사용하시는 파일 체계가 대소문자를 구분하는 파일 이름을 지원해야합니다. (통상 네트워크 상에서 작동되는  몇몇의 시스템은 제외됩니다.)
설치에는 75-100MB의 디시크 공간이 필요합니다.
<p>만약 소스에서 패키지를 구현하고 싶다면 공백이 없는 설치 경로를 선택하시기를 추천해드립니다. (공백이 있는 설치 경로 역시도 정상적으로
작동할 수 있지만 충분하 테스트가 이루어지지 않았습니다.) 비스타/윈도우 7,8/서버 2008,2012 사용자의 경우에는 관리자 권한을
가진 사용자가 시스템이 설치되지 않는 경로에 <samp>C:/R</samp> 을 설치해야 합니다. 네트워크에서 공유되는 경로에 R 을 설치하는 것은
지원되고 있지 않습니다. 그러한 경우에는 반드시 네트워크 드라이버에 설치경로가 제한되어야 합니다. 
<p>설치하기 위해 &lsquo;<samp>3.0.0-win.exe</samp>&rsquo;를 사용하세요. 그 exe 파일을 더블클릭하고, 설명에 따라 진행하세요.만약 사용자가
Administrator preivileges 계정을 가지고 있다면, &rsquo;<samp>Program Files</samp>&rsquo;안에 R을 설치할수 있고,
모든 optional registry entries들을 설정할 수 있습니다. 그게 아니라면, 사용자는 오직 자신만의 파일 공간에 R을
설치 할 수 있습니다. 사용자는 어쩌면 &rsquo;unkbown&rsquo; 혹은 &rsquo;unidentified&rsquo; publisher로 부터의 프로그램을 설치하는
과정을 확인할 필요가 있습니다.
<p>설치이후에, 사용자는 R의 working directory를 선택해야만 합니다. &rsquo;<samp>Rgui.exe</samp>&rsquo;(바로가기)가 바탕화면,
스타트 메뉴 파일 트리, 혹은 taskbar의 퀵 런처파트(vista 와 이전 버전들)에 생성될 것 입니다. 각각의 바로가 기를 마우스
우클릭하고, properties선택, 그리고 &rsquo;start in&rsquo; 를 사용자의 working directory로 변경하십시오
<p>몇몇 시스템을 가진 사용자들은 두개의 바로가기를 갖게 될 것입니다. 하나는 starting R(<code>i386</code>) 라벨을 가진
32bit를 , 다른 하나(<code>R x64</code>)는 64bit를 위한 것 입니다. (see <a href="#Should-I-run-32_002dbit-or-64_002dbit-R_003f">Should I run 32-bit or 64-bit R?</a> 를 참고하십시오)
<p>사용자는 command line arguments를 Target Field의 마지막에 추가하고 싶을지도 모릅니다(any final
double quote와 공간에 의한 구분 이후에) 예를드면 다음과 같습니다 <code>--sdi
--max-mem-size=1G</code>. 사용자는 또한 Target field의 마직막에 변수 환경을 설정할수 있습니다. 예를 들면 for
example <code>R_LIBS=p:/myRlib</code> 입니다. 그리고 만약 사용자가 menus와 messages를 영문으로 등록하고
싶으면, <code>LANGUAGE=en</code>.
<p>MSI 파일(시스템 관리자들에게는 흥미로울 것입니다)을 이용하여 설치하는 것 또한 가능합니다. 어떻게 MSI 파일을 만드는지에 대해서는
&rsquo;R Installation and Administration Manual&rsquo;를 참고 하십시오.

<a name="How-do-I-check-an-installation_003f"></a>
<a name="How-do-I-check-an-installation-is-not-corrupt_003f"></a>
<h3 class="section">2.3 How do I check an installation is not corrupt?</h3>

<p>R 2.11.0에서 제거된 설치파일들과 관련되어 있습니다.
<a name="Can-I-customize-the-installation_003f"></a>
<a name="Can-I-customize-the-installation_003f-1"></a>
<h3 class="section">2.4 Can I customize the installation?</h3>

<p>사용자가 원하는 대로 설치하는 일반적인 방법은 installer 마법사로 부터 콤포넨트를 선택하는 것 입니다. 하지만 sysadmin들은
스크립트를 이용하여 R 설치하는 것을 좋아하고, installer의 사용은 following command-line flags를 이용할
수 있습니다.
<dl compact="compact">
<dd><p>오직 설치 과정 윈도우와 에러 메세지만을 보여줍니다.
<dd><p>오직 에러 메세지만 보여줍니다.
<dd><p>기본 설치 directory를 설정합니다
<dt>&lsquo;<samp>/GROUP=&quot;folder name&quot;</samp>&rsquo;</dt>
<dd><p>기본 Start-menu group name을 설정합니다
<dt>&lsquo;<samp>/COMPONENTS=&quot;comma separated list of component names&quot;</samp>&rsquo;</dt>
<dd><p>콤포넨트의 이니셜 리스트를 설정합니다. 콤포넨트들의 이름은 &lsquo;<samp>main</samp>&rsquo;, &lsquo;&lsquo;<samp>386</samp>&rsquo; , &lsquo;<samp>x64</samp>&rsquo;,
&lsquo;<samp>translations</samp>&rsquo; 입니다. 

<p>It is also possible to save the settings used to a file and later reload
those settings using
<dl compact="compact">
<dd><p>특정한 파일에 대한 설정을 저장합니다. 만약 파일이름에 공백이 있다면, quotes를 사용해 주시기 바랍니다.
<dd><p>command line을 확인한 이후,installer에게 특정한 파일로부터 설정들을 불러오도록 지시합니다.

<p>A successful installation has exit code 0: unsuccessful ones may give 1, 2,
3, 4 or 5.  See the help for Inno Setup
(<a href=""></a>) for details.
<p>저희는 사용자지정 installer 설계를 위한 설비들을 가지고 있습니다 (특별히 installer에 패키지 더하는
것). &rsquo;Building the installers&rsquo;안의 &rsquo;R Installation and Administration&rsquo; 메뉴얼을
<a name="How-do-I-run-it_003f"></a>
<a name="How-do-I-run-it_003f-1"></a>
<h3 class="section">2.5 How do I run it?</h3>

<p>사용자가 준비했었던 installation의 바로가기를 더블클릭하십시오. 
<p>만약 사용자가 다른 프로젝트를 셋업하기 원한다면, 새로운 바로가기를 만들거나, 혹은 이미 만들어진 것을 사용하시고, &rsquo;Start
in&rsquo;(field of the Properties) 를 변경하십시오.
<p>만약 사용자가 사용하는 shell의 command line으로 부터 R을 실행하기를 선호한다면, 사용하십시오. 예를 들면 &rsquo;Command
Prompt&rsquo;혹은 <code>tcsh</code>, <code>bash</code>와 같은 Unix shell의 포트를 사용하시면 됩니다.(
사용자는 cammand line에 자신이 원하는 어떠한 것이든 바로가기의 Target field안에 놓을 수
있습니다. directory를 시작하는 것은 현재 shell의 working dircetory 가 될 것 입니다)
<a name="Can-I-run-R-from-a-CD-or-USB-drive_003f"></a>
<a name="Can-I-run-R-from-a-CD-or-USB-drive_003f-1"></a>
<h3 class="section">2.6 Can I run R from a CD or USB drive?</h3>

<p>가능합니다. 기본적인 R installation 은 재배치 되어 질 수 있으며, 그로인해 사용자는 R installation 이미지를
하드디스크 혹은 외부 저장 기기(USB 메모리 등)에 구울 수 있습니다
<p>R 을 실행시키는 것은 쓰기가 가능한 일시적인 directory와 home directory에 대한 엑세스를 필요로 하고,and in
the last resort these are taken to be the current directory. 적절하게 환경설정된
윈도우즈의 버전을 문제가 없어야만 하지만, 만약 아니라면, 쓰기가능한 폴더안에 바로가기 생성하는것 없이는 R을 실행하는 것을 아마 불가능
할 것입니다.

<a name="How-do-I-UNinstall-R_003f"></a>
<a name="How-do-I-UNinstall-R_003f-1"></a>
<h3 class="section">2.7 How do I UNinstall R?</h3>

<p>일반적으로 사용자는 제어판 안의 &lsquo;<samp>Add/Remove Programs</samp>&rsquo;(XP)혹은 &lsquo;<samp>Programs and
Features</samp>&rsquo;(Vista/7)에서 이것을 할 수 있습니다. 만약 이것이 제어판에 나타나지 않는다면
&rsquo;<samp>unis000.exe</samp>를 top-level installation irectory 안에서 실행하십시오. 최신의 윈도우즈
버전들 위에서, 사용자는 &rsquo;unknown&rsquo; 혹은 &rsquo;unidentified&rsquo; publisher 로부터 그 프로그램은 실행 할 것인지에 대해
질문 받을것입니다
<p>Uninstalling R은 오직 첫번째로 설치된 파일들만 제거합니다. 이것은 사용자가 지금까지 설치하고 업데이트한 패키지들은 삭제하지
않는다는 말과 같습니다. 
<p>만약 모든 다른것들이 실패한다면, 사용자는 R이 설치된 whole directory를 삭제하십시오

<a name="What_0027s-the-best-way-to-upgrade_003f"></a>
<a name="What_0027s-the-best-way-to-upgrade_003f-1"></a>
<h3 class="section">2.8 What&rsquo;s the best way to upgrade?</h3>

<p>이것은 사람의 기호에 따라 다릅니다. 대부분의 사람들에게 최고의 방법은 R을 삭제한 후, 새로운 버전을 설치하고, 새롭게 설치된
library 폴더로 설치된 패키지들을 복사하는 것 입니다. 새로운 R의
<code>update.packages(checkBuilt=TRUE, ask=FALSE)</code>를 실행한 다음 이전에 설치되었던 것들을
삭제하십시오. 다양한 R 버전들은 계획적으로 평행적인 폴더에 설치되어질수 있고, 이로 인해 사용자는 오래된 버전들을 유지할 수 있습니다.
<p>For those with a personal library (folder <samp>R\win-library\<var>x.y</var></samp> of
your home directory, <samp>R\win64-library\<var>x.y</var></samp> on 64-bit builds), you
will need to update that too when the minor version of R changes (e.g.
from 3.0.2 to 3.1.0).  A simple way to do so is to copy (say)
<samp>R\win-library\3.0</samp> to <samp>R\win-library\3.1</samp> before running
<code>update.packages(checkBuilt=TRUE, ask=FALSE)</code>.

<a name="There-seems-to-be-a-limit-on-the-memory-it-uses_0021"></a>
<a name="There-seems-to-be-a-limit-on-the-memory-it-uses_0021-1"></a>
<h3 class="section">2.9 There seems to be a limit on the memory it uses!</h3>

<p>command-line flag <samp>--max-mem-size</samp> 혹은 환경 변수 <code>R_MAX_MEM_SIZE</code> 에
의해서 그 것은 설정되었습니다( see &lsquo;How do I install R for Windows?&rsquo;를 보십시오). 
<p>64 비트 R 에 대해서, 그 것은 RAM 용량 만큼은 기본값으로 합니다
<p>32비트 R에 대해서는, 실제 RAM의 양보다 적은 양이 기본값으로 설정되고, 프로세스에 대한 유저 가상메모리의 제한보다 0.5 GB
적습니다( 32비트 윈도우즈는 대부분 2GB를 사용합니다).
<p>메모리 사용 정보를 원하신 다면 <code>Memory</code> 와<code>?memory.size</code>사용하십시오 만약 가능하다면, 사용자는
실행되고있는 R session안의 <code>memory.limit</code>를 불러옴으로써 용량제한을 증가시킬수 있습니다
<p>32비트로 실행가능한 것들은 최고 32비트 윈도우버전들이 안정적으로 이용되어지는 프로세스 마다 user address space 의
3GB까지 지원합니다.(see
<a href=""></a>,
<a href=""></a>;
this is not enabled by default). <code>--max-mem-size</code>에 대한 기본설정들은 RAM 과
2.5GB 용량보다 작습니다.초기 64비트 윈도우 버전을 제외한 모든 버전들의 32비트 프로세스에 대한 user address
space는 4GB 이고, <code>--max-mem-size</code>에 대한 기본설정을 RAM과 3.5GB의 양보타 적습니다.

<a name="How-can-I-keep-workspaces-for-different-projects-in-different-directories_003f"></a>
<a name="How-can-I-keep-workspaces-for-different-projects-in-different-directories_003f-1"></a>
<h3 class="section">2.10 How can I keep workspaces for different projects in different directories?</h3>

<p>각각의 프로젝트에 대한 분활된 바로가기을 생성하십시오: Q2.5를 보십시오. 모든 R에 의해 이용되어지는 파일 경로들은 starting
directory와 연관됩니다. 그러므로, &rsquo;Start in&rsquo; 필드를 세팅하는 것은 자동적을 separate progect 들을
<p>다른 방법으로는, 사용자가 사용하기 원하는 프로젝트에 대한 directory안의 &rsquo;<samp>.Rdata</samp>&rsquo; file 클릭함으로써 R을
시작하거나, extension &rsquo;<samp>.RData</samp> 파일을 R 바로가기 위에 드래그 앤 드랍함으로써 R을 시작하십시오

<a name="How-do-I-print-from-R_003f"></a>
<a name="How-do-I-print-from-R_003f-1"></a>
<h3 class="section">2.11 How do I print from R?</h3>

<p>이것은 사용자가 어떤 것을 프린터하느냐에 의해서 달라집니다
<li> 사용자는 메뉴의 그래픽 윈도우를 통하거나 <code>dev.print</code>(with suitable arguments) 를 사용함으로써
프린트 할수있습니다(도움말 페이지를 보십시오: most likely <code>dev.print</code>(win.graph) will

</li><li> 사용자는 R 콘솔 혹은 &lsquo;<samp>File | Print</samp>&rsquo;에 의한 pager로 부터 프린트 할수있습니다.(만약 하나만 있다면,이것은
selection 을 프린트할 것입니다. 만약 아니라면, 전체 콘솔 혹은 pager contents 프린트 합니다).

</li><li> 사용자는 pager 나 HTML 브라우저 로 부터 help 파일들을 프리트 할 수 있습니다.

</li><li> 만약 사용자가 설치된 LaTeX와 PostScript 혹은 PDF 프린팅 시스템를 가지고 있다면, <code>help(fn_name,
help_type=&quot;postscript&quot;) (or &quot;PDF&quot;)</code>에 의해서 도움 파일은 프린트 할수 있습니다.

<a name="Can-I-use-R-CMD-BATCH_003f"></a>
<a name="Can-I-use-R-CMD-BATCH_003f-1"></a>
<h3 class="section">2.12 Can I use <code>R CMD BATCH</code>?</h3>

<p>할수있습니다. 모든 세부사항을 보려면R <code>CMD BATCH --help</code> or <code>?BATCH</code> 를 사용하십시오. 
<p>사용자는 <code>Rterm.exe</code>를 사용하면 batch 파일을 설정 할 수있습니다. batch 파일 샘플은 포함할지도
<div class="example">
<pre class="example">path_to_R\bin\x64\Rterm.exe --no-restore --no-save &lt; %1 &gt; %1.out 2&gt;&amp;1

<p>The purpose of <code>2&gt;&amp;1</code> is to redirect warnings and errors to the same
file as normal output.

<a name="Can-I-use-3_002e2_002e0-Under-development-_0028unstable_0029-with-ESS-and-Emacs_003f"></a>
<a name="Can-I-use-3_002e2_002e0-Under-development-_0028unstable_0029-with-ESS-and-Emacs_003f-1"></a>
<h3 class="section">2.13 Can I use 3.2.0 Under development (unstable) with ESS and Emacs?</h3>

<p>가능합니다. ESS는 윈도우 운영체제에 대한 R LTS(long time supported R)을 가지고 있습니다.
<p>이것은 콘솔없이 <code>Rterm.exe</code>를 통해서 실행됩니다. ESS에 대한 도움말을 위해서 R mailing lists가 아닌
<a href=""></a>로 이메일 하시기 바랍니다.

<a name="What-are-HOME-and-working-directories_003f"></a>
<a name="What-are-HOME-and-working-directories_003f-1"></a>
<h3 class="section">2.14 What are HOME and working directories?</h3>

<p>documentation안의 명명 장소들은 이것들과 같은 용어(HOME, working directories)들을 사용합니다.
<p>working directory는 <code>Rgui</code> 혹은 <code>Rterm</code>이 런치된 directory 입니다( 바로가기 설정의
&rsquo;Start in&rsquo; 필드에 의해서 그것이 주어졌을 때, 바로가기를 사용하지 않는다면). 사용자는 <code>getwd()</code>코드를
사용함으로써 이것을 찾아낼 수 있습니다.
<p>home directory는 다음과 같이 설정되어 있습니다 : 만약, environment variable <code>R_USER</code>가
설정되어 있다면, 그 것의 값들은 사용되어집니다. environment variable <code>HOME</code>으로 설정되어 있지만 않다면,
그 것의 값은 사용되어집니다. 이러한 두 user-controllable 설정을 한 이후, R은 home directories들로 정의된
시스템 찾기를 시작합니다. 그 것을 먼저 윈도우즈 &quot;personal&quot; directory(일반적으로 윈도우즈 XP의 directory는
<samp>C:\Documents and Settings\username\My Documents</samp> 이고, 윈도우즈 vista와 7의
diretory는 <samp>C:\Users\username\Documents 입니다</samp>) 사용을 시도합니다. 만약 이것이 실패했을때, 두
environment variables <code>HOMEDRIVE</code>, <code>HOMEPATH</code>가 설정되어있기만 한다면, 그 값은
<samp>${HOMEDRIVE}${HOMEPATH}</samp>입니다. 위의 모든것들이 실패했다면, 현제 working directory가
<p>사용자는 R 코드 <code>Sys.getenv(&quot;R_USER&quot;)</code> 혹은 <code>normalizePath(&quot;~&quot;)</code>를 이용하여 이것을
찾을수 있습니다. home directory에 대하여 &lsquo;<samp>~</samp>&rsquo;는 Unix notation 입니다.
<a name="How-do-I-set-environment-variables_003f"></a>
<a name="How-do-I-set-environment-variables_003f-1"></a>
<h3 class="section">2.15 How do I set environment variables?</h3>

<p><code>Rgui.exe</code>와 <code>Rterm.exe</code>에 대한 환경변수는 세가지 다른 방법들을 통해 설정될 수 있습니다
<li> On the command line as name=value pairs.  For example in the shortcut to
<code>Rgui</code> you could have

<div class="example">
<pre class="example">&quot;path_to_R\bin\x64\Rgui.exe&quot; HOME=p:/ R_LIBS=p:/myRlib

</li><li> In an environment file <samp>.Renviron</samp> in the working directory or in your
home directory, for example containing the line

<div class="example">
<pre class="example">R_LIBS=p:/myRlib

<p>만약 사용자가 이것을 하기 위한 permission을 가지고 있다면, environment file
&rsquo;<samp>etc/</samp>를 생성할 수 있고, 그 파일 안의 환경변수들도 같은 방법으로 설정할 수 있다. 이 것은
모든 유저에 대한 설정과 R installation를 위한 변수들에 대해 유용합니다. 그것들에 값들은
&rsquo;<samp>.Renviron</samp>&rsquo;파일 혹은 command line에서 중단 될 수 있다.
<p>environment 파일들에 대한 세부 정보들은 <code>?Startup</code>에서 볼수 있습니다.
</li><li> XP/server 2003 에서의 사용자는 제어판 혹은 내컴퓨터 설정에서 System을 사용할 수 있습니다. Vista/7/Server
2008에서는 제어판 안의 &rsquo;User Accounts&rsquo;로 가서, 사용자의 계정을 선택한 다음, change my environment
variables 를 선택하십시오. 

<p>환경 변수에 대한 우선 순위는 옵션(이것은 command line입니다)들이 나열되어 있는 순서입니다. comman line 다음에
&rsquo;<samp>.Renviron</samp>&rsquo;, 그 다음 inherited environment 등의 순서입니다.

<a name="R-can_0027t-find-my-file"></a>
<a name="R-can_0027t-find-my-file_002c-but-I-know-it-is-there_0021"></a>
<h3 class="section">2.16 R can&rsquo;t find my file, but I know it is there!</h3>

<p>사용자는 어떻게 그것을 구체적으로 명시하나요? 두개의 Backslashe가 R character strings에 있어야합니다. 그래서
예를 들면 하나는 &lsquo;<samp>&quot;d:\R-2.15.0\library\xgobi\scripts\xgobi.bat&quot;</samp>&rsquo;을 필요로
합니다. 사용자는 앞의 슬래쉬들을 path separators로 사용합으로써 보다 쉽게 작업할 수 있습니다. 그들을 윈도우 운영체제에서
작동됩니다. 사용자는 file extension(예를 들면, 그냥 &lsquo;<samp>xgobi</samp>&rsquo; 보다는 &lsquo;<samp>xgobi.bat</samp>&rsquo;이
좋습니다)을 포함해야만 합니다. 어쩌다가 이것은 윈도우즈 익스플로러에서 볼수 없을수도 있지만, R은 이것을 필요로 합니다.
<p>이러한 문제점들을 피하기 위한 간단한 방법으로는 standard Windows file selection dialog 를 실행하기 위한
function, <code>file.choose()</code>를 사용하십시오. 만약 사용자가 저곳에 있는 파일 하나를 선택하였다면, 그 이름은
R이 요구하는 정확한 포맷이 될것입니다.
<p>또 다른 문제점으로는 폴더이름의 공간입니다. 우리는 R이 space를 가진 paths에서 실행하는 것을 시도해오고 있지만, Unix의
패키지를 작성하는 많은 사람들을 우리의 노력을 신경쓰지 않습니다. 그러므로, 대체 가능한 짧은 이름과 R 코드인 function
<code>shortPathName</code>을 사용하는 것은 의미있습니다. 짧은 이름의 예로는 &lsquo;<samp>PROGRA~1</samp>&rsquo; 있습니다. 사용자는
이것을 &rsquo;MS-DOS name&rsquo;으로써 몇몇 버전의 윈도우즈에 있는 파일의 Properties와 &lsquo;<samp>Command Prompt</samp>&rsquo;
창의 <code>dir /X</code>으로부터 얻을수 있습니다. 

<a name="Does-R-use-the-Registry_003f"></a>
<a name="Does-R-use-the-Registry_003f-1"></a>
<h3 class="section">2.17 Does R use the Registry?</h3>

<p>R 자신혼자 실행되고 있을때는 Registry를 사용하진 않습니다.
<p>사용자가 R installer를 실행 시킬때, &lsquo;<samp>Select Additional Tasks</samp>&rsquo; 아래 &lsquo;<samp>Save
version number in registry</samp>&rsquo;와 &lsquo;<samp>Associate R with .RData files</samp>&rsquo; 있습니다.
<p>만약 사용자가 첫번째 옵션을 선택한다면, 이후의 string entries들을 Windows registry 에 더해집니다.
<li> <code>HKEY_LOCAL_MACHINE\Software\R-core\R\Current Version</code>
    은 현재버전의 currently 3.2.0 Under development (unstable)을 포함하고 있습니다.
</li><li> <code>HKEY_LOCAL_MACHINE\Software\R-core\R\[version]\InstallPath</code>
    (where <code>[version]</code> is currently 3.2.0 Under development (unstable))은 R
home directory의 경로를 포함합니다.
<p>만약, 사용자가 installer를 실행하고 있는 동안 관리자 권한을 가지고 있지 않다면, entries는
<code>HKEY_CURRENT_USER</code>에 생성됩 니다. 동일한 entries는 32 와 64 비트 R 각각
<code>Software\R-core\R32</code> 혹은 <code>Software\R-core\R64</code>에 생성됩니다.
<p>만약 두번째 옵션을 (shown with administrative privileges only) (&lsquo;<samp>Associate R
with .RData files</samp>&rsquo;)을 체크표시 했다면, entries들은 <code>HKEY_CLASSES_ROOT\.RData</code> 와
<code>HKEY_CLASSES_ROOT\RWorkspace</code>에 생성됩니다.
<p>사용자는 installation 이후에 sub-folder(<code>bin</code> 폴더안의)에 있는 <code>RSetReg.exe</code>를
실행함으로써 Registry entries들을 추가할수 있고, argument <code>/U</code>를 실행함으로 제거할 수 있습니다. 중요한
것은 만약 argument <code>Personal</code>과 함께 실행하지 않거나, file associations을 제거혹은 설정하지만
않는 다면, 이것은 관리자 권한을 요구한다는 것입니다.

<a name="Does-R-support-automation_003f"></a>
<a name="Does-R-support-automation-_0028OLE_002c-COM_0029_003f"></a>
<h3 class="section">2.18 Does R support automation (OLE, COM)?</h3>

<p>지원하지 않습니다. <a href=""></a>에서 CRAN packages <code>rscproxy</code>와
<code>rcom</code> 뿐만 아니라 <code>RDCOMClient</code>, <code>RDCOMEvents</code> 와
<code>SWinTypeLibs</code>를 보십시오

<a name="The-Internet-download-functions-fail_002e"></a>
<a name="The-Internet-download-functions-fail_002e-1"></a>
<h3 class="section">2.19 The Internet download functions fail.</h3>

<p>예를 들면, <code>update.packages()</code>와 packages menu위의 menu items 등이 있습니다.
<p>그들이 우리의 <em>모든 기계들</em>을 위해 일함에도 불구하고, 우리는 대한 몇개의 보고서들을 가지고 있습니다. 다음은 두개의 가능한
<p>(a) R을 the flag <samp>--internet2</samp>(see &lsquo;How do I install R for
Windows?&rsquo;.)함께 실행하거나 혹은 <code>setInternet2(TRUE)</code>를 불러와서, 혹은
<code>R_WIN_INTERNET2</code>을 non-empty value 로 지정해서 대체 가능한 &rsquo;<samp>internet2.dll</samp>&rsquo;을
사용하십시오. 이것들은 R이 인터넷 익스플로러를 internals를 사용하게 합니다. Internet Explorer internals은
이미 프록시와 함께 사용되도록 설정되어 있을지도 모릅니다. 여기서 중요한 점은, 권한이 필요한 프록시와는 실행되지 않습니다.
<p>(b) 프록시는 설정해주 어야지만 사용할수 있습니다. <code>?download.file</code>을 보십시오. 여기 바로가기에 있는
command-line에 대한 예들의 두가지 버전 있습니다.
<div class="example">
<pre class="example">&quot;path_to_R\bin\x64\Rgui.exe&quot; http_proxy=http://user:pass@gannet:80/

&quot;path_to_R\bin\x64\Rgui.exe&quot; http_proxy=http://gannet/ http_proxy_user=ask

<p>두번째 버전은 HTTP downloads가 처음으로 실행 될 때, 사용자가 프록시 유저네임과 비밀번호를 갖도록 유도합니다.
<p>다른 가능성들은 방화벽 설정이 R executables를 contacting과 인터넷으로 부터 차단을 할 수 있다는 것입니다. 하지만,
이것은 방화벽 프로그램으로부터 비공식적인 에러 메시지를 발생시킵니다.

<a name="Entering-certain-characters-crashes-Rgui_002e"></a>
<a name="Entering-certain-characters-crashes-Rgui_002e-1"></a>
<h3 class="section">2.20 Entering certain characters crashes Rgui.</h3>

<p>This has not been reported for a few years, but used to happen regularly.
All the occurrences we have solved have been traced to faulty versions of
&lsquo;<samp>msvcrt.dll</samp>&rsquo;: we have installed a workaround that seems to avoid this.
A few other people have discovered this was caused by desktop switcher and
keyboard macro programs, for example &lsquo;Macro Magic&rsquo; and &lsquo;JS Pager&rsquo;.
<a name="What-does-_0027DLL-attempted-to-change-FPU-control-word_0027-mean_003f"></a>
<a name="What-does-_0027DLL-attempted-to-change-FPU-control-word_0027-mean_003f-1"></a>
<h3 class="section">2.21 What does &rsquo;DLL attempted to change FPU control word&rsquo; mean?</h3>

<p>This is a <em>warning</em> which indicates that R has taken action to correct
the action of some (non-R) DLL which has just been loaded and has changed
the floating point control word (in its initialization code)  to a setting
incompatible with that needed for R.  This is not good practice on the part
of the DLL, and often indicates that it needs to be updated.
<p>Unfortunately, because DLLs may themselves load other DLLs it is not
possible for R to track which DLL caused the problem.
<p>See also <code>?dyn.load</code>.
<a name="Other-strange-crashes_002e"></a>
<a name="Other-strange-crashes_002e-1"></a>
<h3 class="section">2.22 Other strange crashes.</h3>

<p>Some users have found that <code>Rgui.exe</code> fails to start, exiting with a
&ldquo;Floating-point invalid operation&rdquo; or other low level error.  This error
may also happen in the middle of a session.  In some cases where we have
tracked this down, it was due to bugs in the video driver on the system in
question: it makes changes to the floating point control word which are
incompatible with R.  (Good practice would restore the control word to the
state it was in when the driver code was called, and R tries hard to correct
this before running its own code.)  For example, one user reported that the
virtual screen manager JSP2 caused this crash.
<p>These errors are essentially impossible for us to fix or work around beyond
the measures already taken.  The only solution we know of is for the user to
replace the buggy system component that is causing the error.

<a name="Why-does-R-never-use-more-than-50_0025-of-my-CPU_003f"></a>
<a name="Why-does-R-never-use-more-than-50_0025-of-my-CPU_003f-1"></a>
<h3 class="section">2.23 Why does R never use more than 50% of my CPU?</h3>

<p>This is a misreading of Windows&rsquo; confusing Task Manager.  R&rsquo;s computation is
single-threaded, and so it cannot use more than one CPU.  What the task
manager shows is not the usage in CPUs but the usage as a percentage of the
apparent total number of CPUs.  We say &lsquo;apparent&rsquo; as it treats so-called
&lsquo;hyper-threaded&rsquo; CPUs such as two CPUs per core, and most modern CPUs have
at least two cores.
<p>You can see how many &lsquo;CPU&rsquo;s are assumed by looking at the number of graphs
of &lsquo;CPU Usage History&rsquo; on the &lsquo;Performance&rsquo; tab of the Windows Task manager.

<a name="Does-R-run-under-Windows-Vista_003f"></a>
<a name="Does-R-run-under-Windows-Vista_002f7_002f8_002fServer-2008_003f"></a>
<h3 class="section">2.24 Does R run under Windows Vista/7/8/Server 2008?</h3>

<p>It does.  A few issues have been reported that are related to the way
accounts and file permissions work.  (These are not specifically R issues,
but changes in user experiences.)
<p>Earlier versions of Windows had user and Administrator accounts, and user
accounts could be give administrative privileges (by being added to the
local Administrators group) and so write permission over system areas such
as <samp>c:\Program Files</samp>.  R would be installed either by a user in his
own file space or by an account with administrator privileges into a system
area.  Sysadmins could set policies for user accounts, and you might for
example have needed to be a &lsquo;Power User&rsquo; to install software at all.
<p>Vista and later normally disable the Administrator account and expect
software installation to be done by an account which is in the local
Administrator group with &lsquo;admin approval mode&rsquo; turned on.  (The
Administrator account by default has it turned off.)  Unlike (say)  Windows
XP, such accounts do not run programs with full administrator privileges,
and this is where the issues arise.  (For background information consult
<a href=""></a>.)
These OSes have the concept of &lsquo;over-the-shoulder&rsquo; credentials: if you are
running without full administrator privileges and do something which needs
them you may be prompted with one or more security-check dialog boxes, and
may be required to provide administrator credentials or confirm that you
really want to take that action.
<p>Vista and later will report that the R installer has an &lsquo;unidentified
publisher&rsquo; or &lsquo;unknown publisher&rsquo; and ask if it should be run.  System
administrators can disable installing applications from non-trusted sources,
in which case you will have to persuade them that R is trustworthy, or
digitally sign the R installer yourself, or (unless this is also disabled)
run the installer from a standard account and install into your own file
area.  (The same issues apply to the <samp>.msi</samp> version of the installer.)
<p>If you install R as a standard user into your own file space and use it
under the same account, there are no known permission issues.
<p>If you use the default Administrator account (without &lsquo;admin approval mode&rsquo;
being turned on) and install/update packages (in the system area or
elsewhere), no issues are known.
<p>If you use an account in the local Administrators group in &lsquo;admin approval
mode&rsquo; (which is the intended norm under these OSes), installation will make
use of &lsquo;over-the-shoulder&rsquo; credentials.  You will run into problems if you
try installing (including updating) packages in the main R library.  (It
would be nice if at that point R could use over-the-shoulder credentials,
but they apply to processes as a whole.  Vista and later disallow creating
<code>.dll</code> files in the system area without credentials.)  There are
several ways around this.
<li> Run R with Administrator privileges in sessions where you want to install
packages.  (Do so by right-clicking on the R shortcut and selecting &rsquo;Run as

</li><li> Transfer ownership of the R installation to the user which installed R.  To
do so, use the security tab on the &lsquo;<samp>Properties</samp>&rsquo; of the top-level R
folder and give &lsquo;Full Control&rsquo; over this directory to the user (not just the
Administrator group).

</li><li> Install packages into a different library tree owned by the account used to
install R.

<p>For an installation to be used by a single user, the simplest way is to make
use of a &lsquo;personal library&rsquo;: See <a href="#I-don_0027t-have-permission-to-write-to-the-3_002e2_002e0-Under-development-_0028unstable_0029_005clibrary-directory">I don't have permission to write to the 3.2.0 Under development (unstable)\library directory</a>.
<p>For a site installation, you can create a site-wide library directory
anywhere convenient, and add it to the default package search path for all
users via <code>R_LIBS_SITE</code> in <samp>etc\</samp>.  See <a href="#What-are-HOME-and-working-directories_003f">What are HOME and working directories?</a>.  There is a standard location for a site
library, the <samp>site-library</samp> directory in the top-level R folder (which
you would need to create with full control for the R installation account).
This will be used for installation in preference to the main library folder
if it exists.
<p>This approach will not allow you to update the recommended packages unless
you &lsquo;Run as administrator&rsquo;: we suggest you use an R session running under
Administrator privileges when updating those.

<p>Another issue with Vista was that the standard POSIX ways that R uses
(e.g. in <code></code> and <code>file.access</code>) to look at file
permissions no longer work reliably.  <code>file.access</code> was re-written to
work with Windows NT-based security and the new version seems much more
reliable with these OSes (but still not 100% correct).
<p>On suitably recent hardware Vista and later can prevent the execution of
code from data areas via &lsquo;Data Execution Prevention&rsquo; (from a tab in System
Properties -&gt; Advanced -&gt; Performance), and sysadmins can turn this on for
all programs.  R runs correctly with DEP enabled.

<a name="Quotes-don_0027t-come-out-right-on-the-console_002fterminal_002fpager"></a>
<a name="Quotes-don_0027t-come-out-right-on-the-console_002fterminal_002fpager_002e"></a>
<h3 class="section">2.25 Quotes don&rsquo;t come out right on the console/terminal/pager.</h3>

<p>R may make use of directional quotes that are not always rendered correctly
by Windows: these are used by default only by <code>Rgui</code> in suitable
locales (not Chinese/Japanese/Korean).
<p>Whether these are used in R output (from functions <code>sQuote</code> and
<code>dQuote</code>) is controlled by <code>getOption(&quot;useFancyQuotes&quot;)</code> whose
default is <code>FALSE</code> except for the <code>Rgui</code> console.  There are two
potential problems with rendering directional quotes.  The first is with
running <code>Rterm</code>: in European locales the &lsquo;Windows Command Prompt&rsquo; is by
default set up to use MS-DOS and not Windows default encodings: this can be
changed via <code>chcp</code>, with <code>chcp 1252</code> being appropriate for
Western European (including English)  locales.  The other is that the
default raster fonts only include directional single quotes and not
directional double quotes (which will probably be rendered as a filled
<p>Directional quotes will also be used in text help which is normally
displayed in R&rsquo;s internal pager: these may not be rendered correctly in an
external pager.  They are also used in HTML help, where most browsers use
fonts which render them correctly.
<p>The font used can affect whether quotes are rendered correctly.  The default
font in the <code>Rgui</code> console and internal pager is <code>Courier New</code>,
which has directional quotes on all the systems we tried.  <code>Lucida
Console</code> has elegant glyphs for directional quotes (but seems rather light
unless ClearType is in use): <code>Consolas</code> is another font which we often
select when ClearType is in use.  Non-TrueType fonts such as <code>Courier</code>
and <code>FixedSys</code> lack directional double quotes on all the systems we
<p>There is a related problem with using <code>Sweave</code> output in <code>Rgui</code>,
for LaTeX needs to be told about the encoding of directional quotes by
including in the LaTeX preamble e.g. (for a Western European locale)
<div class="example">
<pre class="example">\usepackage[cp1252]{inputenc}

<p>or their use suppressed by <code>options(useFancyQuotes=FALSE)</code>.
<a name="There-is-no-tilde-on-my-keyboard"></a>
<a name="There-is-no-tilde-on-my-keyboard_0021"></a>
<h3 class="section">2.26 There is no tilde on my keyboard!</h3>

<p>Where tilde does not appear on the main keyboard, it can normally be
accessed by pressing AltGr (the right Alt key) plus some other key.  This is
<code>]</code> in Canadian (multilingual), German and Scandinavian layouts,
<code>1</code> in Eastern Europe, <code>[</code> in Portuguese, <code>4</code> or <code>5</code> in
Spanish, <code>/</code> in Francophone Belgian, and so on.  For some keyboards the
uses of AltGr are at
<a href=""></a>: you
can explore those for your keyboard via the &lsquo;On-Screen Keyboard&rsquo; (under Ease
of access on Windows 7).
<p>On all Windows versions you should be able to get tilde by holding the down
the left Alt key and typing 0126 on the numeric keypad (if you have one),
then releasing the Alt key.
<a name="Can-I-use-R-on-64_002dbit-Windows_003f"></a>
<a name="Can-I-use-R-on-64_002dbit-Windows_003f-1"></a>
<h3 class="section">2.27 Can I use R on 64-bit Windows?</h3>

<p>The 32-bit build of R for Windows will run on both 32-bit and
64-bit<a name="DOCF1" href="#FOOT1"><sup>1</sup></a> versions of Windows.  64-bit versions of
Windows run 32-bit executables under the WOW (Windows on Windows) subsystem:
they run in almost exactly the same way as on a 32-bit version of Windows,
except that the address limit for the R process is 4GB (rather than 2GB or
perhaps 3GB).
<p>When R is installed on 64-bit Windows there is the option of installing 32-
and/or 64-bit builds: the default is to install both. If you are using the
32-bit build, replace &lsquo;<samp>x64</samp>&rsquo; by &lsquo;<samp>i386</samp>&rsquo; in the examples in this FAQ.
<a name="Should-I-run-32_002dbit-or-64_002dbit-R_003f"></a>
<a name="Should-I-run-32_002dbit-or-64_002dbit-R_003f-1"></a>
<h3 class="section">2.28 Should I run 32-bit or 64-bit R?</h3>

<p>Obviously, only relevant if you are using 64-bit Windows.
<p>For most users we would recommend using the &lsquo;native&rsquo; build, that is the
32-bit version on 32-bit Windows and the 64-bit version of 64-bit Windows.
<p>The advantage of a native 64-bit application is that it gets a 64-bit
address space and hence can address far more than 4GB (how much depends on
the version of Windows, but in principle 8TB).  This allows a single process
to take advantage of more than 4GB of RAM (if available) and for R&rsquo;s memory
manager to more easily handle large objects (in particular those of 1GB or
more).  The disadvantages are that all the pointers are 8 rather than 4
bytes and so small objects are larger and more data has to be moved around,
and that less external software is available for 64-bit versions of the
OS. The 64-bit compilers are able to take advantage of extra features of all
x86-64 chips (more registers, SSE2/3 instructions, &hellip;) and so the code
may run faster despite using larger pointers.  The 64-bit build is nowadays
usually slightly faster than the 32-bit build on a recent CPU (Intel Core 2
or later or AMD equivalent).
<p>For advanced users the choice may be dictated by whether the contributed
packages needed are available in 64-bit builds (although CRAN only offers
32/64-bit builds).  The considerations can be more complex: for example
32/64-bit <code>RODBC</code> need 32/64-bit ODBC drivers respectively, and where
both exist they may not be able to be installed together.  An extreme
example is the Microsoft Access/Excel ODBC drivers: if you have installed
64-bit Microsoft Office you can only install the 64-bit drivers and so need
to use 64-bit <code>RODBC</code> and hence R.  (And similarly for 32-bit Microsoft
<a name="Can-both-32_002d-and-64_002dbit-R-be-installed-on-the-same-machine_003f"></a>
<a name="Can-both-32_002d-and-64_002dbit-R-be-installed-on-the-same-machine_003f-1"></a>
<h3 class="section">2.29 Can both 32- and 64-bit R be installed on the same machine?</h3>

<p>Obviously, only relevant if the machine is running a 64-bit version of
Windows &ndash; simply select both when using the installer.  You can also go
back and add 64-bit components to a 32-bit install, or <em>vice versa</em>.
<p>For many Registry items, 32- and 64-bit programs have different views of the
Registry, but clashes can occur.  The most obvious problem is the file
association for <samp>.RData</samp> files, which will use the last installation
for which this option is selected, and if that was for an installation of
both, will use 64-bit R.  To change the association the safest way is to
edit the Registry entry
&lsquo;<samp>HKEY_CLASSES_ROOT\RWorkspace\shell\open\command</samp>&rsquo; and replace
&lsquo;<samp>x64</samp>&rsquo; by &lsquo;<samp>i386</samp>&rsquo; or <em>vice versa</em>.

<a name="Rcmd-is-not-found-in-my-PATH_0021"></a>
<a name="Rcmd-is-not-found-in-my-PATH_0021-1"></a>
<h3 class="section">2.30 Rcmd is not found in my PATH!</h3>

<p>This has often been reported after an upgrade.
<p>The R installer does not put <code>Rcmd.exe</code> (nor any other R executable)
on your <code>PATH</code>.  What seems to have happened is that people did this for
themselves in the past, upgraded R (which by default will install to a
different location) and un-installed the old version of R.  If you do that
(or install R for the first time), you need to edit the <code>PATH</code>.
<p>The element you want to add to the path is something like
<div class="example">
<pre class="example">c:\Program Files\R\R-3.0.0\bin\x64

<p>for 64-bit <code>Rcmd.exe</code>, replacing <code>x64</code> by <code>i386</code> for
<p>How you set the path depends on your OS version.  Under recent versions, go
to &lsquo;User Accounts&rsquo; in the Control Panel, and select your account and then
&lsquo;Change my environment variables&rsquo;.  (System policies can prevent end users
making changes.)
<p>An alternative is to set the <code>PATH</code> in the shell you are running
(<code>Rcmd.exe</code> is a command-line program).  For those using the
standard Windows &lsquo;Command Prompt&rsquo; Duncan Murdoch suggested:
<p>The simple way to do it just for the command prompt is to write a little
batch file <code>setpath.bat</code> containing
<div class="example">
<pre class="example">set PATH=newstuff;%PATH%

<p>and then run <code>cmd</code> with
<div class="example">
<pre class="example">CMD /K setpath.bat

<a name="Languages-and-Internationalization"></a>
<a name="Languages-and-Internationalization-1"></a>
<h2 class="chapter">3 Languages and Internationalization</h2>

<a name="The-installer-does-not-offer-my-language"></a>
<a name="The-installer-does-not-offer-my-language_002e"></a>
<h3 class="section">3.1 The installer does not offer my language.</h3>

<p>Only a limited range of languages is supported, currently Catalan, both
Simplified and Traditional Chinese, Czech, Danish, Dutch, Finnish, French,
German, Greek, Hebrew, Hungarian, Italian, Japanese, Korean, Norwegian,
Polish, Portuguese (Brazil), Portuguese (Portugal), Russian, Slovenian,
Spanish (Spain)  and Ukranian.
<a name="I-want-R-in-English_0021"></a>
<a name="I-want-R-in-English-_0028and-not-in-French_002fChinese_002f_002e_002e_002e_0029_0021"></a>
<h3 class="section">3.2 I want R in English (and not in French/Chinese/...)!</h3>

<p>The default behaviour of R is to try to run in the language you run Windows
<p>Apparently some users want<a name="DOCF2" href="#FOOT2"><sup>2</sup></a> Windows in their
native language, but not R.  To do so, set <code>LANGUAGE=en</code> as discussed
in Q2.2 and Q2.15, or in the <samp>Rconsole</samp> file.
<a name="I-want-to-run-R-in-Chinese_002fJapanese_002fKorean"></a>
<a name="I-want-to-run-R-in-Chinese_002fJapanese_002fKorean_002e"></a>
<h3 class="section">3.3 I want to run R in Chinese/Japanese/Korean.</h3>

<p>Suitable versions of Windows support what it calls &lsquo;East Asian&rsquo; languages,
but e.g. Western installations of Windows often do not have such support.
So we need to assume that your copy of Windows does.
<p>Both <code>Rterm.exe</code> and <code>Rgui.exe</code> support single- and
double-width characters.  It will be necessary to select suitable fonts in
files <samp>Rconsole</samp> and <samp>Rdevga</samp> (see <code>?Rconsole</code> or the
comments in the files: the system versions are in the <samp>etc</samp> folder); in
the latter you can replace <code>Arial</code> by <code>Arial Unicode MS</code>, and we
tried <code>FixedSys</code> and <code>MS Mincho</code> in <samp>Rconsole</samp>.  (Note that
<samp>Rdevga</samp> only applies to Windows graphics devices and not, say, to
<p>Note that it is important that the console font uses double-width characters
for all CJK characters (as that is what the width table used assumes): this
is true for the fonts intended for CJK locales but not for example for
<code>Lucida Console</code> or <code>Consolas</code>.
<p>You do need to ensure that R is running in a suitable locale: use
<code>Sys.getlocale()</code> to find out.  (CJK users may be used to their
language characters always being available, which is the case for so-called
&lsquo;Unicode&rsquo; Windows applications.  However, R is primarily written for
Unix-alikes and is not therefore &lsquo;Unicode&rsquo; in the Windows sense.)  You can
find suitable locale names from
<a href=""></a>:
beware that <code>&quot;Chinese&quot;</code> is Traditional Chinese (code page 950, Big5)
and <code>&quot;chs&quot;</code> is needed for Simplified Chinese (code page 936, GB2312).
<p>When using <code>Rterm</code> the window in which it is run has to be set up to
use a suitable font (e.g. <code>Lucida Console</code> or <code>Consolas</code>, not the
OEM raster fonts) and a suitable codepage (which for the Windows Cmd shell
can be done using <code>chcp</code>).
<a name="I-selected-English-for-installation-but-R-runs-in-Chinese"></a>
<a name="I-selected-English-for-installation-but-R-runs-in-Chinese_002e"></a>
<h3 class="section">3.4 I selected English for installation but R runs in Chinese.</h3>

<p>Precisely, you selected English <strong>for installation</strong>! The language of
the installer has nothing to do with the language used to run R: this is
completely standard Windows practice (and necessary as different users of
the computer may use different languages).
<p>The language R uses for menus and messages is determined by the
<em>locale</em>: please read the appropriate manual (&lsquo;R Installation and
Administration&rsquo;) for the details.  You can ensure that R uses English
messages by appending <code>LANGUAGE=en</code> to the shortcut you use to start R,
or setting it in the <samp>Rconsole</samp> file.
<a name="I-would-like-to-be-able-to-use-Japanese-fonts"></a>
<a name="I-would-like-to-be-able-to-use-Japanese-fonts_002e"></a>
<h3 class="section">3.5 I would like to be able to use Japanese fonts.</h3>

<p>for example, in the console and to annotate graphs.  Similar comments apply
to any non-Western-European language.
<p>With suitable fonts, this should just work.  You will need to set MS Mincho
or MS Gothic as the console font to ensure that single- and double-width
characters are handled correctly.  The default graphics fonts for the
<code>windows()</code> graphics device can handle most common Japanese characters,
but more specialized fonts may need to be set.  (See Q5.2 for how to set
fonts: the console font can also be set from the &lsquo;GUI preferences&rsquo; menu
item.)  The help for <code>windowsFonts</code> has examples of selecting Japanese
fonts for the <code>windows()</code> family of devices.
<p>In addition, the Hershey vector fonts (see <code>?Hershey</code>, <code>?Japanese</code>
and <code>demo(Japanese)</code>) can be used on any graphics device to display
Japanese characters.
<p>To use non-Latin-1 characters in the <code>postscript</code> graphics device, see
its help page (which also applies to <code>pdf</code>).
<a name="I-don_0027t-see-characters-with-accents-at-the-R-console"></a>
<a name="I-don_0027t-see-characters-with-accents-at-the-R-console_002c-for-example-in-_003ftext_002e"></a>
<h3 class="section">3.6 I don&rsquo;t see characters with accents at the R console, for example in ?text.</h3>

<p>You need to specify a font in <samp>Rconsole</samp> (see Q5.2) that supports the
encoding in use.  This used to be a problem in earlier versions of Windows,
but now it is hard to find a font which does not.
<p>Support for these characters within <code>Rterm</code> depends on the
environment (the terminal window and shell, including locale and codepage
settings) within which it is run as well as the font used by the terminal
window.  Those are usually on legacy DOS settings and need to altered.
<a name="The-dialog-buttons-are-not-translated"></a>
<a name="The-dialog-buttons-are-not-translated_002e"></a>
<h3 class="section">3.7 The dialog buttons are not translated.</h3>

<p>In most cases they actually are, but by Windows.  Setting the locale or the
<code>LANGUAGE</code> environment variable does not change the Windows setting of
its &lsquo;UI language&rsquo;.  Vista and later talk about the &rsquo;UI language&rsquo; and the
&rsquo;system locale&rsquo; for setting the language used for &lsquo;non-Unicode&rsquo; programs (on
the &rsquo;Administrative&rsquo; tab in Windows 7).
<p>If you have Windows running completely in say French or Chinese these
settings are likely to be consistent.  However, if you try to run Windows in
one language and R in another, you may find the way Windows handles
internationalization slightly odd.
<a name="Packages"></a>
<a name="Packages-1"></a>
<h2 class="chapter">4 Packages</h2>

<a name="Can-I-install-packages-into-libraries-in-this-version_003f"></a>
<a name="Can-I-install-packages-into-libraries-in-this-version_003f-1"></a>
<h3 class="section">4.1 Can I install packages into libraries in this version?</h3>

<p>Yes, but you will need a lot of tools to do so, unless the author or the
maintainers of the <samp>bin/windows/contrib</samp> section on CRAN have been kind
enough to provide a binary version for Windows as a <code>.zip</code> file, or the
package is a simple one involving no compiled code (and binary versions are
usually available for simple packages).
<p>You can install binary packages either from a repository such as CRAN or
from a local <code>.zip</code> file by using <code>install.packages</code>: see its help
page.  There are menu items on the <code>Packages</code> menu to provide a
point-and-click interface to package installation.  The packages for each
minor (2.x.? or 3.x.?) version will be stored in a separate area, so for R
3.0.? the files are in <samp>bin/windows/contrib/3.0</samp>.
<p>Note that the binary versions on CRAN are unsupported: see
<a href=""></a>,
which also gives the locations of a few other binary packages.
<p>If there is no binary package or that is not up-to-date or you prefer
compiling from source, read the &lsquo;R Installation and Administration&rsquo; manual
section on &lsquo;Add-on Packages&rsquo;.  Source packages which contain no
C/C++/Fortran code which needs compilation can simply be installed by
<code>install.packages(type = &quot;source&quot;)</code> or <code>R CMD INSTALL pkgname</code>
at a Windows command prompt.  For packages with code that needs compilation
you will need to collect and install several tools: you can download them
via the portal at <a href=""></a>.  Once
you have done so, just run <code>R CMD INSTALL pkgname</code> at a Windows
command prompt.  To check the package (including running all the examples on
its help pages and in its test suite, if any) use <code>R CMD check
pkgname</code>: see the <em>&lsquo;Writing R Extensions&rsquo;</em> manual.
<p>Note that setting up Windows to install a source package that needs
compilation is rather tricky; please do ensure that you have followed the
instructions <strong>exactly</strong>.  At least 90% of the questions asked are
because people have not done so.
<p>If you have a source package that is known to work on a Unix-alike system,
you can try the automated Windows binary package builder documented at
<a href=""></a>.
<a name="I-don_0027t-have-permission-to-write-to-the-3_002e2_002e0-Under-development-_0028unstable_0029_005clibrary-directory"></a>
<a name="I-don_0027t-have-permission-to-write-to-the-3_002e2_002e0-Under-development-_0028unstable_0029_005clibrary-directory_002e"></a>
<h3 class="section">4.2 I don&rsquo;t have permission to write to the <samp>3.2.0 Under development (unstable)\library</samp> directory.</h3>

<p>You can install packages anywhere and use the environment variable
<code>R_LIBS</code> (see <a href="#How-do-I-set-environment-variables_003f">How do I set environment variables?</a>) to point to the
library location(s).
<p>Suppose your packages are installed in <samp>p:\myRlib</samp>.  Then you can
<div class="example">
<pre class="example">set the environment variable R_LIBS to p:/myRlib before starting R

<p>OR use a package by, e.g.
<div class="example">
<pre class="example">library(mypkg, lib.loc=&quot;p:/myRlib&quot;)

<p>You can also have a personal library, which defaults to the directory
<samp>R\win-library\<var>x.y</var></samp> of your home directory for versions
<var>x.y.z</var> of R.  This location can be changed by setting the environment
variable <code>R_LIBS_USER</code>, and can be found from inside R by running
<code>Sys.getenv(&quot;R_LIBS_USER&quot;)</code>.  This will only be used if it exists so
you may need to create it: you can use
<div class="example">
<pre class="example">dir.create(Sys.getenv(&quot;R_LIBS_USER&quot;), recursive = TRUE)

<p>to do so.  If you use <code>install.packages</code> and do not have permission to
write to the main or site library, it should offer to create a personal
library for you and install the packages there.  This will also happen if
<code>update.packages</code> offers to update packages for you in a library where
you do not have write permission.
<p>There can be additional security issues under Windows Vista and later:
See <a href="#Does-R-run-under-Windows-Vista_003f">Does R run under Windows Vista?</a>.  In particular, the detection that a
standard user has suitable permissions appears to be unreliable under Vista,
so we recommend that you do create a personal directory yourself.

<a name="The-packages-I-installed-do-not-appear-in-the-HTML-help-system"></a>
<a name="The-packages-I-installed-do-not-appear-in-the-HTML-help-system_002e"></a>
<h3 class="section">4.3 The packages I installed do not appear in the HTML help system.</h3>

<p>This question applied to the pre-2.10.0 HTML help system, which has been

<a name="My-functions-are-not-found-by-the-HTML-help-search-system_002e"></a>
<a name="My-functions-are-not-found-by-the-HTML-help-search-system_002e-1"></a>
<h3 class="section">4.4 My functions are not found by the HTML help search system.</h3>

<p>This question applied to the pre-2.10.0 search system, which has been

<a name="Loading-a-package-fails_002e"></a>
<a name="Loading-a-package-fails_002e-1"></a>
<h3 class="section">4.5 Loading a package fails.</h3>

<p>Is the package installed for this version of R? Packages need to have
prepared for R 2.10.0 or later, and packages containing compiled code for R
2.12.0 or later.
<p>You can tell the version the package was compiled for by looking at the
&lsquo;<samp>Built:</samp>&rsquo; line in its <samp>DESCRIPTION</samp> file 
<p>For a small number of binary packages you need to install additional
software and have its DLLs in your <code>PATH</code>.  Windows will normally give
an informative message about a certain DLL not being found.  See
<a href=""></a>
for a listing of some of these packages (notably <code>RGtk2</code>,
<code>cairoDevice</code>, <code>rggobi</code>, <code>rJava</code>, <code>rjags</code> and some of
the packages connecting to databases).

<a name="Package-TclTk-does-not-work_002e"></a>
<a name="Package-TclTk-does-not-work_002e-1"></a>
<h3 class="section">4.6 Package TclTk does not work.</h3>

<p>For package <code>tcltk</code> to work (try <code>demo(tkdensity)</code> or
<code>demo(tkttest)</code> after <code>library(tcltk)</code>) you need to have Tcl/Tk
installed.  This part of the R installation, so it should be there.
<p>However, if you have the environment variable <code>MY_TCLTK</code> set to a
non-empty value, it is assumed that you want to use a different Tcl/Tk 8.5.x
installation with the path to its <samp>bin</samp> directory given by value of
<code>MY_TCLTK</code>, and that this is set up correctly (with <code>TCL_LIBRARY</code>
set if needed).  Note that you do need 8.5.x and not 8.4.x nor 8.6.0, and
you do need the architecture to match, that is a 32-bit or 64-bit build of
Tcl/Tk to match the R build in use.  (There is no guarantee that a 64-bit
build will work: it depends on the layout it uses.)
<p>In the past several package authors have suggested using ActiveTcl
(<a href=""></a>) as a way to get
Tcl/Tk extensions (but the support files do contain the most commonly used
<code>TkTable</code> and <code>BWidget</code> extensions).  This could be used by
setting (for a default install)
<div class="example">
<pre class="example">MY_TCLTK=c:/Tcl/bin

<p><strong>but</strong> current versions do not by default contain any extra extensions
(although they may be downloaded via the <code>Teacup</code> facility) and this
only works for 32-bit R.

<a name="Hyperlinks-in-HTML-do-not-work_002e"></a>
<a name="Hyperlinks-in-HTML-sometimes-do-not-work_002e"></a>
<h3 class="section">4.7 Hyperlinks in HTML sometimes do not work.</h3>

<p>This question was much more relevant prior to version 2.10.0.
<p>They may still not work between packages installed in different libraries if
the HTTP server has been disabled: the remedy is not to do that!
<a name="update_002epackages_0028_0029-fails"></a>
<a name="update_002epackages_0028_0029-fails_002e"></a>
<h3 class="section">4.8 <code>update.packages()</code> fails.</h3>

<p>You may not be able to update a package which is in use: Windows &lsquo;locks&rsquo; the
package&rsquo;s DLL when it is loaded.  So use <code>update.packages()</code> (or the
menu equivalent) in a new session.
<p>If you put <code>library(foo)</code> in your <samp>.Rprofile</samp> you will need to
start R with <samp>--vanilla</samp> to be able to update package <code>foo</code>.  If
you set <code>R_DEFAULT_PACKAGES</code> to include <code>foo</code>, you will need to
unset it temporarily.
<p>It has been reported that some other software has interfered with the
installation process by preventing the renaming of temporary files,
<em>Google Desktop</em> being a known example.

<a name="How-do-I-add-to-the-list-of-repositories_003f"></a>
<a name="How-do-I-add-to-the-list-of-repositories_003f-1"></a>
<h3 class="section">4.9 How do I add to the list of repositories?</h3>

<p>as shown in the <code>Select repositories...</code> item on the <code>Packages</code>
<p>This reads from the tab-delimited file <samp>R_HOME\etc\repositories</samp>, which
you can edit, or put a modified copy at <samp>.R\repositories</samp> in your HOME
directory (see <a href="#What-are-HOME-and-working-directories_003f">What are HOME and working directories?</a>).
<a name="Help-is-not-shown-for-some-of-the-packages"></a>
<a name="Help-is-not-shown-for-some-of-the-packages-1"></a>
<h3 class="section">4.10 Help is not shown for some of the packages</h3>

<p>This was about Compiled HTML help, which has not been supported since R
<a name="How-do-I-get-static-HTML-pages_003f"></a>
<a name="How-do-I-get-static-HTML-pages_003f-1"></a>
<h3 class="section">4.11 How do I get static HTML pages?</h3>

<p>We presume you want to do this for some special purpose: R&rsquo;s help system
will not make use of them, links across library directories will not work
(unlike R &lt; 2.10.0), ambiguous links will be resolved at install time and
missing links will be broken (previous versions used JavaScript to look for
them at run time).  But if you still want them, here is how to do it.
<p>Static HTML pages are not part of the binary distribution, so you will need
to install R and/or packages from their sources.  To install just a few
packages with static HTML pages use
<div class="example">
<pre class="example">R CMD INSTALL --html <var>pkg1</var> <var>pkg2</var> &hellip;

<p>To install R itself with static HTML pages you need to build it from the
sources for yourself.  Change the following line in file
<samp>MkRules.local</samp> (after copying <samp>MkRules.dist</samp> to
<samp>MkRules.local</samp> if that has not already been done).
<div class="example">
<pre class="example"># set this to YES to build static HTML help

<p>and them all packages installed by that build of R will (by default) be
installed with static HTML pages.
<a name="How-can-I-get-a-binary-version-of-a-package_003f"></a>
<a name="How-can-I-get-a-binary-version-of-a-package_003f-1"></a>
<h3 class="section">4.12 How can I get a binary version of a package?</h3>

<p>Presumably one not available on CRAN, BioC or a similar repository.
<p>If you have a source package that is known to work on a Unix-alike system,
you can try the automated Windows binary package builder documented at
<a href=""></a>.  If the package is not yours, please
remember to change the maintainer address so the results go to you and not
the author(s)!
<p>However, if a CRAN package is not available in binary form or only available
for 32-bit R, this usually means that there is a problem with some dependent
package or external software (often mentioned in the <samp>@ReadMe</samp> file in
the binary repository directory).  You can email
<a href=""></a> expressing a wish for such a package to be
ported&mdash;the maintainers will take such wishes into account when
prioritizing work on binary packages.
<p>In many cases installing packages from the sources is not at all difficult
(especially if the package contains no compiled code), so please attempt
that for yourself before requesting help from the busy volunteers.
<a name="Package-xxx-is-out-of-date-for-Windows"></a>
<a name="Package-xxx-is-out-of-date-for-Windows-1"></a>
<h3 class="section">4.13 Package xxx is out of date for Windows</h3>

<p>Here are three possible reasons:
<p>You are simply impatient, and need to wait until the binary package has been
built and propagated to the CRAN mirror you are using.  This normally (but
not always) happens within 24 hours.  Sometimes mirrors do get behind
(especially unofficial ones), so you could try another mirror.  (Mirror
statistics are linked near the top of the CRAN mirror page at
<a href=""></a>.)
<p>The latest version of the package might require a later version of R than
the one you are using.  You can check on the package&rsquo;s HTML page on CRAN,
and update your R if needed.
<p>Your R might be too old.  Binary packages for the 2.x series were built (if
possible) whilst 2.(x+1) is current, and once 3.0.0 is released, binary
packages for 2.14.x will be frozen.  You can always try installing from the
<a name="No-binary-packages-appear-to-be-available-for-my-version-of-R"></a>
<a name="No-binary-packages-appear-to-be-available-for-my-version-of-R-1"></a>
<h3 class="section">4.14 No binary packages appear to be available for my version of R</h3>

<p>How old is it? The CRAN policy is to archive binary packages two years after
the 2.x series is closed.  Other repositories may do so sooner.
<p>If you are using an R version that old we advise you to update your R, but
you do also have the option of installing packages from their source.

<a name="How-do-I-build-my-package-for-both-32_002d-and-64_002dbit-R_003f"></a>
<a name="How-do-I-build-my-package-for-both-32_002d-and-64_002dbit-R_003f-1"></a>
<h3 class="section">4.15 How do I build my package for both 32- and 64-bit R?</h3>

<p>Packages without compiled code nor a <samp></samp> script will run on
both 32- and 64-bit R.
<p>Packages with compiled code but no <samp></samp> nor
<code>src/</code> file will be built for both when running on a 64-bit
version of Windows if both versions of R are installed.
<p>An empty <samp></samp> is treated in the same way as if none
existed.  Also, there is a list of packages known to have an
architecture-independent <samp></samp> hardcoded into <code>R CMD
INSTALL</code>, and for these packages, both architectures will be built under the
above conditions.  Other packages can be installed with <samp></samp>
run for just the first architecture by using option <samp>--force-biarch</samp>. 
<p>Any package can be installed for first one architecture and then the other
with option <samp>--merge-multiarch</samp>, but the package source must be a
tarball (and as before, running on a 64-bit version of Windows with both
versions of R installed).
<p>Finally, as from R 2.15.0, a package without a <code>src/</code> file
and no or empty or architecture-independent <code></code> file can be
installed for both architectures from 32-bit Windows if the 64-bit
components were selected when R was installed and option
<samp>--compile-both</samp> is given.  Obviously, only the 32-bit installation
can be tested.
<a name="Windows-Features"></a>
<a name="Windows-Features-1"></a>
<h2 class="chapter">5 Windows Features</h2>

<a name="What-should-I-expect-to-behave-differently-from-the-Unix-version"></a>
<a name="What-should-I-expect-to-behave-differently-from-the-Unix-version-of-R_003f"></a>
<h3 class="section">5.1 What should I expect to behave differently from the Unix version of R?</h3>

<li> R commands can be interrupted by <tt class="key">Esc</tt> in <code>Rgui.exe</code> and
<tt class="key">Ctrl-break</tt> or <tt class="key">Ctrl-C</tt> in <code>Rterm.exe</code>: <tt class="key">Ctrl-C</tt> is
used for copying in <code>Rgui.exe</code>.

</li><li> Command-line editing is always available, but is somewhat simpler than the
readline-based editing on Unix.  For <code>Rgui.exe</code>, the menu item &lsquo;Help
| Console&rsquo; will give details.  For <code>Rterm.exe</code> see file

</li><li> Paths to files (e.g. in <code>source()</code>) can be specified with
either &quot;/&quot; or &quot;\\&quot;.

</li><li> <code>system()</code> is slightly different: see its help page and that
of <code>shell()</code>.

<a name="I-hear-about-some-nifty-features_002e"></a>
<a name="I-hear-about-some-nifty-features_003a-please-tell-me-about-them_0021"></a>
<h3 class="section">5.2 I hear about some nifty features: please tell me about them!</h3>

<p>You have read the file <samp>README.3.2.0 Under development (unstable)</samp>?
There are file menus on the R console, pager and graphics windows.  You can
source and save from those menus, and copy the graphics to <code>png</code>,
<code>jpeg</code>, <code>bmp</code>, <code>postscript</code>, <code>PDF</code> or <code>metafile</code>.
There are right-click menus giving shortcuts to menu items, and optionally
toolbars with buttons giving shortcuts to frequent operations.
<p>If you resize the R console the <code>options(width=)</code> is automatically set
to the console width (unless disabled in the configuration file).
<p>The graphics has a history mechanism.  As <samp>README.3.2.0 Under
development (unstable)</samp> says:
<p>&lsquo;The History menu allows the recording of plots.  When plots have been
recorded they can be reviewed by <tt class="key">PgUp</tt> and <tt class="key">PgDn</tt>, saved and
replaced.  Recording can be turned on automatically (the Recording item on
the list) or individual plots can be added (Add or the <tt class="key">INS</tt> key).  The
whole plot history can be saved to or retrieved from an R variable in the
global environment.  The format of recorded plots may change between R
versions.  Recorded plots should <strong>not</strong> be used as a permanent storage
format for R plots.
<p>There is only one graphics history shared by all the windows devices.&rsquo;

<p>The R console and graphics windows have configuration files stored in the
<samp>RHOME\etc</samp> directory called <samp>Rconsole</samp> and <samp>Rdevga</samp>; you can
keep personal copies in your <samp>HOME</samp> directory.  They contain comments
which should suffice for you to edit them to your preferences.  For more
details see <code>?Rconsole</code>.  There is a GUI preferences editor invoked
from the <code>Edit</code> menu which can be used to edit the file

<a name="Circles-appear-as-ovals-on-screen"></a>
<a name="Circles-appear-as-ovals-on-screen_002e"></a>
<h3 class="section">5.3 Circles appear as ovals on screen.</h3>

<p>The graphics system asks Windows for the number of pixels per inch in the X
and Y directions, and uses that to size graphics (which in R are in units of
inches).  Sometimes the answer is a complete invention, and in any case
Windows will not know exactly how the horizontal and vertical size have been
set on a monitor which allows them to be adjusted.  You can specify correct
values either in the call to <code>windows</code> or as options: see
<code>?windows</code>.  (Typically these are of the order of 100.)
<p>On one of our systems, the screen height was reported as 240mm, and the
width as 300mm in 1280 x 1024 mode and 320mm in 1280 x 960 and 1600 x 1200
modes.  In fact it was a 21&quot; monitor and 400mm x 300mm!
<a name="How-do-I-move-focus-to-a-graphics-window-or-the-console_003f"></a>
<a name="How-do-I-move-focus-to-a-graphics-window-or-the-console_003f-1"></a>
<h3 class="section">5.4 How do I move focus to a graphics window or the console?</h3>

<p>You may want to do this from within a function, for example when calling
&lsquo;<samp>identify</samp>&rsquo; or &lsquo;<samp>readline</samp>&rsquo;.  Use the function &lsquo;<samp>bringToTop()</samp>&rsquo;.
With its default argument it brings the active graphics window to the top
and gives it focus.  With argument &lsquo;<samp>-1</samp>&rsquo; it brings the console to the
top and gives it focus.
<p>This works for <code>Rgui.exe</code> in MDI and SDI modes, and can be used for
graphics windows from <code>Rterm.exe</code> (although Windows may not always
act on it).

<a name="What-does-TAB-completion-do_003f"></a>
<a name="What-does-TAB-completion-do_003f-1"></a>
<h3 class="section">5.5 What does TAB completion do?</h3>

<p>Both <code>Rgui</code> and <code>Rterm</code> support <kbd>TAB</kbd> completion.
Hitting <kbd>TAB</kbd> whilst entering a command line completes the current
&lsquo;word&rsquo; as far as is unambiguously possible.  Hitting <kbd>TAB</kbd> a second time
then shows a list of possible completions (or the first few if there are
many): the user can then enter one or more characters and hit <kbd>TAB</kbd>
<p>What is it &lsquo;completing&rsquo;? There are two modes: within an unterminated
(single- or double-) quoted expression it completes file paths.<a name="DOCF3" href="#FOOT3"><sup>3</sup></a> Otherwise,
it is completing R expressions: most obviously it will match visible R
object names and keywords, so <kbd>apr</kbd> followed by <kbd>TAB</kbd> will (in a
vanilla session) complete to <code>apropos</code>.  After a function name and
parenthesis (e.g. <kbd>apropos(</kbd>) it will complete argument names (and
<kbd>=</kbd>), and after <kbd>$</kbd> or <kbd>@</kbd> it will complete list components or
slot names respectively.
<p>This feature can be turned off: <code>Rgui</code> has two menu items to do so,
and setting the environment variable <code>R_COMPLETION</code> to <code>FALSE</code>
turns it off completely for both <code>Rgui</code> and <code>Rterm</code>.
Further, the behaviour can be fine-tuned: to see the settings available use
<div class="example">
<pre class="example">?rc.settings

<p>which also explains how the various types of completion work.
<p>This feature is very similar to the completion available in the
<code>readline</code>-based command line interface on Unix-alikes: the OS X GUI
<code></code> has a different completion scheme.
<a name="Workspaces"></a>
<a name="Workspaces-1"></a>
<h2 class="chapter">6 Workspaces</h2>

<a name="My-workspace-gets-saved-in-a-strange-place_002e-How-do-I-stop-this_003f"></a>
<a name="My-workspace-gets-saved-in-a-strange-place_003a-how-do-I-stop-this_003f"></a>
<h3 class="section">6.1 My workspace gets saved in a strange place: how do I stop this?</h3>

<p>Have you changed the working directory?: see Q6.2.

<a name="How-do-I-store-my-workspace-in-a-different-place_003f"></a>
<a name="How-do-I-store-my-workspace-in-a-different-place_003f-1"></a>
<h3 class="section">6.2 How do I store my workspace in a different place?</h3>

<p>Use the &lsquo;File | Change Dir...&rsquo; menu item to select a new working directory:
this defaults to the last directory you loaded a file from.  The workspace
is saved in the working directory.  You can also save a snapshot of the
workspace from the &lsquo;Save Workspace...&rsquo; menu item.
<p>From the command line you can change the working directory by the function
<code>setwd</code>: see its help page.

<a name="Can-I-load-workspaces-saved-under-Unix_002fGNU_002dLinux-or-OS-X_003f"></a>
<a name="Can-I-load-workspaces-saved-under-Unix_002fGNU_002dLinux-or-Mac-OS-X_003f"></a>
<h3 class="section">6.3 Can I load workspaces saved under Unix/GNU-Linux or Mac OS X?</h3>

<p>Yes.  All ports of R use the same format for saved workspaces, so they are
interchangeable (for the same 2.x.? version of R, at least).
<p>Note though that character data in a workspace will be in a particular
encoding that is not recorded in the workspace, so workspaces containing
non-<acronym>ASCII</acronym> character data may not be interchangeable even on the
same OS.  Since R marks character data when it knows it to be in UTF-8 or
Latin-1 (including its Windows superset, CP1252), strings in those encodings
are likely to be transferred correctly: fortunately this covers most of the
common cases (OS X normally uses UTF-8, and Linux users are likely to use
UTF-8 or perhaps Latin-1 (which used to be used for English)).
<p>It is possible to save references to package namespaces when saving the
workspace: if that happens the package will need to be installed on the
machine loading the workspace.
<a name="The-R-Console"></a>
<a name="The-R-Console-1"></a>
<h2 class="chapter">7 The R Console</h2>

<a name="The-output-to-the-console-seems-to-be-delayed"></a>
<a name="When-using-Rgui-the-output-to-the-console-seems-to-be-delayed_002e"></a>
<h3 class="section">7.1 When using Rgui the output to the console seems to be delayed.</h3>

<p>This is deliberate: the console output is buffered and re-written in chunks
to be faster and less distracting.  You can turn buffering off or on from
the &lsquo;Misc&rsquo; menu or the right-click menu: <tt class="key">Ctrl-W</tt> toggles the setting.
<p>If you are sourcing R code or writing from a function, there is another
option.  A call to the R function <code>flush.console()</code> will write out the
buffer and so update the console.

<a name="Long-lines-seem-to-be-truncated_002e"></a>
<a name="Long-lines-in-the-console-or-pager-are-truncated_002e"></a>
<h3 class="section">7.2 Long lines in the console or pager are truncated.</h3>

<p>They only <strong>seem</strong> to be truncated: that $ at the end indicates you can
scroll the window to see the rest of the line.  Use the horizontal scrollbar
or the <tt class="key">CTRL + left/right arrow</tt> keys to scroll horizontally. (The
<tt class="key">left/right arrow</tt> keys work in the pager too.)

<a name="Building-from-Source"></a>
<a name="Building-from-Source-1"></a>
<h2 class="chapter">8 Building from Source</h2>

<a name="How-can-I-compile-R-from-source_003f"></a>
<a name="How-can-I-compile-R-from-source_003f-1"></a>
<h3 class="section">8.1 How can I compile R from source?</h3>

<p>See the &lsquo;R Installation and Administration&rsquo; manual (for the version of R you
want to install).
<a name="Can-I-use-a-fast-BLAS_003f"></a>
<a name="Can-I-use-a-fast-BLAS_003f-1"></a>
<h3 class="section">8.2 Can I use a fast BLAS?</h3>

<p>Fast BLAS (Basic Linear Algebra Subprograms,
<a href=""></a>) routines are used to speed
up numerical linear algebra.  There is support in the R sources for the
&lsquo;tuned&rsquo; BLAS called ATLAS (<a href=""></a>).  The
savings can be appreciable but because ATLAS is tuned to a particular chip
we can&rsquo;t use it generally.  However, linear algebra on large matrices is not
often an important part of R computations, and more typical calculations on
small matrices may run slower.
<p>BLAS support is supplied by the single DLL <samp>R_HOME\bin\x64\Rblas.dll</samp>,
and you can add a fast BLAS just by replacing that.  Replacements for 32-bit
R and some of the older common chips are available on CRAN in directory
<samp>bin/windows/contrib/ATLAS</samp>.  See the R Installation and
Administration&rsquo; manual for how to build an ATLAS <samp>Rblas.dll</samp> tuned to
your system using the R sources.  Unfortunately the process has been less
successful when tried for the common current chips such as Intel&rsquo;s Core 2.
<p>Versions of Dr Kazushige Goto&rsquo;s BLAS (see
<a href=""></a>) for 64-bit Windows by
Ei-Ji Nakama can be found at
<a href=""></a>.
Just download the file <samp>Rblas.dll</samp> appropriate to your CPU and replace
<samp><var>R_HOME</var>/bin/x64/Rblas.dll</samp>.  (There is also a generic version
called &lsquo;<samp>DYNAMIC_ARCH</samp>&rsquo; that tries to adapt itself to the CPU found &ndash;
however if you know the exact CPU used it is better to download the
CPU-specific version.  Note that development of that BLAS was frozen in 2010
so you will not find versions for recent CPUs.)
<p>Note that fast BLAS implementations may give different (and often slightly
less accurate) results than the reference BLAS included in R.
<a name="How-do-I-include-compiled-C-code_003f"></a>
<a name="How-do-I-include-compiled-C-code_003f-1"></a>
<h3 class="section">8.3 How do I include compiled C code?</h3>

<p>We strongly encourage you to do this <em>via</em> building an R package: see
the <em>&lsquo;Writing R Extensions&rsquo;</em> manual.  In any event you should get and
install the tools and toolchain mentioned in the &lsquo;R Installation and
Administration&rsquo; manual.  Then you can use
</p><div class="example">
<pre class="example">...\bin\x64\R CMD SHLIB foo.c bar.f
<p>to make <samp>foo.dll</samp>.  Use <code>...\bin\x64\R CMD SHLIB --help</code> for
further options, or see <code>?SHLIB</code>.  (Replace <code>x64</code> by <code>i386</code>
for 64-bit R.)
<p>If you want to use Visual C++, Borland C++ or other compilers, see the
appropriate section in <samp>README.packages</samp>.

<a name="How-do-I-debug-code-that-I-have-compiled-and-dyn_002eload_002ded_003f"></a>
<a name="How-do-I-debug-code-that-I-have-compiled-and-dyn_002eload_002ded_003f-1"></a>
<h3 class="section">8.4 How do I debug code that I have compiled and dyn.load-ed?</h3>

<p>Debugging under Windows is often a fraught process, and sometimes does not
work at all.  If all you need is a <em>just-in-time</em> debugger to catch
crashes, consider (32-bit) <code>Dr. Mingw</code> from the <code>mingw-utils</code>
bundle on <a href=""></a>.  That will be able to pinpoint the
error, most effectively if you build a version of R with debugging
information as described below.
<p>First, build a version of the R system with debugging information by
<div class="example">
<pre class="example">make clean
make DEBUG=T

<p>and make a debug version of your package by
<div class="example">
<pre class="example">Rcmd INSTALL --debug mypkg

<p>You will need a suitable version of <code>gdb</code> which matches your
compiler.  Then you can debug by
<div class="example">
<pre class="example">gdb /path/to/3.2.0 Under development (unstable)/bin/x64/Rgui.exe

<p>(or use <code>Rterm.exe</code>.)  However, note
<li> <code>gdb</code> may only be able to find the source code if we run in the
location where the source was compiled (<samp>3.2.0 Under development
(unstable)/src/gnuwin32</samp> for the main system, <samp>3.2.0 Under development
(unstable)/src/library/mypkg/src</samp> for a package), unless told otherwise by
the <code>directory</code> command.  It is most convenient to set a list of
code locations via <code>directory</code> commands in the file <samp>.gdbinit</samp>
in the directory from which <code>gdb</code> is run.

</li><li> It is only possible to set breakpoints in a DLL after the DLL has been
loaded.  So a way to examine the function <code>tukeyline</code> in package
<code>stats</code> might be

<div class="example">
<pre class="example">     gdb ../../../../bin/i386/Rgui.exe
     (gdb) break WinMain
     (gdb) run
     [ stops with R.dll loaded ]
     (gdb) break R_ReadConsole
     (gdb) continue
     [ stops with console running ]
     (gdb) continue
     Rconsole&gt; library(stats)
     (gdb) break tukeyline
     (gdb) clear R_ReadConsole
     (gdb) continue
     Rconsole&gt; example(line)

<p>Alternatively, in <code>Rgui</code> you can use the &lsquo;Misc|Break to debugger&rsquo;
menu item after your DLL is loaded.  The C function call
<code>breaktodebugger()</code> will do the same thing.
</li><li> Fortran symbols need an underline appended.

</li><li> Windows has little support for signals, so the Unix idea of running a
program under a debugger and sending it a signal to interrupt it and drop
control back to the debugger does not work with a MinGW version of
<code>gdb</code>.  It does often work with the <code>cygwin</code> version.

</li><li> Other debuggers than <code>gdb</code> can be used.  We have successfully used
the <code>insight</code> front-end to <code>gdb</code> (see
<a href=""></a>: there is a MinGW port on their
site), and Borland&rsquo;s debugger with a DLL compiled in a Borland compiler.


<a href=""></a>
for some further details.

<a name="How-do-I-include-C_002b_002b-code_003f"></a>
<a name="How-do-I-include-C_002b_002b-code_003f-1"></a>
<h3 class="section">8.5 How do I include C++ code?</h3>

<p>You need to do two things:
<p>(a) Write a wrapper to export the symbols you want to call from R as
<code>extern &quot;C&quot;</code>.
<p>(b) Include the C++ libraries in the link to make the DLL.  Suppose
<samp></samp> contains your C++ code, and <samp></samp> is the wrapper, as
in the example in <em>&lsquo;Writing R Extensions&rsquo;</em>.  Then build the DLL by
<div class="example">
<pre class="example">...\bin\x64\R CMD SHLIB

<p>or (VC++, which requires extension <code>.cpp</code>)
<div class="example">
<pre class="example">cl /MT /c X.cpp X_main.cpp
link /dll /out:X.dll /export:X_main X.obj X_main.obj

<p>or (Borland C++, which also requires extension <code>.cpp</code>)
<div class="example">
<pre class="example">bcc32 -u- -WDE X.cpp X_main.cpp

<p>and call the entry point(s) in <code>X_R</code>, such as <code>X_main</code>.
Construction of static variables will occur when the DLL is loaded, and
destruction when the DLL is unloaded, usually when R terminates.
<p>Note that you will not see the messages from this example in the GUI
console: see the next section.
<p>This example used to be in package <samp>cxx_0.0-x.tar.gz</samp> in the
<samp>src/contrib/Devel</samp> section on CRAN, and could be compiled as a package
in the usual way on Windows.

<a name="The-output-from-my-C-code-disappears_002e"></a>
<a name="The-output-from-my-C-code-disappears_002e-Why_003f"></a>
<h3 class="section">8.6 The output from my C code disappears.  Why?</h3>

<p>The <code>Rgui.exe</code> console is a Windows application: writing to
<code>stdout</code> or <code>stderr</code> will not produce output in the console.
(This will work with <code>Rterm.exe</code>.)  Use <code>Rprintf</code> or
<code>REprintf</code> instead.  These are declared in header file
<p>Note that output from the console is delayed (see <a href="#The-output-to-the-console-seems-to-be-delayed">The output to the console seems to be delayed</a>), so that you will not normally see any output
before returning to the R prompt.

<a name="The-output-from-my-Fortran-code-disappears_002e"></a>
<a name="The-output-from-my-Fortran-code-disappears_002e-Why_003f"></a>
<h3 class="section">8.7 The output from my Fortran code disappears.  Why?</h3>

<p>Writing to Fortran output writes to a file, not the <code>Rgui</code> console.
Use one of the subroutines <code>dblepr</code>, <code>intpr</code> or <code>realpr</code>
documented in the <em>&lsquo;Writing R Extensions&rsquo;</em> manual.
<p>Note that output from the console is delayed (see <a href="#The-output-to-the-console-seems-to-be-delayed">The output to the console seems to be delayed</a>), so that you will not normally see any output
before returning to the R prompt even when using the <code>xxxpr</code>

<a name="The-console-freezes-when-my-compiled-code-is-running"></a>
<a name="The-console-freezes-when-my-compiled-code-is-running_002e"></a>
<h3 class="section">8.8 The console freezes when my compiled code is running.</h3>

<p>The console, pagers and graphics window all run in the same thread as the R
engine.  To allow the console etc to respond to Windows events, call
<code>R_ProcessEvents()</code> periodically from your compiled code.  If you want
output to be updated on the console, call <code>R_FlushConsole()</code> and then
 <hr WIDTH="100%"> <address> Last edited 2012-12-12: comments to
<div class="footnote">
<h4 class="footnotes-heading">Footnotes</h4>

<h3><a name="FOOT1" href="#DOCF1">(1)</a></h3>
<p>what Windows calls x64 for x86-64 CPUs, not the very rare
ia64 Windows for Itanium CPUs.</p>
<h3><a name="FOOT2" href="#DOCF2">(2)</a></h3>
<p>or they may have no choice: apparently
some Windows editions are tied to a specific language.</p>
<h3><a name="FOOT3" href="#DOCF3">(3)</a></h3>
does not have a complete understanding of Windows file paths, but can
complete most relative or absolute file paths, including drives and
spaces. Relative paths on drives are not handled, for example.</p>

ViewVC Help
Powered by ViewVC 1.0.0  
Thanks to:
Vienna University of Economics and Business Powered By FusionForge