ฉันสามารถติดตั้งรุ่นใหม่ของ R /local/data/project/behiในไดเรกทอรีของตัวเองเช่น
ฉันสามารถติดตั้งรุ่นใหม่ของ R /local/data/project/behiในไดเรกทอรีของตัวเองเช่น
คำตอบ:
วิธีที่ง่ายที่สุดในการทำเช่นนี้คือติดตั้ง R จากแหล่งที่มา :
$ wget http://cran.rstudio.com/src/base/R-3/R-3.4.1.tar.gz
$ tar xvf R-3.4.1.tar.gz
$ cd R-3.4.1
$ ./configure --prefix=$HOME/R
$ make && make install
ขั้นตอนที่สองถึงครั้งสุดท้ายเป็นขั้นตอนที่สำคัญ มันกำหนดค่า R ที่จะติดตั้งลงในไดเรกทอรีย่อยของไดเรกทอรีบ้านของคุณเอง
ที่จะรันบน Linux, MacOS และระบบที่คล้ายกันเพิ่มที่คุณ$HOME/R/bin PATHจากนั้นคำสั่งเชลล์จะทำงานRและRscriptจะทำงาน
บน macOS คุณมีทางเลือกอื่น: สร้างR.appและติดตั้งลงในApplicationsโฟลเดอร์ส่วนตัวของผู้ใช้ คุณต้องติดตั้ง Xcode เพื่อทำสิ่งนี้
คุณอาจพิจารณาให้--prefix=$HOMEแทน นั่นติดตั้ง R ที่ระดับบนสุดของโฮมไดเร็กตอรี่ของคุณ, RและRscriptไบนารีจบลง$HOME/bin, ซึ่งมีอยู่แล้วในผู้ใช้ของPATHคุณ. ข้อเสียคือทำให้การถอนการติดตั้งในภายหลังยากขึ้นเนื่องจาก R จะถูกผสานระหว่าง$HOMEเนื้อหาอื่น ๆ ของคุณ
(หากนี่คือสิ่งแรกที่คุณได้ติดตั้งไว้$HOME/binคุณอาจต้องออกจากระบบและกลับเข้ามาในสิ่งนี้PATHเนื่องจากมักจะถูกเพิ่มตามเงื่อนไขเฉพาะเมื่อ$HOME/binมีอยู่ในเวลาเข้าสู่ระบบ)
รูปแบบทั่วไปนี้ใช้กับซอฟต์แวร์ Unix จำนวนมากที่คุณสามารถติดตั้งได้จากซอร์สโค้ด หากซอฟต์แวร์มีconfigureสคริปต์ก็อาจเข้าใจถึง--prefixตัวเลือกและหากไม่มีก็มักจะมีตัวเลือกอื่นที่มีผลเหมือนกัน
คุณสมบัติเหล่านี้เป็นเรื่องปกติด้วยเหตุผลหลายประการ ในการลดลำดับความเป็นไปได้ในประสบการณ์ของฉัน:
ค่าเริ่มต้นที่ปลอดภัย ( /usr/local) ไม่เหมาะสม$prefixในทุกสถานการณ์ สถานการณ์อาจจะกำหนดเป็นอย่างอื่นเช่น/usr, /opt/$PKGNAMEฯลฯ
ระบบการสร้างแพคเกจแบบไบนารี ( RPM , DEB , PKG , Cygport ... ) โดยทั่วไปจะสร้างและติดตั้งแพคเกจลงในไดเรคทอรี่การแสดงละครพิเศษ
เคสของคุณซึ่งคุณไม่สามารถrootติดตั้งซอฟต์แวร์ลงในตำแหน่งปกติได้ดังนั้นคุณควรติดตั้ง$HOMEแทน
./configure --prefix=$HOME/R --enable-R-shlibเพื่อให้แน่ใจว่าคุณรวบรวม R shared library มิฉะนั้น RStudio จะบ่น
configure: error: --with-readline=yes (default) and headers/libs are not available make: *** No targets specified and no makefile found. Stop.
นอกจากนี้คุณยังสามารถใช้โปรแกรมกระดาษห่อRenv
สิ่งที่สกัดมา
Simple R Version Management: Renv
Renv ช่วยให้คุณสามารถสลับระหว่างอาร์หลายเวอร์ชันได้อย่างง่ายดายมันไม่สร้างความรำคาญและเป็นไปตามประเพณี UNIX ของเครื่องมือแบบใช้ครั้งเดียวที่ทำสิ่งเดียวได้ดี
Renv ทำ ...
- ให้คุณเปลี่ยนเวอร์ชัน R ส่วนกลางได้แบบต่อผู้ใช้
- ให้การสนับสนุนสำหรับรุ่น R ต่อโครงการ
- อนุญาตให้คุณแทนที่รุ่น R ด้วยตัวแปรสภาพแวดล้อม
สร้างจากแหล่งที่มาด้วย ./configure --prefix=/local/data/project/behi ; make ; make install
หากคุณกำลังติดตั้งจากแพ็คเกจ RPM และมันถูกสร้างขึ้นใหม่สามารถเปลี่ยนตำแหน่งได้คุณสามารถใช้
rpm ... --prefix /local/data/project/behi
แต่แพ็คเกจทั้งหมดไม่ได้ถูกสร้างขึ้นด้วยไบนารีที่เปลี่ยนตำแหน่งได้และฉันไม่คิดว่าแพ็คเกจเดเบียนมีตัวเลือกนี้ (แม้ว่าคุณจะประสบความสำเร็จdpkg --instdir)