Tôi đang cố gắng thực hiện các bước đầu tiên của mình trong C# và muốn xây dựng một cửa sổ GTK trống làm nhiệm vụ đầu tiên của mình. Via macports
Tôi đã cài đặt các gói sau:Mono trên OSX: Không thể tìm thấy gtksharpglue-2.dll
tôi cũng sử dụng MonoDevelop từ trang chủ Mono.
Tôi đã thêm gtk-sharp.dll
(từ /opt/local/lib/mono/gtk-sharp-2.0
) vào tài liệu tham khảo của mình. Mã của tôi trông như thế này:
using System;
using Gtk;
namespace lolbr_client
{
class MainClass
{
public static void Main (string[] args)
{
Console.WriteLine("Loading..");
Window window = new Window("test");
}
}
}
Khi tôi biên dịch và chạy mà đoạn mã, có vẻ như để tìm và bao gồm GTK-thư viện, nó in "Loading .." vào giao diện điều khiển, nhưng dòng sau Console.WriteLine()
nguyên nhân lỗi này:
System.DllNotFoundException: gtksharpglue-2
at (wrapper managed-to-native) Gtk.Container:gtksharp_gtk_container_get_focus_child_offset()
at Gtk.Container..cctor() [0x00000] in <filename unknown>:0
trong khi đó .dll cụ thể không tồn tại trên hệ thống tập tin của tôi, một cách nhanh chóng locate gtksharpglue-2
tiết lộ các tập tin sau đây:
/Library/Frameworks/Mono.framework/Versions/2.10.9/lib/libgtksharpglue-2.so
/opt/local/lib/libgtksharpglue-2.a
/opt/local/lib/libgtksharpglue-2.la
/opt/local/lib/libgtksharpglue-2.so
Những tệp đó có giúp tôi không? Các bước tiếp theo từ đây để gỡ lỗi/sửa lỗi này là gì? Tôi đã tìm kiếm trên Google nhưng tôi quá mới với chủ đề này để nhận ra thông tin hữu ích hoặc thông tin hữu ích không tồn tại. Ai đó có thể giúp tôi? Cảm ơn trước!
các dllmaps này nên đi kèm với gtk-sharp, hãy cẩn thận để tìm nguyên nhân gốc của vấn đề để chúng tôi khắc phục vấn đề này cho nhà phát triển tiếp theo? – knocte
@knocte Tôi sẽ xem xét nó. Tôi loại giả định rằng các phụ thuộc như 'glib' sẽ được cấu hình sau khi cài đặt, vì vậy có lẽ đây là nơi mà vấn đề là. Bạn có phải là nhà phát triển Mono hoặc gtk-sharp không? – Fabian
vâng tôi đã đóng góp cho cả hai – knocte