2011-10-27 12 views
8

Tôi đã tìm thấy thông cáo báo chí cho biết rằng Mono hiện hỗ trợ biên dịch cho khách hàng gốc. Nó không rõ ràng cho dù điều này chỉ có sẵn từ ngã ba mono github riêng biệt, hoặc là một phần của phân phối tiêu chuẩn.Có bất kỳ ví dụ nào về việc biên dịch mã C# bằng cách sử dụng Mono để exe có thể chạy với hỗ trợ khách hàng gốc của Google không?

Tôi đã tạo bản phân phối mono chia đôi, nhưng tôi không thể tìm thấy bất kỳ ví dụ nào về cách xây dựng ứng dụng khách gốc để có thể chạy trong Chrome.

Có ai biết về dự án mẫu hay bạn có thể cung cấp ví dụ về cách tạo ứng dụng Mono cho NaCl không?

Trả lời

4

Tôi nghĩ rằng một số thay đổi có thể đã được cập nhật, nhưng tính đến hôm nay (11/16/11), chắc chắn có các bản sửa lỗi vẫn chỉ nằm trong ngã ba github (https://github.com/elijahtaylor/mono/). Để xây dựng mono cho nacl, hãy làm theo các hướng dẫn trong thư mục mono/nacl (https://github.com/elijahtaylor/mono/tree/master/nacl). Bạn muốn thời gian chạy mono, mà sẽ xây dựng một mono có thể được nhúng vào trong mô-đun nacl của bạn và có thể biên dịch các assembly của JIT. (Ngoài ra còn có một trình biên dịch AOT mono chạy trên linux/mac và tạo ra các mô-đun nacl, nhưng tôi khá chắc chắn nó không hoạt động ngay bây giờ, như không ai đang sử dụng hoặc thử nghiệm nó).

Xem nacl/test/my.c và mono/mini/fsacheck.c để biết ví dụ về cách gọi thời gian chạy mono tới mã JIT từ mô-đun nacl của bạn. Bên trong trình duyệt, bạn sẽ phải tìm ra cách riêng của mình (ví dụ: tiêu và/hoặc nacl-mount) để lấy mã byte vào mô-đun nacl của bạn.

+0

có bất kỳ cập nhật nào về tình huống này không? –

+0

Không có nhiều hoạt động; những thay đổi x86 đã được đưa lên thượng nguồn nhưng không thay đổi ARM. Nó vẫn có thể xây dựng và sử dụng ngã ba nhưng tôi hy vọng sẽ có một vài vấn đề cần giải quyết. Nếu bạn quan tâm, bạn có thể thử và sau đó đặt câu hỏi cụ thể hơn tại đây hoặc trên [email protected] – Derek

3

Tôi không chắc rằng nó đã được truyền tải trực tiếp vào kho lưu trữ Mono, nhưng có một ngã ba chạy trên NaCl ở đây: https://github.com/elijahtaylor/mono Lưu ý, hãy tự chịu rủi ro!

3

This post từ tháng 3 năm 2012 chỉ ra rằng Chrome 19 đã hỗ trợ Native Client cho Embedded Mono

Các phiên bản của Mono cho Native Client đang có sẵn để tải về tại SDK. Chúng được biên dịch với glibc và libmono đến như là một thư viện động . Chỉ có hạt tiêu_19 trở lên mới có Mono. Lưu ý rằng bạn phải giữ các gói pepper_X và naclmono_X đồng bộ (ví dụ, không cập nhật cái mà không cập nhật cái kia) hoặc có thể bạn sẽ không thể chạy các nex được tạo ra. Các phiên bản mới của Mono mà khớp với một SDK nhất định sẽ khả dụng trong vài giờ sau khi có bản dựng SDK mới .

Chỉ Mono được nhúng mới được hỗ trợ trong Native Client hiện tại (http://www.mono-project.com/Embedding_Mono).