Mandriva 2009

If you are using Mandriva 2009, you need install following mandatory packages:

If you want to use GUI and sidebar based on GTK library, you need following packages:

If you want to use GUI based on QT library, you need following packages:

If you want to build source code checked out from svn trunk, you also need following packages:

You can use urpmi to install these packages, for example:

#urpmi gcc-c++ zip flex desktop-file-utils shared-mime-info 
libltdl3-devel zlib1-devel libxml2-devel libdbus-1-devel libnm_util-devel
libstartup-notification-1-devel libgstreamer0.10-devel libgstreamer-plugins-base0.10-devel
libxulrunner-devel librsvg2-devel libcurl-devel libcairo-devel libgtk+2.0_0-devel
libqt4-devel autoconf automake libtool

Prepare build system

There are two different build systems can be used to build this project, autoconf/automake and cmake. Though cmake build system has been included in official source package since 0.10.3, it's still in experimental stage. So autoconf/automake is still the best choice for most users.

If you want to try out cmake build system, you need install cmake version 2.4 or above first. Most distributions ship cmake package nowadays.

If you want to build source code checked out from svn trunk, you need run autotools/bootstrap.sh script before starting build. For example:

$ svn checkout http://google-gadgets-for-linux.googlecode.com/svn/trunk/ ggl-trunk

$ cd ggl-trunk

$ sh autotools/bootstrap.sh

Build

autoconf/automake based build system is highly recommended for normal users. cmake build system usually uses less time to build this project, but may still contain some problems.

Both build systems support out-of-tree build, that is, the build task can be done in a separated directory instead of inside the source code directory. Then you can remove all temporary files generated by build system easily without touching the source files. This approach is highly recommended.

Build with autoconf/automake

Invoke configure script

You need run configure script to generate makefile before building. For example, you can use following commands to perform an out-of-tree build:

Prepare source code:

$ tar jxf google-gadgets-for-linux-0.10.3.tar.bz2

$ cd google-gadgets-for-linux-0.10.3

Or, if you want to use he bleeding-edge version:

$ svn checkout http://google-gadgets-for-linux.googlecode.com/svn/trunk/ ggl-trunk

$ cd ggl-trunk

$ sh autotools/bootstrap.sh

Run configure script out-of-tree:

$ mkdir build

$ cd build

$ ../configure --prefix=/usr

It might take one or two minutes to run configure script, if anything goes well, a configure summary will be displayed, such as:

Build options:

  Version                       "0.10.3"

  Install prefix                /usr

  Install included libltdl      no

  Build shared libs             yes

  Buildstatic libs             yes

  Enable debug                  no

  Host type                     linux

  OEM brand                    



 Libraries:

  GTK SVG Support               yes

  Build libggadget-gtk          yes

  Build libggadget-qt           yes

  Build libggadget-dbus         yes

  Build libggadget-npapi        yes



 Extensions:

  Build dbus-script-class       yes

  Build gtk-edit-element        yes

  Build gtkmoz-browser-element  yes

  Build qtwebkit-browser        no

  Build gst-audio-framework     yes

  Build gst-video-element       yes

  Build gtk-system-framework    yes

  Build gtk-flash-element       yes

  Build qt-system-framework     yes

  Build linux-system-framework  yes

  Build smjs-script-runtime     yes

  Build qt-script-runtime       no

  Build curl-xml-http-request   yes

  Build qt-xml-http-request     yes

  Build libxml2-xml-parser      yes



 Hosts:

  Build gtk host                yes

  Build qt host                 yes

The result might be different on different system. If some dependency libraries are missing, corresponding build option might be set to "no". For example, above result shows that my QT library may be too old to support qtwebkit-browser and qt-script-runtime extensions.

Among above results, The most important are "Build gtk host" and "Build qt host", if non of these options are "yes", then means some mandatory dependent packages might be missing. You need at least one host to be built.

The "--prefix" parameter of configure script controls the target directory where you want to install the project. Usually "/usr" is the best choice for normal users. However, default value is "/usr/local", and on some systems, it might not work properly. So "--prefix=/usr" is highly recommended for all users.

Besides "--prefix" parameter, there are some other parameters you might want to use:

It enables debug build, which will generate slower and larger binary but suitable for debugging. This option is not recommended for normal users.
Since 0.10.3, Google Gadgets for Linux support new APIs introduced in Google Desktop for Windows 5.8. The most important one is the "Full support for Flash", that is, a desktop gadget can play a .swf file from the internet directly. On Linux, it requires adobe flash browser plugin. This option specifies the directory where the flash plugin can be found. The directory might be different on different Linux distributions, for example:
  • On Ubuntu/Debian: /usr/lib/xulrunner-addons/plugins
  • On openSUSE: /usr/lib/browser-plugins (32bit system) or /usr/lib64/browser-plugins (64bit system)
  • On Fedora: /usr/lib/mozilla/plugins (32bit system) or /usr/lib64/mozilla/plugins (64bit system)
  • --libdir
Specifies the directory to install shared libraries. The default value is "${prefix}/lib". On 32bit Linux systems, this option can usually be omitted. But on 64bit Linux systems, the value are different on different systems. On Ubuntu/Debian, it has no difference between 32bit and 64bit systems. On openSUSE and Fedora, it shall be specified explicitly to ${prefix}/lib64, where ${prefix} is the directory specified by --prefix parameter. For example, if you are using openSUSE 11.0 64bit, then you need use following configure command:
$ ../configure --prefix=/usr --libdir=/usr/lib64 --with-browser-plugins-dir=/usr/lib64/browser-plugins
  • --help
To display a complete lists of parameters that you can use.


柴油发电机
发电机
柴油机
柴油发电机
13636374743(上海)
13291526067(嘉兴)