2013-09-03 36 views
5

Vấn đề: C:\>Rcmd.exe INSTALL --build --library=C:/Users/local_aphalo/Documents/R/win-library/3.0 photobiologyR CMD INSTALL --build gói -> "họa tiết mất tích"

C:\>Rcmd.exe INSTALL --build --library=C:/Users/local_aphalo/Documents/R/win-library/3.0 photobiology_0.2.6.tar.gz

Lệnh đầu tiên (như được sử dụng bởi RStudio) xây dựng một tập tin ZIP mà thiếu họa tiết.

Lệnh thứ hai tạo một tệp ZIP bao gồm các họa tiết.

Sử dụng R CMD thay vì Rcmd.exe không có sự khác biệt. Các .tar.gz được xây dựng ngay lập tức trước khi cố gắng để xây dựng các tập tin .zip, từ chính xác cùng một nguồn tập tin, từ bên trong RStudio (trong đó sử dụng Rcmd.exe xây dựng photobiology).

Các họa tiết được mã hóa trong các tệp .Snw bằng cách sử dụng knitr, tài liệu và sử dụng NAMESPACE ROxygen2. Vấn đề xảy ra trên tất cả các gói mà tôi đã cố gắng xây dựng, nhưng chúng được mã hóa rất giống nhau. Chỉ một trong số họ sử dụng Rcpp.

Khi cài đặt gói để sử dụng từ bên trong RStudio, việc cài đặt từ .tar.gz sẽ cài đặt các họa tiết tốt. Nếu cài đặt từ .zip, dù các họa tiết có được cài đặt hay không, phụ thuộc vào việc các tệp .zip có chứa chúng hay không (tùy thuộc vào hai lệnh ở đầu thư này được sử dụng để xây dựng tệp .zip).

Tôi đang sử dụng R 3.0.1 và cũng đã thử một vài bản vá R 3.0.1 được xây dựng vài ngày trước. Tôi chủ yếu sử dụng Windows 7 (cả 32 bit và 64 bit), tôi đã thử một lần dưới Ubuntu 64bit và vấn đề có thể tái sản xuất. Lần đầu tiên tôi nhận thấy vấn đề khi sử dụng RStudio (0,97 và 0,98) và đăng một tin nhắn trong diễn đàn RStudio, nhưng đã không nhận được câu trả lời trong một vài tuần. Tôi đã tìm thấy ít nhất một bài đăng tương đối cũ về vấn đề này trong diễn đàn trang web RStudio, nhưng nó chưa được trả lời. Hôm nay, tôi đã nghiên cứu sâu hơn một chút, và vấn đề rõ ràng là không liên quan đến RStudio, vì tôi có thể tái tạo nó thông qua dòng lệnh.

Câu hỏi đặt ra là: Hành vi này có phải là một tính năng không? một lỗi? hoặc tôi thiếu chỉ là một lựa chọn trong lệnh được sử dụng?

Tất nhiên, tôi có thể dễ dàng giải quyết vấn đề ở dòng lệnh bằng cách sử dụng tệp .tar.gz để xây dựng tệp .zip, nhưng tôi nghĩ cách xây dựng gói ưu tiên là cung cấp tên gói làm đối số.

Cảm ơn mọi thông tin chi tiết về nguồn gốc của sự cố này.

Trả lời

3

Tôi nghĩ rằng đây là một tính năng:

  • nếu bạn đang cài đặt từ mã nguồn, họa tiết luôn được xây dựng

  • nếu bạn đang cài đặt từ một nhị phân, họ đang không được xây dựng, và sẽ chỉ khả dụng nếu chúng được tạo khi mã nhị phân được tạo thành

Phương pháp này có nghĩa là bạn có thể phân phối họa tiết trong gói nhị phân cho những người không thể b uild chúng từ nguồn.

+0

Vâng, có ý nghĩa. –

+0

Vâng, điều này rất có ý nghĩa. Nhưng tôi đang xây dựng một nhị phân, và từ đầu ra trên màn hình, gói có vẻ được cài đặt từ nguồn như một phần của quá trình này, nhưng nếu nguồn không được đóng gói trong một .tar.tệp gz, nguồn được cài đặt mà không bao gồm các họa tiết, ngay cả khi chúng có sẵn trong thư mục họa tiết trong "nguồn gói làm việc" của tôi dưới dạng tệp .pdf. Vì vậy, những gì tôi muốn biết là nếu có một cách để buộc các tệp vignettes được bao gồm trong tệp .zip khác với bằng cách sử dụng .tar.gz để cài đặt. –

+0

@PedroAphalo Bạn xây dựng mã zip như thế nào? – hadley

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