[Digikam-devel] digikam libs questions
Andi Clemens
andi.clemens at gmx.net
Sat Oct 25 14:14:02 BST 2008
Gilles asked me to send this mail to the ML...
Hi,
I used to program in python all the time, so I'm still quite confused by the
libs mechanism in C++.
I understand that some of the .o files are packed into library files (to save
space and make things easier) and some header files are stored
in /usr/include/digikam to actually access those libs from the program the
libs will be used in.
But what are those DIGIKAM_EXPORT macros for? They seem to be in nearly every
class although not every class seems to be exported into libs (or at least no
header files exist in /usr/include/digikam).
Do they signal gcc to pack those object files into libraries?
I found out that in the main CMakeLists.txt (in digikam root) there are a lot
of libs defined, but in the end only a few of them are actually installed
in /usr/lib. For example we define a libhaar, but I can't find it anywhere.
Maybe those questions are stupid, but I want to understand completely what we
are doing here (in Cmake and in the code as well).
For example my histogrambox widget: I just used copy and paste for it, because
I didn't know what to do at this moment. So it has an EXPORT macro in front
of the class and it also becomes installed in /usr/include, but I guess we
don't need this widget the be accessed from outside of digiKam. So I could
remove it from the INSTALL rule in the CMake file. But if I do so, do I have
to remove the EXPORT macro as well or do I have to keep it.
Andi
More information about the Digikam-devel
mailing list