1. 安裝
在ubuntu下安裝很簡單,使用命令sudo apt-get install valac-0.16(12.04版本),測試valac編譯器的版本號,可以輸入valac --version命令。
2. HelloWorld程序
class Demo.HelloWorld : GLib.Object {
public static int main(string[] args)
{
stdout.printf("Hello, World\n");
return 0;
}
}
3. 編譯運行
編譯這個程序使用命令valac hello.vala,編譯成功之後生成hello這個可執行程序,運行這個程序,輸入結果爲:
Hello, World
通過運行valac --version這條命令我們可以看到,vala版本爲0.16.0,而最新的版本到了0.31.1,如果想要安裝最新的vala版本,可以通過源碼方式來安裝,使用git命令clone最新的vala源碼:
git clone git://git.gnome.org/vala
編譯這個源碼包是對環境有所要求的,其中就要求有valac,也就是說你必須要使用sudo apt-get install valac-0.16來安裝一個比較老的vala版本,然後才能安裝最新的版本。
進入到vala源碼包中,直接運行autogen.sh這個腳本來生成Makefile,然後以make && sudo make install方式來安裝,注意,默認是安裝在/usr/local目錄下的,好了,把之前用apt-get install命令安裝的vala給刪掉(當然不刪掉也是可以的),但是在運行valac命令時提示vala共享庫未找到,將vala共享庫放到/usr/lib中是可以的,以爲是/usr/local/lib爲加入到系統庫路徑中的原因,但是在/etc/ld.so.conf.d/libc.conf文件中找到了這麼一條/usr/local/lib,也就是說這個這個目錄是加入到了系統庫路徑中的,然後運行sudo
/sbin/ldconfig命令,卻提示下面的錯誤信息:
/sbin/ldconfig.real: /usr/local/lib/libvala-0.32.so.0 is not a symbolic link
通過比較發現libvala-0.32.so、libvala-0.32.so.0、libvala-0.32.so.0.0.0這三個文件是一樣的,好吧,將之前的libvala-0.32.so.0文件給刪掉,按照上面的那條錯誤指示運行一下下面這條命令:
sudo ln -s libvala-0.32.so libvala-0.32.so.0
然後再運行sudo /sbin/ldconfig命令,沒有提示上面的錯誤信息了。
最後運行一下valac --version命令,得到最新版本號爲:
0.31.1.11-094fd
參考:https://wiki.gnome.org/Projects/Vala/Hacking#C_Code_Generation
https://wiki.gnome.org/Projects/Vala/Tutorial