Compile workrave under windows – My exprience 在Windows上編譯Workrave

這是我第一次在Windows上編譯*nix程序,下載工具時,最開始按Windows的習慣分別安裝到不同文件夾,後來發現那樣很麻煩。因爲每個Unix庫的文件組織方式就已經包含了bin, include, lib, share, doc等文件夾,並且上述文件夾中還有庫的子目錄。

所以大家一定要接收教訓,把gtkmm, gettext, intltool之類的全部安裝到一個文件夾,例如:D:/GnuWin32/devel。可能有的人還沒看明白,打出我安裝後的目錄樹(見文章最後面“list of D:/GnuWin32/”章節)。

 

開始還走彎路以爲要安裝MSYS + MinGW或cygwin之類的,搗騰了好久。而實際上使用cmake可以生成VC8的工程文件,直接用VC8編譯即可。

 

This document gives some hints on how to compile Workrave on Windows
using Microsoft Visual Studio (2008 Express Edition).

The minimal requirement is gtkmm, Directx SDK and cmake.

Only networking is currently not easy to build on Windows.

Install Gtkmm (required)
========================

- Download and install gtkmm:

  File: ftp://ftp.gnome.org/pub/GNOME/binaries/win32/gtkmm/2.16/gtkmm-win32-devel-2.16.0-4.exe

  Install to <PATH-TO-DEPEDENCIES>. eg. D:/GnuWin32/devel

Install DirectX SDK (required)
=============================

- Download and install DirectX 9 SDK:

  Site: http://msdn.microsoft.com/en-us/directx/default.aspx

  Install to <WHEREEVER-YOU-WANT>

Install CMake 2.6 (required)
============================

- Download and install cmake:

  Website: http://www.cmake.org
  File: http://www.cmake.org/files/v2.6/cmake-2.6.4-win32-x86.exe

  Install to <WHEREEVER-YOU-WANT>. eg. D:/Development/CMake 2.6

Install Intltool (recommended, needed for exercises)
====================================================

- Download and Install Strawberry Perl
  ActiveState may also work (untested)

  Website: http://strawberryperl.com/
  File: http://strawberry-perl.googlecode.com/files/strawberry-perl-5.10.0.6.msi

  Install to C:/strawberry (It’s hard-coded, there is now way to change)

- Download and extract intltool

  File: http://ftp.gnome.org/pub/gnome/binaries/win32/intltool/0.40/intltool_0.40.4-1_win32.zip

  Extract to <PATH-TO-DEPEDENCIES>. eg. D:/GnuWin32/devel

Install Gettext (recommended, needed for localization and exercises)
====================================================================

- Download and extract Gettext

  File: http://ftp.gnome.org/pub/GNOME/binaries/win32/dependencies/gettext-tools-0.17.zip

  Extract to <PATH-TO-DEPEDENCIES>. eg. D:/GnuWin32/devel

  Note: You may run into problems (access denied and such) if you
  extract the files with unzip from cygwin; use Windows built-in zip
  support.

Install Python/Cheetah (optional/experimental, needed for dbus)
===============================================================

- Download and Install Python 2.5.2

  Install the x86 version, even on a 64bit systems. setuptool will not install otherwise.

  Website: http://www.python.org/download/
  File: http://www.python.org/ftp/python/2.6.2/python-2.6.2.msi
  File: http://www.python.org/ftp/python/2.6.2/python-2.6.2.amd64.msi

- Download and install setuptools

  Website: http://pypi.python.org/pypi/setuptools
  File:  http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c9.tar.gz

  - Extract setuptools-0.6c9.tar.gz to directory outside the Windows Python installation directory
  - Open Command Prompt windows and go to the directory where you extracted setuptools.
  - Make sure C:/Python26 is in your PATH
  - Run 'python setup.py install'
- Install Cheetah

  - Open a Command Prompt (Use Run as Administrator on Vista)
  - cd C:/Python26/Scripts [replace python installation directory]
  - Run 'easy_install-2.6-script.py'

