Project

General

Profile

Actions

Development #285

closed

Development #284: Bringing back TOF developments in trunk

Merging the tofgroup development branch in trunk

Added by Pierre-Alain Loizeau about 7 years ago. Updated almost 7 years ago.

Status:
Closed
Priority:
Normal
Target version:
Start date:
06/15/2015
Due date:
07/19/2015
% Done:

100%

Estimated time:
Spent time:

Description

This branch contains the software development thanks and for beamtime by the TOF group.

Merging by hand (history loss): KF, cbmbase, cbmdisplay, eventdisplay,
Merging by hand (history loss) with new beamtime folder: geometry, parameters

Normal merging if possible (history kept): tof
Normal merging (history kept): macro/tof/beamtime, unpack/tof (to go in beamtime/tof maybe?)


Related issues

Precedes CbmRoot - Development #286: Merging the tofcern15flib development branch in trunkClosedPierre-Alain Loizeau07/20/201508/07/2015

Actions
Actions #1

Updated by Pierre-Alain Loizeau about 7 years ago

  • % Done changed from 0 to 10
Actions #2

Updated by Pierre-Alain Loizeau about 7 years ago

  • % Done changed from 10 to 30
Actions #3

Updated by Pierre-Alain Loizeau about 7 years ago

  • % Done changed from 30 to 60
Actions #4

Updated by Pierre-Alain Loizeau about 7 years ago

Merging of the event display changes from rev. 7682 is not possible as this is a FAIRROOT folder. The revision was only introducing colorad X Y Z axis in the display.

Actions #5

Updated by Florian Uhlig about 7 years ago

This feature should be implemented in the FairRoot eventdisplay in near future. See https://fairroot-redmine.gsi.de/issues/75.

Actions #6

Updated by Pierre-Alain Loizeau about 7 years ago

  • Status changed from Assigned to Resolved
  • % Done changed from 60 to 90

Compilation works locally, will be fully done once a small fix on the roclight CMakeList.txt is done by Florian.

Actions #7

Updated by Pierre-Alain Loizeau about 7 years ago

  • Status changed from Resolved to Feedback
  • % Done changed from 90 to 80

More woork needed to:
- integrate rev. 7877 and 7878
- try to enable roclight by default while keeping beamtime linked to roc and both beamtime and roc under the special compilation flag
- merge into trunk

Actions #8

Updated by Pierre-Alain Loizeau about 7 years ago

  • Status changed from Feedback to In Progress
  • % Done changed from 80 to 70

Downgrade completion because RocLib is really problematic:
- new classes in Tof library need some classes from TofUnpack library
- TofUnpack library needs the Lmd and Mbs classes in FairRoot
- RocLib conflicts with the Lmd and Mbs libraries in FairRoot => need them disabled => need the BUILD_BEAMTIME flag
- beamtime library (non tof stuff) needs the full RocLib (rocLight too light)
=> No way for now to compile at the same time the tof folder with the new clusterizer and analysis and the beamtime folder

Actions #9

Updated by Pierre-Alain Loizeau about 7 years ago

  • Status changed from In Progress to Feedback
  • % Done changed from 70 to 80

Solved after improving the way switching is done on the BUILD_BEAMTIME flag. Now waiting for confirmation by TOF people that results obtains with the merged version are the same as with the original.

Actions #10

Updated by Pierre-Alain Loizeau almost 7 years ago

Results identical to the data unit (digi) level for unpacking, calibration and mapping.
For some yet unknown reason, the TestBeamClusterizer do not work in the merged version: all clusters have size 1 and the TOT gain is a factor ~2.4-2.5 bigger. This may be linked to some changes in the non-tof CbmRoot classes used there.
I checked for now CbmMatch and CbmLink and found no major differences between the versions used in the two cases.

Actions #11

Updated by Pierre-Alain Loizeau almost 7 years ago

  • Due date changed from 07/11/2015 to 07/19/2015
  • % Done changed from 80 to 90

Testing is done and provide identical results up the iter_calib.sh script.
Last things to do are synchronizing the macros and geometries and then merging with trunk.

Actions #12

Updated by Pierre-Alain Loizeau almost 7 years ago

  • Status changed from Feedback to In Progress
  • Assignee changed from Pierre-Alain Loizeau to Florian Uhlig

As far as I checked all needed transfers from the tofgroup folder are now done.
What is left is the real merge: bringing back all needed pieces in trunk.
A direct reintegration of the full folder cannot be done as it was not branched itself (in order to reduce the number of modified sub-folders)

A dry run of svn merge on each sub folder gives the following results:
- KF: 2*U (CMake and Linkdef), 4*A => OK
- beamtime: 1*U (CMake), 129*A => OK
- cbmbase: 2*U (CMake and Linkdef), 4*A => OK
- cbmdata: 9*U, 4*A => OK? ... unexpected U for mvd folder (property?)
- cbmdisplay: 2*U (CMake and Linkdef), 2*A => OK
- fles: No changes yet => OK, nothing to do
- geometry: 4*A => OK
- macro: 1*U, 297*A => OK
- parameters: 2*A => Ok
- run: No changes yet => OK, nothing to do
- tof: 11*U, 9*A => OK
- CMakeLists.txt: U => OK

Method:
1) fresh checkout of trunk
2) go in this copy
3) for each subfolder, enter "svn merge --reintegrate --dry-run https://subversion.gsi.de/cbmsoft/cbmroot/development/tofmerge/SUBFOLDER SUBFOLDER"

