2015-07-21 32 views
11

Giả sử tôi viết một số mã Haskell và biên dịch nó trong cài đặt Ubuntu 64 bit, liên kết tĩnh tất cả các gói Haskell và thư viện c. Liệu kết quả có tương thích nhị phân với bất kỳ bản phân phối Linux 64 bit nào khác không?Khả năng tương thích nhị phân Haskell

+1

Nó phải là, xem ví dụ: http://stackoverflow.com/a/10549484/477476 và http://stackoverflow.com/a/5953787/477476 – Cactus

+0

Wow, nhị phân có kết quả từ 'ghc -02 test.hs -optl-static -optl-pthread 'là khoảng 2,5 GB (test.hs chứa' main = print "yes" '). –

+1

thực sự là 2,5MB. Ai đó không thể đọc đầu ra 'ls' haha –

Trả lời

1

Có, vì liên kết tĩnh - tất cả đều ở dạng nhị phân. Và có, họ có thể nhận được khá lớn, ví dụ như một đầu ra yesod có thể dễ dàng rất nhiều đến 70MB. Tuy nhiên, nó có một máy chủ HTTP trong đó 70 MB.

Vì vậy, liên kết tĩnh do đó có thể giúp tính di động, nhưng có nhược điểm về kích thước tệp thực thi.

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