From: Ian S. <ian...@st...> - 2004-01-09 15:27:30
|
> -----Original Message----- > From: vxl...@li... > [mailto:vxl...@li...]On Behalf Of Edward C. > Jones > Sent: Friday, January 09, 2004 12:35 AM > To: vxl...@li... > Subject: [Vxl-users] Using shared libraries > > > I use gcc or g++ for compiling thing. There are usually "-I", > "-l", and > "-L" options. What should I use for these options if I am using VXL? > > What functions are in the many ".so" files that were output? Fot the include directories, you will need to use "-I$VXLSRC/vcl" and "-I$VXLSRC/core". If you are using one of the libraries in contrib, e.g. the spatial objects libary vsol in contrib/gel, then you need to add the relevant contrib directory, e.g. "-I%VXLSRC/contrib/gel" For the library directories, if you are using the default build settings, use "-L$VXLBIN/lib" For the libraries themselves, well that depends on what code you want to use. However it is easy to map function and class names to and from the relevent library. vnl_vector is in libvnl.so, vgl_point is in libvgl.so. Depending on what library you are using you may also have to link libraries it depends on - you will normally always have to link against vcl, i.e. "-lvcl". > Where is > this stuff documented? VXL itself is documented in http://paine.wiau.man.ac.uk/pub/doc_vxl/index.html We provide specific examples of how to use VXL from within another CMake project. http://paine.wiau.man.ac.uk/pub/doc_vxl/books/core/book.html#SEC135 This is the approach most people use. I guess it might be useful to explain how to link against VXL with other build systems. I'll add it in. > > I followed the instructions for compiling VXL. The source is in > /usr/local/src. The binaries etc. are in /usr/local/src/bin. Can I > rename the bin directory and move it to somewhere sensible like > /usr/local/bin? The only executables in $VXLBIN are tests and examples, so it wouldn't be all that useful to put them in /usr/local/bin. Ian. |