MacPorts: Tiếp tục cài đặt các bản cập nhật khác sau khi xảy ra lỗi


12

Nói rằng tôi có các gói lỗi thời sau:

  • foo
  • quán ba
  • baz

Tôi muốn cập nhật càng nhiều càng tốt, vì vậy tôi cố gắng chạy:

sudo port -n -f upgrade outdated

Tuy nhiên, điều này không thành công với:

Error: org.macports.build for port foo returned: command execution failed
Please see the log file for port foo for details: ...

Làm thế nào tôi có thể làm cho macports cố gắng nâng cấp thanh và baz, nếu foo thất bại?

Nói chung, tôi muốn làm cho macports cố gắng cài đặt / nâng cấp các cổng khác nếu cài đặt / nâng cấp một số trong số chúng không thành công và chỉ tiếp tục.


Từ trang người đàn ông:

 -f       force mode (ignore state file)

 

 -n       don't upgrade dependencies (affects upgrade and install)

Chỉnh sửa: foo, bar & baz, là 3 cổng không liên quan, không phụ thuộc vào nhau theo bất kỳ cách nào.


Chỉnh sửa 2: Lần tới khi tôi chạy cổng này, các cổng lỗi thời có thể là a, b & c, thay vì foo, bar & baz, vì vậy tôi không thể mã hóa các cổng bị lỗi và tôi không thể làm:

sudo port update foo
sudo port update bar
sudo port update baz

Câu trả lời:


8

Các -pdường như làm việc cho tôi.

Từ trang hướng dẫn:

-p Mặc dù có bất kỳ lỗi nào gặp phải, hãy tiến hành xử lý nhiều
         cổng và lệnh.

Nhưng hãy xem sự thận trọng từ nhà phát triển MacPorts bên dưới .... Không nên sử dụng cờ này!
jvriesem

5

MacPorts dev ở đây; câu trả lời đúng cho câu hỏi của bạn là: bạn không.

Có một lý do tại sao MacPorts không cố gắng cài đặt gói khi không phụ thuộc vào việc xây dựng.

Câu hỏi chính xác này đã được thảo luận trong danh sách gửi thư của người dùng macports cách đây không lâu:


1
foo, bar & baz, là 3 cổng không liên quan, không phụ thuộc vào nhau theo bất kỳ cách nào.
Tyilo

1
Trong trường hợp đó, bạn luôn có thể cập nhật chúng theo cách thủ công, ví dụ baz nâng cấp cổng sudo, thanh nâng cấp cổng sudo, nâng cấp cổng sudo foo.
Clemens Lang

xem "chỉnh sửa 2" trong câu hỏi.
Tyilo

Đây phải là câu trả lời chính xác, nếu một nhà phát triển MacPorts nói chuyện với nó.
jvriesem

Đây có thể là một câu trả lời chấp nhận được nếu MacPorts sẽ không có gì ngoài ổn định. Thật không may, nhiều gói phụ thuộc vào rất nhiều thứ tùy chọn không thực sự cần thiết trong hầu hết các trường hợp và mỗi lần nâng cấp cổng thứ hai đều thất bại vì macports là một đống rác không ổn định.
Bachsau

5

Bạn cũng có thể chỉ định "lỗi thời và không foo" trong lệnh nâng cấp, thay vì chỉ "lỗi thời".


xem "chỉnh sửa 2" trong câu hỏi.
Tyilo

1

Xem xét một vé đóng cũ, một lỗi đã được sửa:

333 (lỗi phụ thuộc bị bỏ qua và cổng tiếp tục thử và cài đặt) - MacPorts

Nếu tôi hiểu chính xác: để tiếp tục theo dõi một thất bại, trong một số trường hợp, có thể bị lỗi.

Nói cách khác:

  • thật đúng đắn (ít rủi ro nhất) để không tiếp tục.

Phần tái bút: Tôi quá lười để đọc toàn bộ trang man (không tìm thấy trong menu Trợ giúp của Terminal, nhưng đó không phải là lý do). Theo lời khuyên từ ai đó trong irc://irc.freenode.net/#macportstôi quyết định để lại câu trả lời này.

nhập mô tả hình ảnh ở đây

Tôi không bao giờ nhận ra -plựa chọn. Cảm ơn Tyilo.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.