Install DBus (optional/experimental, needed for dbus)
=====================================================

- Download and extract libiconv

  File: http://ftp.gnome.org/pub/GNOME/binaries/win32/dependencies/libiconv-1.9.1.bin.woe32.zip

  Extract to <PATH-TO-DEPEDENCIES>.
- Download, compile and install DBUS:

  - svn co https://windbus.svn.sourceforge.net/svnroot/windbus/trunk windbus
  - mkdir windbus-build
  - cd windbus-build
  - Run cmake

    cmake -G "Visual Studio 9 2008" ../windbus/cmake/ -DCMAKE_PREFIX_PATH="<PATH-TO-DEPEDENCIES>;<PATH-TO-GTKMM>"
          -DCMAKE_INSTALL_PREFIX=<PATH-TO-DEPEDENCIES>

    e.g.
    cmake -G "Visual Studio 9 2008" ../windbus/cmake/ -DCMAKE_PREFIX_PATH="c:/mystuff/devel;C:/Program Files (x86)/gtkmm"
          -DCMAKE_INSTALL_PREFIX=c:/mystuff/devel

  - Open dbus solution in visual studio (location in windbus-build directory)
  - Select Release configuration
  - From Build menu, choose rebuild solution
  - Right click on INSTALL project, choose build
  - Select Debug configuration
  - From Build menu, choose rebuild solution
  - Right click on INSTALL project, choose build

msinttypes (ISO C9x compliant stdint.h and inttypes.h for Microsoft Visual Studio)
===========================================================================

- Download and install msinttypes:

  Website: http://code.google.com/p/msinttypes/

  File: http://code.google.com/p/msinttypes/downloads/detail?name=msinttypes-r26.zip

  Extract to <VC-INCLUDE-PATH>. eg. D:/Program Files/Microsoft Visual Studio 9.0/VC/include


Compiling Workrave
==================

- Download workrave
- mkdir workrave-build
- cd workrave-build

- PATH %PATH%;D:/Development/CMake 2.6/bin

- cmake -G "Visual Studio 9 2008" <PATH-TO-WORKRAVE-SOURCES>/build/cmake/
                 -DDEVELOPMENT_MODE=ON
                 -DCMAKE_PREFIX_PATH="PATH-TO-DEPEDENCIES" -DCMAKE_INSTALL_PREFIX="<INSTALL-DIRECTORY>

    Note: PATH-TO-DEPEDENCIES should contains all dependencies: gettext, dbus, intltool etc.

    eg. cmake -G "Visual Studio 9 2008" ../workrave/build/cmake/ -DDEVELOPMENT_MODE=ON
              -DCMAKE_PREFIX_PATH=D:/GnuWin32/devel -DCMAKE_INSTALL_PREFIX=D:/GnuWin32/programs/workrave

  - Open Workrave solution in visual studio (location in workrave-build directory)
  - Build

 

Others
======

if you see unresolved external symbols like egg_sm_client_xxx, you need to add <workrave>/frontend/gtkmm/src/eggsmclient.c to your workrave.vcproj project.

添加<workrave>/frontend/gtkmm/src/eggsmclient.c到workrave.vcproj工程中,否則會看到如下鏈接錯誤:

 

6>正在鏈接...
6>GUI.obj : error LNK2019: 無法解析的外部符號 _egg_sm_client_get_option_group,該符號在函數 "public: void __thiscall GUI::main(void)" (?main@GUI@@QAEXXZ) 中被引用
6>GUI.obj : error LNK2019: 無法解析的外部符號 _egg_sm_client_get,該符號在函數 "private: void __thiscall GUI::init_session(void)" (?init_session@GUI@@AAEXXZ) 中被引用
6>eggsmclient-win32.obj : error LNK2019: 無法解析的外部符號 _egg_sm_client_get_type,該符號在函數 _egg_sm_client_win32_get_type 中被引用
6>eggsmclient-win32.obj : error LNK2019: 無法解析的外部符號 _egg_sm_client_quit_requested,該符號在函數 _emit_quit_requested 中被引用
6>eggsmclient-win32.obj : error LNK2019: 無法解析的外部符號 _egg_sm_client_quit,該符號在函數 _emit_quit 中被引用
6>eggsmclient-win32.obj : error LNK2019: 無法解析的外部符號 _egg_sm_client_quit_cancelled,該符號在函數 _emit_quit_cancelled 中被引用
6>E:/Repository/Desktop_Environment/workrave.github.com/workrave-build/bin/Debug/workrave.exe : fatal error LNK1120: 6 個無法解析的外部命令

 

 

