[Liblas-devel] naming in dotnet
Martin Rodriguez
mrodriguez at stereocarto.com
Mon Aug 18 02:56:47 EDT 2008
Hi:
Yesterday i was studying the naming convention in gtk and i was wrong
like mateus said. They key is in the static link in windows and the
link in linux which is the same, but the libraries are different.
This makes me think in implement a system like this:
- Compile the shared libraries
- Replace the shared library name in the CAPI api of c#
depending if we are in linux or windows.
- Compile the c# DLL.
- Move the shared library and the c# library to the same
folder.
Regards.
For if someone find interesting the convention of GTK between linux and
windows I write information in the next lines.
GOBJECT linux
libgobject-2.0.a libgobject-2.0.so (link) libgobject-2.0.so.0 (link)
libgobject-2.0.so.0.1600.4 (shared)
GOBJECT windows
libgobject-2.0.lib (static) libgobject-2.0.dll.a (static link)
libgobject-2.0-0.dll
CAIRO linux
libcairo.a (static) libcairo.so (link) libcairo.so.2.dll
(link) libcairo.so.2.17.3.dll (shared)
CAIRO windows
cairo.lib (static) libcairo.dll.a (static link) libcairo-2.dll (shared)
GLIB linux
libglib-2.0.a(static) libglib-2.0 (static link) libglib-2.0.so.0
(static link) libglib-2.0.so.0.1600.4 (shared)
GLIB windows
lib-2.0.lib(static) libglib-2.0.dll.a(static link)
libglib-2.0-0.dll(shared)
GTK names are totally different.
GTK+ linux
libgtk-x11-2.0.a libgtk-x11-2.0.so (link) libgtk-x11-2.0.so.0 (link)
libgtk-x11-2.0.so.0.1200.9 (shared)
GTK+ windows
libgtk-win32-2.0.lib libgtk-win32-2.0.a.dll (static link)
libgtk-win32-2.0-0.dll (shared)
GTKMM linux (gtk+ bindings to c++)
libgtkmm-2.4.a (static) libgtkmm-2.4.so (link)
libgtkmm-2.4.so.1(link) libgtkmm-2.4.so.1.0.30 (library)
GTKMM windows
libgtkmm-2.4-1.dll (shared)
pkgconfig solve the differences because in windows use the static link
which have the same version in a linux link. Besides you
have target variable which help a lot in some cases like gtk+2.0 for
example (win32-x11):
pkgconfig is a nice tool for developers. It comes integrated with anjuta
and you can use it in netbeans or code::blocks to multiplatform
programming.
http://pkg-config.freedesktop.org/wiki/
pkgconfig folder in ubuntu and debian:
/usr/lib/pkgconfig
pkgconfig folder in windows:
c:\gtk\lib\pkgconfig
pkg file for gtk In linux:
____________________________________________________
prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
target=x11
gtk_binary_version=2.10.0
gtk_host=i486-pc-linux-gnu
Name: GTK+
Description: GIMP Tool Kit (${target} target)
Version: 2.12.9
Requires: gdk-${target}-2.0 atk cairo
Libs: -L${libdir} -lgtk-${target}-2.0
Cflags: -I${includedir}/gtk-2.0
____________________________________________________
pkg file for gtk in windows:
____________________________________________________
prefix=/target
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
target=win32
gtk_binary_version=2.10.0
gtk_host=i386-pc-mingw32
Name: GTK+
Description: GIMP Tool Kit (${target} target)
Version: 2.12.9
Requires: gdk-${target}-2.0 atk cairo
Libs: -L${libdir} -lgtk-${target}-2.0
Cflags: -I${includedir}/gtk-2.0 -mms-bitfields
____________________________________________________
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/liblas-devel/attachments/20080818/3a54fbac/attachment.html
More information about the Liblas-devel
mailing list