2014-10-20 15 views
7

Sau khi nâng cấp lên OS X 10.10 Yosemite tôi bắt đầu nhận được các bản ghi lỗi sau khi chạy gói Rcmdr tôi trong R sử dụng library(Rcmdr):Rcmdr lỗi ra mắt ở Yosemite (OS X 10.10)

Error : .onLoad failed in loadNamespace() for 'tcltk', details: 
    call: dyn.load(file, DLLpath = DLLpath, ...) 
    error: unable to load shared object '/Library/Frameworks/R.framework/Versions/3.1/Resources/library/tcltk/libs/tcltk.so': 
    dlopen(/Library/Frameworks/R.framework/Versions/3.1/Resources/library/tcltk/libs/tcltk.so, 10): Library not loaded: /usr/X11/lib/libXft.2.dylib 
    Referenced from: /usr/local/lib/libtk8.6.dylib 
    Reason: image not found 
Error: package or namespace load failed for 'Rcmdr' 

Ông có thể giúp tôi hiểu làm thế nào để sửa chữa nó?

Điều này mac os x troubleshooting không giúp ích gì.

Trả lời

18

Execute sau trong một cửa sổ terminal:

locate libXft.2.dylib 

hoặc làm điều đó từ một giao diện điều khiển R:

system("locate libXft.2.dylib") 

On Yosemite tôi cài đặt nó trong /opt/X11/lib/libXft.2.dylib.

Nếu thiết lập của bạn là tương tự, sau đó:

sudo ln -s /opt/X11 /usr/X11 

sẽ giúp khắc phục điều này tạm thời, nhưng tôi muốn tiếp tục tìm kiếm một gói Yosemite R (vì đó sẽ đáp ứng tất cả những thay đổi của Apple thực hiện cho các cấu trúc hệ thống tập tin).

Lưu ý: Trên công việc của tôi Mac (Mavericks) liên kết tượng trưng này đã có sẵn.

+0

Cảm ơn bạn đã trả lời! Mặc dù .dylib có ở đây: /opt/X11/lib/libXft.2.dylib /opt/local/lib/libXft.2.dylib nó hoạt động ngay bây giờ! Bạn có thể giải thích vấn đề là gì không? Những thay đổi trong hệ thống tập tin đã được thực hiện? Chúng có tốt không? – user3651816

+0

@ user3651816 Tất cả các hệ thống của tôi giờ đã có trên Yosemite nên tôi không thể dễ dàng xác nhận, nhưng có vẻ như Apple vừa chuyển X11 từ/usr sang/opt, trong khi R dự kiến ​​nó vẫn nằm trong/usr. Có lẽ một giải pháp tốt hơn, nếu có thể, sẽ cập nhật đường dẫn tìm kiếm của R để bao gồm thư mục chính xác (chứ không phải sửa lỗi liên kết tượng trưng này), nhưng tôi là một newb tương đối so với R vì vậy tôi không chắc mình sẽ làm như thế nào . – Matt

+1

Cách khác là cài đặt lại XQuartz. Apple đã không di chuyển bất cứ điều gì, nó đã xóa mọi thứ trong quá trình cài đặt (Apple không cung cấp X11 với OS X nữa, ngay cả khi một add-on). – hrbrmstr

3

Cài đặt lại XQuartz đã làm việc cho tôi.

+0

điều này cũng làm việc cho tôi (tính đến ngày 2017/08/31, macOS '10.12.6') –

0

Tôi đã thêm liên kết tượng trưng từ/usr/X11 đến/opt/X11 và điều này giải quyết được sự cố mà không có lệnh xác định vị trí.

Các vấn đề liên quan