The recommended way to compile cssed plugins is using autotools, as it eases the configuration for different platforms.

cssed plugins compiles on MacOsX, Unix (BSD), Linux and Windows, it's easy to port cssed to any platform with glib2 and gtk+2 libraries.

To compile in BSD and OsX you need some extra packages, and it's up to you to set up your building environment.

In systems that can run the pkg-config utility, once installed cssed - at least 0.2.2 - you can use it to retrieve the compier flags. Use "pkg-config --cflags cssed" or "pkg-config --libs cssed" at your convenience. In some systems the pkg-config support files are located in a separate package called cssed-devel. The name may vary among distributions.

On windows you must download the file, containing header files, the cssed-win32 library you must use when linking your plugin, and this documentation among other utilities.

In MacOsX systems there's a different loadable modules system, and the compiler invocation differs from other systems such as Linux, BSD or Windows.

As example in Linux/Unix (BSD) you must pass to the compiler (gcc) in the linking stage "--shared -fPICS" to build a loadable module.

In MacOsX systems, you should use "-fno-common" at the compiling stage and "-bundle -flat_namespace -undefined suppress" at the linking stage.

You can download a - yet made - small plugin as the "quick search" plugin. and use it as an skeleton for your autotools project.

If you have any problems with this, you can search for help in the development mailing list. You can reach it, from

As example to compile the Hello World file, you can use (asuming the file's name is helloworld.c):

Unix/Linux with gcc

Compile: gcc -c `pkg-config --cflags cssed` helloworld.c -o helloworld.o

Link: gcc -shared -fPICS `pkg-config --libs cssed` helloworld.o -o


Compile: cc -c -fno-common `pkg-config --cflags cssed` helloworld.c -o helloworld.o

Link: cc -bundle -flat_namespace -undefined suppress helloworld.o -o

Microsoft compilers

To build on Windows with MVC++ - Visual Studio 6 - you should download the gtk development environment and create a Windows DLL project in msvc to build a Win32 Dynamic-Link Library.

You may add gtk and cssed libraries and include their directories on your projects, and you should also link it with the cssed_win32 library provided in

If you're in trouble request for help in cssed's mailing list or forums at

[ Previous | Main Page | Next ]

Back to Index

This documentation is © Iago Rubio Sanfiz, 2004