Hi Justin, > root [0] #include <boost/format.hpp> I recommend you actually generate a dictionary for this. Your first try could be root [] .L boost/format.hpp+ However this will not instantiate and expose all the needed templates. So you may also have create some file looking like (approximative class name): // Start of start.C #include <boost/format.hpp> #include <myclass.h> #ifdef __MAKECINT__ #pragma link C++ namespace boost; #pragma link C++ class boost::smart_ptr<myclass>; #pragma link C++ class myclass; #endif // End of start.C and do root [] .L start.C+ Cheers, Philippe -----Original Message----- From: Justin Findlay [mailto:findlay@cosmic.utah.edu] Sent: Thursday, March 11, 2004 2:05 PM To: Philippe Canal Cc: roottalk@pcroot.cern.ch Subject: Re: [ROOT] preprocessing 3rd party headers with CINT On Thu, Mar 11, 2004 at 09:56:06AM -0600, Philippe Canal wrote: > Hi Justin, > > Which problem do you still see __with__ the -p option? > Can you provide an example? The problem is that with or without the external preprocessing of source/header files enabled via '-p', the error message remains the same as if the '-p' option didn't actually cause CINT's preprocessing to defer to 'g++ -E'. $ root -p || root root [0] #include <boost/format.hpp> Error: G__getvariable: expression FILE:/usr/include/boost/config.hpp LINE:23 ... Limitation: can not handle macro BOOST_USER_CONFIG <boost/config/user.hpp> Use +P or -p option FILE:/usr/include/boost/config.hpp LINE:23 > PS. Also see Masa's talk at the recent ROOT User's Workshop on the subject of > 3rd party libraries. Thanks, that looks promising. I shall. Justin
This archive was generated by hypermail 2b29 : Sun Jan 02 2005 - 05:50:06 MET