跳到主要內容

Microsoft R Open 與 Mac OS Sierra不相容

搞了有點久所以記錄一下。Mac OS自Yosemite開始不在系統裡內建X11,所以有些R的Package會無法運作,這個問題可以透過安裝XQartz來解決。
 
通常這個問題的錯誤訊息會是:
Warning message:
In doTryCatch(return(expr), name, parentenv, handler) :
  unable to load shared object '/Library/Frameworks/R.framework/Resources/modules//R_X11.so':
  dlopen(/Library/Frameworks/R.framework/Resources/modules//R_X11.so, 6): Symbol not found: _CGBitmapContextCreate
  Referenced from: /Library/Frameworks/R.framework/Resources/modules//R_X11.so
  Expected in: flat namespace
 in /Library/Frameworks/R.framework/Resources/modules//R_X11.so

而這次我碰到的問題是在安裝新版的XQuartz(當時為2.7.9)時仍然在透過biocLite()指令安裝BioConductor上的Package時仍跳出這個訊息,執行的環境是Mac OS Sierra/RStudio 0.99.903/Microsoft R Open v3.3.1。嘗試過移除 R Studio、Microsoft R Open、還有XQuartz重新安裝都無法解決這個問題。

因為問題發生在Microsoft R Open在Mac OS Yosemite之後仍然指向錯誤的路徑來找X11,所以即使安裝了XQuartz也會因為路徑錯誤讓R誤判你沒有安裝,安裝回CRAN版的R之後就可以正常使用了。

留言

這個網誌中的熱門文章

尿管水球考

Photo credit: Crystal Explosion via photopin (license)   那約莫是intern到一半的時候。記得那天我放尿管就要大功告成,隨手拿起換藥車上的空針想把固定用的水球打起來結束這回合的時候,碰巧路過的護理師一個飛身順手抄起空針: 「且住!你這針筒裡面裝的是……生理食鹽水吧!」   我定睛一看,啊呀,落在換藥車桌面上的空罐子果然是生理食鹽水,顯然是在抽的時候沒有專心。 「多謝女俠提醒,不過……那可以幫我抽一管純水嗎?我得扶著尿管,不太方便。」

ImageJ (1.51f) 在Mac OS 10.12 (Sierra)中會因為權限管理而無法使用Plugin

問題描述: 在將下載後的ImageJ資料夾搬到應用程式資料夾中後,程式可以使用但Plugin功能表下的項目消失。 系統資訊: OS Version: Mac OS 10.12 ImageJ: 1.51f  JAVA Version: 1.6.0_65 according to About ImageJ 1.8.0_111-b14 according to Control Panel Memory Assigned: 2854k of 7000MB ( No error message 原因: Mac OS 10.12為了解決使用者權限管理的漏洞,在執行應用程式時會建立一個隨機路徑的唯讀資料夾並把.app複製過去在其中執行(Gatekeeper Path Randomization)。這個作法會讓某些需要呼叫其他檔案的程式無法正常作用。   在ImageJ上,如果在Image>Show Info功能表(或Command + I)中的「ImageJ Home:」後面的路徑的開頭是"/private",那就可能是Gatekeeper Path Randomization在作怪。   將執行檔從應用程式資料夾中複製到桌面(Option+拖曳)後刪掉原檔再把執行檔複製回去可以修正這個權限問題。 參考資料: Sierra and Gatekeeper Path Randomization Kind and timely support from Wayne Rasband (NIH/NIMH)

使用β-lactam類藥物時是否需要先做Penicillin skin test?:從醫學與法律探討

View image | gettyimages.com 這個問題應該困擾很多人很久,尤其是實習醫生們被雜事追著跑之餘還要記十五分鐘後要看結果,這根本是剛好會忘記的時間長度嘛! 所以說,除了各院的內規之外,從醫學上來看到底什麼時候應該要做Penicillin skin test?而從法律的觀點來看,每天Penicillin skin test真的能讓訴訟遠離我嗎?