R حزم بناء باستخدام المناوب دول مجلس التعاون الخليجي
سؤال
ونظم أعمل مع دول مجلس التعاون الخليجي لديها 4.5 (تجريبي) في / البيرة / المحلية / بن / دول مجلس التعاون الخليجي والتي أثبتت أنها مشكلة لبعض الحزم R. وأود أن بدلا من استخدام دول مجلس التعاون الخليجي النظام في / البيرة / بن / دول مجلس التعاون الخليجي.
ولقد حاولت وضع CC وCXX في ملفات التكوين باش (.bashrc، .bash_profile الخ) وكذلك على سطر الأوامر، ولكن على الرغم من باش يعترف التغيير، R لا.
وكيف يمكنني الحصول على R لاستخدام النسخة من دول مجلس التعاون الخليجي في / البيرة / بن بدلا من واحد في / البيرة / المحلية / بن /؟
المحلول
لا توثيق هذا بشكل جيد (على سبيل المثال أنا فشلت في العثور عليه في أي 'R ملحق "أو" R المسؤول' الآن) ولكن براين ريبلي ذكر ذلك عدة مرات على القوائم.
وأساسا، في R وقت الترجمة، يتم تسجيل الإعدادات وتخزينها في $R_HOME/etc/Makeconf
. احتمال واحد هو تحرير هذا الملف مباشرة، ولكن قد لا يكون لديك امتيازات الجذر أو لا تريد أن تؤثر على كافة المستخدمين الآخرين. لذا فإن أفضل قد يكون لخلق
~/.R/Makevars
ومع إدخالات
CC=gcc-4.4
CXX=g++-4.4
وبالإضافة إلى أيهما optmisation الأعلام وما كنت تريد تعيين. وأن تؤثر على جميع استخدامات لاحقة من R CMD INSTALL
أو R CMD check
أو ... التي تقوم بتشغيل.
وملفات أخرى في $R_HOME/etc/
يمكن بالمثل أن يتم تجاوز محليا من ~/.R/
.
نصائح أخرى
وكان لي مشكلة مشابهة جدا.
وماذا عملت بالنسبة لي هو لتحديد دليل المشروع (rstudio يمكن أن نفعل ذلك لك)، ثم قم بإضافة ملف .Renviron
بتعديل PATH وLD_LIBRARY_PATH، ليشمل الدليل مع دول مجلس التعاون الخليجي الجديد.
في الحالة الخاصة بك، على سبيل المثال، فإن .Renviron
تبدو شيئا مثل:
وLD_LIBRARY_PATH=/usr/local/bin/gcc/lib:/usr/local/bin/gcc/lib64:/usr/local/bin/gcc/libexec:
<م> مسارات أخرى م>
وPATH=/usr/local/bin/gcc/bin:/usr/local/bin:
<م> مسارات أخرى م>
وتحقق من المسار الخاص بك لمعرفة ما إذا / البيرة / المحلية / بن يأتي قبل / البيرة / بن. إذا كان كذلك، فقط للتأكد من / البيرة / بن يأتي أولا:
PATH=/usr/bin:${PATH}
و(لا بأس إذا تم تكرار / البيرة / بن يظهر مرتين).