Using CINT Functionality in Seperate Program

Hello,

I have a rather simple problem, which I fear my inexperience in programming design is causing. Simply put, I am working in a group developing a regression testing tool as part of a university project, and we want to incorporate some of the functionality of CINT in our own C++ program. I have read the FAQ about including my own functions in CINT, and including CINT in my own master program, but I fail to understand how to incorporate the functionality I need.

I have read about using makeCint and related material, but this talks about the generator of libraries, which I am not sure as necessary for the program we are working on. I have also read the functionality of using CINT as an API but do not understand how to import the CINT functions I need without occuring errors including undefined flags. The development is in Visual Studio 2010 but we can use Linux if necessary.

Sorry if this problem is extremely trivial, thank you for your time and help.

Hi,

We should be able to set you up with CINT. But to be honest I would prefer to do this with cling, see cern.ch/cling - this might make things a lot easier, if you are on the “right” platforms (currently notably excluding Windows).

The advantages are: it’s a regular C++ library with a small C++ header interface, and (much more important) it uses clang + llvm giving it things like full C++ powers and just in time compilation with native target info, i.e. the ability to dynamically call any function in any C or C++ library, natively, without the need of descriptions / wrappers (“dictionaries” produced by makecint).

What do we do - do you want to give it a try? You’d have the advantage of being an early adopter, getting a lot of our attention :wink:

Cheers, Axel.

Sure, I would be willing to give it a try, although your comment “notably excluding Windows” does concern me. Are you saying this should be developed in Linux? This is possible, I just didn’t expect there to be such a compatiability issue.

Will it be as easy as acquiring the files through Subversion and including them in the project during runtime? Because I have been trying to acquire the files over the last couple of days and have encountered some issues (attempting to use TortoiseSVN on Windows to download the files from Subversion, except my Windows Installer appears to have gone missing, preventing me from installing TortoiseSVN, but I digress).

Thanks for your time and help.

Hi,

Err - what do you mean with “at runtime”? cling is a program (or library) that you will probably want to build during the build time of your program, i.e. you link it in. Or am I misunderstanding something here? But if you meant to write “build time” then yes, sort of: you need to build cling, clang and llvm and link all of them into your program.

C++ ABI support for Windows is still being worked on in clang, for the time being only C works reliably.

Cheers, Axel.

[quote=“Axel”], if you are on the “right” platforms (currently notably excluding Windows).
[/quote]

What about Cygwin/gcc?

Thanks,
Charles

Hi Charles,

I honestly don’t know :slight_smile:

Cheers, Axel.