From: Nicolas C. <nic...@gm...> - 2013-09-04 18:54:04
|
Hi, I noticed a certain discrepancy between the code generated by dbusxx-xml2cpp and the include directory used to install the libdbus-c++ library. Basically, dbusxx-xml2cpp generates classes that include <dbus-c++/dbus.h> while the install script places the includes in /usr/local/include/dbus-c++-1/dbus-c++. This means that compiling a project using a freshly generated proxy or adaptor from dbusxx-xml2cpp will fail. If you want to distribute a project that builds adaptors and proxys from xml files, it means you either have to post process generated header files to prepend dbus-c++-1 to the #include, or add dbus-c++-1 directory to the includes search path (which could be in /usr/local/include, as installed by the make install script, or /usr/include if installed through debian package or other package managers I suspect, or in the user's home directory if they have an include dir in their home on their search path and install with prefix). I currently "fixed" this by adding a symbolic link from /usr/include/dbus-c++ to /usr/include/dbus-c++-1/dbus-c++ (install directory on debian using the libdbus-c++-dev package), but that's not exactly clean. I suspect dbus-c++-1 is version to allow having multiple multiple versions of the library installed at the same time, but I'm not too sure (a few other files files in /usr/include seem to be versionnned, but not all that many). What would the implication of changing the default headers install directory to .../include/dbus-c++ be? If the above is impossible, should the include be changed to <dbus-c++-1/dbus-c++/dbus.h>? Thanks, -- Nicolas Calderon |