Project

General

Profile

Support #16189

Support #16096: Fix problems found when attempting to build with gcc 6.3.0

problem building uboonecode/uboone/CalData/NoiseFilterAlgs with gcc 6.3.0

Added by Lynn Garren over 3 years ago. Updated over 3 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
-
Target version:
-
Start date:
04/12/2017
Due date:
% Done:

100%

Estimated time:
Spent time:
Experiment:
MicroBooNE
Co-Assignees:
Duration:

Description

Both uboone/CalData/NoiseFilterAlgs/RawDigitCorrelatedCorrectionAlg.cc and uboone/CalData/NoiseFilterAlgs/RawDigitFFTAlg.cxx contain variable length arrays.

Changes required to fix uboone/CalData/NoiseFilterAlgs/RawDigitCorrelatedCorrectionAlg.cc are straightforward, and a tentative fix may be found in branch feature/team_for_gcc630.

However uboone/CalData/NoiseFilterAlgs/RawDigitFFTAlg.cxx is quite complex and the required changes are nontrivial. This will need to be fixed by an expert.

History

#1 Updated by Tracy Usher over 3 years ago

The reason RawDigitFFTAlg uses variable length arrays is because it is using root's TVirtualFFT interface. The simple solution is to go through and replace the variable length arrays with std::vector's, then pass the underlying array to the routine. On the other hand, maybe a better solution is to replace TVirtualFFT with something better. Is there a "better" package available in larsoft which provides an FFT interface?

#2 Updated by Lynn Garren over 3 years ago

Would you please go ahead and make the simple fixes? We expect the release of larsoft built with gcc 6.3.0 by the end of the day today.

#3 Updated by Tracy Usher over 3 years ago

I have now replaced all (I am pretty sure all occurrences) of variable arrays with std vectors. This compiles with the old gcc, hopefully the new one will be happy too!

#4 Updated by Herbert Greenlee over 3 years ago

  • Status changed from Assigned to Resolved
  • % Done changed from 0 to 100

Changed variable length arrays to vectors.

#5 Updated by Lynn Garren over 3 years ago

  • Status changed from Resolved to Closed


Also available in: Atom PDF