2013-03-07 31 views
8

Tôi đang tạo các ràng buộc cho Xamarin.Mac/MonoMac. Tôi muốn nhúng dylib vào số dll được tạo như được thực hiện trên Xamarin.iOS với thuộc tính [LinkWith].Nhúng dylib vào Xamarin.Mac binding dll

Có thể thực hiện điều đó không? nếu vậy thì sao? Hoặc tôi có nên tải dylib từ ứng dụng tiêu thụ không? một lần nữa trong trường hợp này, làm thế nào?

tôi đã cố gắng: - thả dylib trong Tài liệu tham khảo Native thư mục (không hoạt động) - thêm một thuộc tính [assembly: MonoMac.RequiredFramework] (không tìm thấy dylib)

+0

Bạn đã bao giờ hình dung t làm thế nào để làm điều này? Tôi có .dylib hoặc một số .a mà tôi muốn đưa vào dự án XamMac của mình. Thêm vào thư mục Tài liệu tham khảo gốc dường như hoàn toàn không có gì ... – tofutim

+0

@migueldeicaza đã từng nói "chúng tôi đang làm việc với nó" –

Trả lời

5

tôi quản lý để nạp .dylib từ việc áp dụng tiêu thụ bằng cách làm như sau:

  • Thêm .dylib để dự án của bạn như Content
  • thêm RequiredFrameworkAttribute:
[assembly: MonoMac.RequiredFramework("mylib.dylib")] 
  • đăng ký lắp ráp từ AppDelegate constructor:
public partial class AppDelegate : NSApplicationDelegate 
    { 
     public AppDelegate() 
     { 
      Type t = typeof(ATypeFromTheAssembly); 
      MonoMac.ObjCRuntime.Runtime.RegisterAssembly (t.Assembly); 
     } 
    } 

Đó vẫn không nhúng .dylib trong các ràng buộc lắp ráp, nhưng nó đủ điều kiện dưới dạng tiến trình

+0

Tôi đã cố gắng để có được libz.dylib để có được bao gồm - nhưng tôi nghĩ rằng vấn đề là libz là Fat (có cả i386 và x86_64). – tofutim