list of D:/GnuWin32/
==================

卷 PROGRAM 的文件夾 PATH 列表
卷序列號碼爲 0006EE50 6C97:9E44
D:.
├─devel
│  ├─bin
│  ├─contrib
│  │  └─tiff
│  │      └─3.8.2
│  ├─etc
│  │  ├─gtk-2.0
│  │  └─pango
│  ├─gtkmm-demo
│  ├─include
│  │  ├─atk-1.0
│  │  │  └─atk
│  │  ├─atkmm-1.6
│  │  │  └─atkmm
│  │  │      └─private
│  │  ├─cairo
│  │  ├─cairomm-1.0
│  │  │  └─cairomm
│  │  ├─gdkmm-2.4
│  │  │  └─gdkmm
│  │  │      └─private
│  │  ├─giomm-2.4
│  │  │  └─giomm
│  │  │      └─private
│  │  ├─glib-2.0
│  │  │  ├─gio
│  │  │  ├─glib
│  │  │  └─gobject
│  │  ├─glibmm-2.4
│  │  │  ├─glibmm
│  │  │  │  └─private
│  │  │  └─glibmm_generate_extra_defs
│  │  ├─gtk-2.0
│  │  │  ├─gdk
│  │  │  ├─gdk-pixbuf
│  │  │  └─gtk
│  │  ├─gtkmm-2.4
│  │  │  └─gtkmm
│  │  │      └─private
│  │  ├─libglade-2.0
│  │  │  └─glade
│  │  ├─libglademm-2.4
│  │  │  └─libglademm
│  │  │      └─private
│  │  ├─libxml
│  │  ├─libxml++-2.6
│  │  │  └─libxml++
│  │  │      ├─exceptions
│  │  │      ├─io
│  │  │      ├─nodes
│  │  │      ├─parsers
│  │  │      └─validators
│  │  ├─pango-1.0
│  │  │  └─pango
│  │  ├─pangomm-1.4
│  │  │  └─pangomm
│  │  │      └─private
│  │  └─sigc++-2.0
│  │      └─sigc++
│  │          ├─adaptors
│  │          │  ├─lambda
│  │          │  │  └─macros
│  │          │  └─macros
│  │          ├─functors
│  │          │  └─macros
│  │          └─macros
│  ├─lib
│  │  ├─gdkmm-2.4
│  │  │  └─include
│  │  ├─gettext
│  │  ├─giomm-2.4
│  │  │  └─include
│  │  ├─glib-2.0
│  │  │  └─include
│  │  ├─glibmm-2.4
│  │  │  ├─include
│  │  │  └─proc
│  │  │      ├─m4
│  │  │      └─pm
│  │  ├─gtk-2.0
│  │  │  ├─2.10.0
│  │  │  │  ├─engines
│  │  │  │  └─loaders
│  │  │  ├─include
│  │  │  └─modules
│  │  ├─gtkmm-2.4
│  │  │  ├─include
│  │  │  └─proc
│  │  │      └─m4
│  │  ├─libglademm-2.4
│  │  │  ├─include
│  │  │  └─proc
│  │  │      └─m4
│  │  ├─libxml++-2.6
│  │  │  └─include
│  │  ├─pkgconfig
│  │  └─sigc++-2.0
│  │      └─include
│  ├─manifest
│  ├─MSVC
│  ├─redist
│  └─share
│      ├─aclocal
│      ├─devhelp
│      │  └─books
│      │      ├─gtkmm-2.4
│      │      ├─libglademm-2.4
│      │      └─pangomm-1.4
│      ├─doc
│      │  ├─cairo_1.8.6-1_win32
│      │  ├─gettext
│      │  │  ├─csharpdoc
│      │  │  ├─examples
│      │  │  │  ├─build-aux
│      │  │  │  ├─hello-c
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-c++
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-c++-gnome
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-c++-kde
│      │  │  │  │  ├─admin
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-c++-qt
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-c++-wxwidgets
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-c-gnome
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-clisp
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-csharp
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-csharp-forms
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-gawk
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-guile
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-java
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-java-awt
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-java-qtjambi
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-java-swing
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-librep
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-objc
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-objc-gnome
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-objc-gnustep
│      │  │  │  │  └─po
│      │  │  │  ├─hello-pascal
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-perl
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-php
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-python
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-sh
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-smalltalk
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-tcl
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  ├─hello-tcl-tk
│      │  │  │  │  ├─m4
│      │  │  │  │  └─po
│      │  │  │  └─hello-ycp
│      │  │  │      ├─m4
│      │  │  │      └─po
│      │  │  └─javadoc2
│      │  │      └─gnu
│      │  │          └─gettext
│      │  ├─glib-2.20.0
│      │  ├─glib-dev-2.20.0
│      │  ├─glibmm-2.4
│      │  │  ├─docs
│      │  │  │  ├─images
│      │  │  │  └─reference
│      │  │  │      └─html
│      │  │  └─examples
│      │  │      ├─child_watch
│      │  │      ├─compose
│      │  │      ├─iochannel_stream
│      │  │      ├─keyfile
│      │  │      ├─markup
│      │  │      ├─options
│      │  │      ├─properties
│      │  │      ├─regex
│      │  │      └─thread
│      │  ├─gnomemm-2.6
│      │  │  └─libglademm-2.4
│      │  │      └─docs
│      │  │          └─reference
│      │  │              └─html
│      │  ├─gtk+-2.16.0
│      │  ├─gtk+-dev-2.16.0
│      │  ├─gtkmm-2.4
│      │  │  └─docs
│      │  │      ├─FAQ
│      │  │      │  └─html
│      │  │      ├─images
│      │  │      ├─reference
│      │  │      │  └─html
│      │  │      └─tutorial
│      │  │          ├─html
│      │  │          │  ├─figures
│      │  │          │  └─icons
│      │  │          └─icons
│      │  ├─libasprintf
│      │  ├─libcairomm-1.0
│      │  │  └─reference
│      │  │      └─html
│      │  ├─libiconv
│      │  ├─libsigc-2.0
│      │  │  └─docs
│      │  │      ├─images
│      │  │      ├─reference
│      │  │      │  └─html
│      │  │      └─tutorial
│      │  │          └─html
│      │  ├─libxml++-2.6
│      │  │  └─docs
│      │  │      ├─manual
│      │  │      │  └─html
│      │  │      └─reference
│      │  │          └─html
│      │  ├─pango-1.24.0
│      │  ├─pango-dev-1.24.0
│      │  └─pangomm-1.4
│      │      └─docs
│      │          ├─images
│      │          └─reference
│      │              └─html
│      ├─emacs
│      │  └─site-lisp
│      ├─gettext
│      │  ├─intl
│      │  ├─po
│      │  ├─projects
│      │  │  ├─GNOME
│      │  │  ├─KDE
│      │  │  └─TP
│      │  └─styles
│      ├─glib-2.0
│      │  └─gettext
│      │      └─po
│      ├─gtk-2.0
│      │  └─demo
│      ├─gtk-doc
│      │  └─html
│      │      ├─cairo
│      │      ├─gdk
│      │      ├─gdk-pixbuf
│      │      ├─glib
│      │      ├─gobject
│      │      ├─gtk
│      │      ├─libglade
│      │      └─pango
│      ├─info
│      ├─intltool
│      ├─locale
│      │  ├─af
│      │  │  └─LC_MESSAGES
│      │  ├─am
│      │  │  └─LC_MESSAGES
│      │  ├─ang
│      │  │  └─LC_MESSAGES
│      │  ├─ar
│      │  │  └─LC_MESSAGES
│      │  ├─as
│      │  │  └─LC_MESSAGES
│      │  ├─ast
│      │  │  └─LC_MESSAGES
│      │  ├─az
│      │  │  └─LC_MESSAGES
│      │  ├─az_IR
│      │  │  └─LC_MESSAGES
│      │  ├─be
│      │  │  └─LC_MESSAGES
│      │  ├─be@latin
│      │  │  └─LC_MESSAGES
│      │  ├─bg
│      │  │  └─LC_MESSAGES
│      │  ├─bn
│      │  │  └─LC_MESSAGES
│      │  ├─bn_IN
│      │  │  └─LC_MESSAGES
│      │  ├─br
│      │  │  └─LC_MESSAGES
│      │  ├─bs
│      │  │  └─LC_MESSAGES
│      │  ├─ca
│      │  │  └─LC_MESSAGES
│      │  ├─ca@valencia
│      │  │  └─LC_MESSAGES
│      │  ├─crh
│      │  │  └─LC_MESSAGES
│      │  ├─cs
│      │  │  └─LC_MESSAGES
│      │  ├─cy
│      │  │  └─LC_MESSAGES
│      │  ├─da
│      │  │  └─LC_MESSAGES
│      │  ├─de
│      │  │  └─LC_MESSAGES
│      │  ├─dz
│      │  │  └─LC_MESSAGES
│      │  ├─el
│      │  │  └─LC_MESSAGES
│      │  ├─en@boldquot
│      │  │  └─LC_MESSAGES
│      │  ├─en@quot
│      │  │  └─LC_MESSAGES
│      │  ├─en_CA
│      │  │  └─LC_MESSAGES
│      │  ├─en_GB
│      │  │  └─LC_MESSAGES
│      │  ├─eo
│      │  │  └─LC_MESSAGES
│      │  ├─es
│      │  │  └─LC_MESSAGES
│      │  ├─et
│      │  │  └─LC_MESSAGES
│      │  ├─eu
│      │  │  └─LC_MESSAGES
│      │  ├─fa
│      │  │  └─LC_MESSAGES
│      │  ├─fi
│      │  │  └─LC_MESSAGES
│      │  ├─fr
│      │  │  └─LC_MESSAGES
│      │  ├─ga
│      │  │  └─LC_MESSAGES
│      │  ├─gl
│      │  │  └─LC_MESSAGES
│      │  ├─gu
│      │  │  └─LC_MESSAGES
│      │  ├─he
│      │  │  └─LC_MESSAGES
│      │  ├─hi
│      │  │  └─LC_MESSAGES
│      │  ├─hr
│      │  │  └─LC_MESSAGES
│      │  ├─hu
│      │  │  └─LC_MESSAGES
│      │  ├─hy
│      │  │  └─LC_MESSAGES
│      │  ├─ia
│      │  │  └─LC_MESSAGES
│      │  ├─id
│      │  │  └─LC_MESSAGES
│      │  ├─io
│      │  │  └─LC_MESSAGES
│      │  ├─is
│      │  │  └─LC_MESSAGES
│      │  ├─it
│      │  │  └─LC_MESSAGES
│      │  ├─ja
│      │  │  └─LC_MESSAGES
│      │  ├─ka
│      │  │  └─LC_MESSAGES
│      │  ├─kn
│      │  │  └─LC_MESSAGES
│      │  ├─ko
│      │  │  └─LC_MESSAGES
│      │  ├─ku
│      │  │  └─LC_MESSAGES
│      │  ├─li
│      │  │  └─LC_MESSAGES
│      │  ├─lt
│      │  │  └─LC_MESSAGES
│      │  ├─lv
│      │  │  └─LC_MESSAGES
│      │  ├─mai
│      │  │  └─LC_MESSAGES
│      │  ├─mg
│      │  │  └─LC_MESSAGES
│      │  ├─mi
│      │  │  └─LC_MESSAGES
│      │  ├─mk
│      │  │  └─LC_MESSAGES
│      │  ├─ml
│      │  │  └─LC_MESSAGES
│      │  ├─mn
│      │  │  └─LC_MESSAGES
│      │  ├─mr
│      │  │  └─LC_MESSAGES
│      │  ├─ms
│      │  │  └─LC_MESSAGES
│      │  ├─nb
│      │  │  └─LC_MESSAGES
│      │  ├─ne
│      │  │  └─LC_MESSAGES
│      │  ├─nl
│      │  │  └─LC_MESSAGES
│      │  ├─nn
│      │  │  └─LC_MESSAGES
│      │  ├─nso
│      │  │  └─LC_MESSAGES
│      │  ├─oc
│      │  │  └─LC_MESSAGES
│      │  ├─or
│      │  │  └─LC_MESSAGES
│      │  ├─pa
│      │  │  └─LC_MESSAGES
│      │  ├─pl
│      │  │  └─LC_MESSAGES
│      │  ├─ps
│      │  │  └─LC_MESSAGES
│      │  ├─pt
│      │  │  └─LC_MESSAGES
│      │  ├─pt_BR
│      │  │  └─LC_MESSAGES
│      │  ├─ro
│      │  │  └─LC_MESSAGES
│      │  ├─ru
│      │  │  └─LC_MESSAGES
│      │  ├─rw
│      │  │  └─LC_MESSAGES
│      │  ├─si
│      │  │  └─LC_MESSAGES
│      │  ├─sk
│      │  │  └─LC_MESSAGES
│      │  ├─sl
│      │  │  └─LC_MESSAGES
│      │  ├─sq
│      │  │  └─LC_MESSAGES
│      │  ├─sr
│      │  │  └─LC_MESSAGES
│      │  ├─sr@ije
│      │  │  └─LC_MESSAGES
│      │  ├─sr@latin
│      │  │  └─LC_MESSAGES
│      │  ├─sv
│      │  │  └─LC_MESSAGES
│      │  ├─ta
│      │  │  └─LC_MESSAGES
│      │  ├─te
│      │  │  └─LC_MESSAGES
│      │  ├─th
│      │  │  └─LC_MESSAGES
│      │  ├─tk
│      │  │  └─LC_MESSAGES
│      │  ├─tl
│      │  │  └─LC_MESSAGES
│      │  ├─tr
│      │  │  └─LC_MESSAGES
│      │  ├─tt
│      │  │  └─LC_MESSAGES
│      │  ├─uk
│      │  │  └─LC_MESSAGES
│      │  ├─ur
│      │  │  └─LC_MESSAGES
│      │  ├─uz
│      │  │  └─LC_MESSAGES
│      │  ├─uz@cyrillic
│      │  │  └─LC_MESSAGES
│      │  ├─vi
│      │  │  └─LC_MESSAGES
│      │  ├─wa
│      │  │  └─LC_MESSAGES
│      │  ├─xh
│      │  │  └─LC_MESSAGES
│      │  ├─yi
│      │  │  └─LC_MESSAGES
│      │  ├─zh_CN
│      │  │  └─LC_MESSAGES
│      │  ├─zh_HK
│      │  │  └─LC_MESSAGES
│      │  └─zh_TW
│      │      └─LC_MESSAGES
│      ├─man
│      │  ├─man1
│      │  ├─man3
│      │  └─man8
│      ├─themes
│      │  ├─Default
│      │  │  └─gtk-2.0-key
│      │  ├─Emacs
│      │  │  └─gtk-2.0-key
│      │  ├─MS-Windows
│      │  │  └─gtk-2.0
│      │  └─Raleigh
│      │      └─gtk-2.0
│      └─xml
│          └─libglade
└─programs

 

原文鏈接:http://blog.csdn.net/linlu11/archive/2010/05/16/5597087.aspx

來自 劉德 的博客

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章