ROOT old and new version compatibilities


I wanted to know if there is a possibility to generate the project which is pretty old (uses root version 3 and old DSPACK), with the new cmake and new version of root ???

Thanks a lot,

Hi @adaribay ,

Could you be more explicit with the context you present? Maybe you have some repository with a cmake project to share?
In any case, between ROOT 3 and current ROOT 6 there has been a very wide series of changes, so if not anything else, your project will need to adjust to different interfaces, functions, libraries that have been developed meanwhile.


Hello, Vincenzo

Thank you for your assistance!

So, basically, what I’m trying to achieve is to generate the library from the source codes which use the older version of root and dspack. The older version of project is done using MakeFile. I prefer go with CMake due to its easiness. Somehow, I managed to switch off the usage of dspack within my CMakeLists.txt, because the installation of dspack is really problematic, and in the files that I’ve explored there is not that much use of dspack functionality. So the remaining problem is to generate the lib with the newest version of root. My code compiles, but the problem appears with the linker.

Some errors appear to be with the customized Streamer(TBuffer& ) method. I’ve tried to somehow fix this problem, but when I did, other problems appeared. So, right now I have no idea what might be wrong. Suspect that it’s related to version compatibility ??? (deprecated macros, methods, etc. maybe ?)

I’m attaching the whole directory for you to have a better understanding, there is the CMakeLists.txt in the root directory. What I’m trying to do there is to create first the root dictionary from the headers and then somehow include the dictionary to the library.

For the information: I’m trying to do it in MacOS with Clang compiler.

Any help would be greatly appreciated, so I can read the old data files that uses these packages.

Aizat (69.4 KB)

Dear Aizat,

The jump between ROOT 3 (2004) and now is huge, that was the time of Pentium IV and Windows XP ! However, don’t worry: we guarantee that old ROOT files can be readable with more recent ROOT versions.

My proposal would be to come back to the forum with specific questions which may come up during the porting you would like to accomplish, well scoped and supported by minimal demonstrators where necessary.

I am sure that through this approach we’ll be able to help you out!


Some errors appear to be with the customized Streamer(TBuffer& ) method.

What would the actual error message?

but when I did, other problems appeared.

What exact problem?

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.