Actions #13

Updated by Pierre-Alain Loizeau almost 7 years ago

  • Assignee changed from Florian Uhlig to Pierre-Alain Loizeau

Following the name changes, these folders were done by hand:
- cbmbase => base
- cbmdata => data
- cbmdisplay => eventdisplay

Folders done with "merge reintegrate":
- beamtime
- geometry
- macro
- parameters
- tof
- CMakeLists.txt

Remaining folders to do with "merge reintegrate" (all ready):
- KF: 2*U (CMake and Linkdef), 4*A => OK

Actions #14

Updated by Pierre-Alain Loizeau almost 7 years ago

  • Status changed from In Progress to Resolved
  • Assignee changed from Pierre-Alain Loizeau to Norbert Herrmann
  • % Done changed from 90 to 100

All merging is now done.
As soon as we have confirmation from Heidelberg that execution and results are also good, issue will be closed.

Actions #15

Updated by Pierre-Alain Loizeau almost 7 years ago

Error report from Jordan Bendarouach:

Dear Mr. Loizeau,

I am writing you this email, because when I recently updated my source
folder (trunk) of CbmRoot, I got an error linked to a Tof folder.
I tried to solve this with my colleagues from the rich group, but we
did not succeed.

I have reinstalled the whole fair/cbm-root setup. I used for fairsoft
the version jul15p2 and for FairRoot the version v.15.07. I am running
the simulations on a laptop, with the linux distribution (Ubuntu 14.10
- 64 bits).

After calling make inside the build folder for the installation of
cbmroot, I got the following error message:

Error: cannot open file "gnu/stubs.h" /usr/include/features.h:399:
Error: cannot open file "bits/wchar.h" /usr/include/stdint.h:27:
Error: cannot open file "bits/wordsize.h" /usr/include/stdint.h:28:
Warning: Error occurred during reading source files
Warning: Error occurred during dictionary source generation
!!!Removing
/home/jordan/Documents/CbmRoot/Cbm_Root/build_jul15p2_v-15.07/beamtime/tof/G__TofUnpackDict.cxx /home/jordan/Documents/CbmRoot/Cbm_Root/build_jul15p2_v-15.07/beamtime/tof/G__TofUnpackDict.h
!!!
Error:
/home/jordan/Documents/CbmRoot/External_Packages/Install_jul15p2/bin/rootcint:
error loading headers...
beamtime/tof/CMakeFiles/TofUnpack.dir/build.make:111: recipe for
target 'beamtime/tof/G__TofUnpackDict.cxx' failed
make[2]: *** [beamtime/tof/G__TofUnpackDict.cxx] Error 1
CMakeFiles/Makefile2:4066: recipe for target
'beamtime/tof/CMakeFiles/TofUnpack.dir/all' failed
make[1]: *** [beamtime/tof/CMakeFiles/TofUnpack.dir/all] Error 2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2

I tried to comment the line calling /beamtime/tof from the
CMakeLists.txt file inside the source directory (as I do not need this
for my simulations) and I got this error:

Linking CXX shared library ../lib/libTof.so
/usr/bin/ld: ne peut trouver -lTofUnpack
collect2: error: ld returned 1 exit status
tof/CMakeFiles/Tof.dir/build.make:612: recipe for target
'lib/libTof.so.0.0.0' failed
make[2]: *** [lib/libTof.so.0.0.0] Error 1
CMakeFiles/Makefile2:1963: recipe for target
'tof/CMakeFiles/Tof.dir/all' failed
make[1]: *** [tof/CMakeFiles/Tof.dir/all] Error 2
make[1]: *** Attente des tâches non terminées....
Linking CXX shared library ../lib/libRun.so
[ 59%] Built target Run
Makefile:123: recipe for target 'all' failed
make: *** [all] Error 2

Do you know how to solve this? I have used the gcc compiler version 4.9.1.
And what is the problem with those files:
Error: cannot open file "gnu/stubs.h" /usr/include/features.h:399:
Error: cannot open file "bits/wchar.h" /usr/include/stdint.h:27:
Error: cannot open file "bits/wordsize.h" /usr/include/stdint.h:28:

???

Thank you for your help.

For the first point, my feeling is that this is due to some problem on the gcc installation: the error come from the inclusion of stdint in tdc/get4/TGet4v1Rec.h (l.35), tdc/get4/TTofGet4Unpacker.h (l.47) and tdc/get4/TGet4v1Event.h (l.56).
For some reason gcc doe not manage to find other headers related to the system dependent implementation.
stdint is a C standard library and there should be no reason for such a crash. From what I remember this is a problem which happens with some versions of Ubuntu, where the path of libraries is not 100% system independent (especially between x86 and amd64).
Some solutions I found after googling are:
1) Try installing the stdlibc-dev package (sudo apt-get install stdlibc-dev-i386 on Ubuntu).
2) If you still recieve an error about standard C libraries, such as ofstream, you should install libc6-dev.
3) Also, installing g++-multilibs has been shown to help => that worked for me on Ubuntu 10.10

For the second point, the TofUnpack is now required for the compilation of part of the TOF main software, therefore it cannot be easily removed.

Actions #16

Updated by Pierre-Alain Loizeau almost 7 years ago

  • Status changed from Resolved to Closed
  • Assignee changed from Norbert Herrmann to Pierre-Alain Loizeau
Actions

Also available in: Atom PDF