2015-11-20 21 views
1

我正在嘗試使用EDS(Evolution數據服務器)創建應用程序以顯示特定日期的日曆事件。我正在使用vala編寫代碼。E.CalView在Vala中的用法

我想我需要利用這裏的圖書館:http://valadoc.org/#!api=libecalendar-1.2/E.CalView

但是,我不能上手:

public class CalTest { 
    public static int main (string[] args) { 
    print("start"); 
    unowned E.CalClientView ccv = CalClientView.get_client(); 
    return 0; 
    } 
} 

拋出一個錯誤:

test.vala:3.9-3.9: error: The symbol `E' could not be found.

使用的編譯命令是:

valac --pkg gtk+-3.0 --pkg granite test.vala 
+0

你用什麼命令來編譯應用程序? – apmasell

+0

@apmasell編譯命令:valac --pkg gtk + -3.0 --pkg花崗岩test.vala –

回答

1

您需要編譯包含包含此名稱空間的程序包:--pkg libecalendar-1.2

它還需要安裝C開發包。它在Debian和Ubuntu上是evolution-data-server-dev,在Fedora上是evolution-data-server-devel

+0

非常感謝您的支持。我安裝了evolution-data-server-dev,並將編譯命令更改爲valac --pkg gtk + -3.0 --pkg granite --pkg libecalendar-1.2「test.vala」。但是,它仍然給出錯誤:錯誤:在指定的Vala API目錄或GObject-Introspection GIR目錄中找不到包'libecalendar-1.2'。我想我很近,可能在某個文件或目錄中缺少一個指針? –

+0

這個包顯然叫做'libecal1.2-dev',就像pkg-config文件'libecal-1.2.pc'一樣。 –

+0

似乎從GNOME 3.10的libecal包中刪除了vapi文件'libecalendar-1.2.vapi'(3.8仍然有,請參閱http://packages.ubuntu.com/precise/amd64/libecal1.2- dev/filelist) –