Code Monkey home page Code Monkey logo

clsim's People

Contributors

briedel avatar claudiok avatar javierggt avatar jvansanten avatar musner avatar nega0 avatar nwhitehorn avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

clsim's Issues

Pybindings on ubuntu

While the pybindings are working on macos with icesim V05-00-07, I experience some issues when using ubuntu.

TypeError: No to_python (by-value) converter found

For example, when running ./generateTestFlashesSC.py of the StandardCandle script I get

Traceback (most recent call last):
  File "./generateTestFlashesSC.py", line 32, in <module>
    from icecube import icetray, dataclasses, dataio, phys_services, clsim, sim_services
TypeError: No to_python (by-value) converter found for C++ type: I3Map<OMKey, std::vector<I3MCPE, std::allocator<I3MCPE> > >

when the python modules are imported like usual in this script: from icecube import icetray, dataclasses, dataio, phys_services, clsim, sim_services.

When I change this to

from icecube import icetray, dataclasses, simclasses
from icecube import dataio
from icecube import phys_services, sim_services
from icecube import clsim

the above issue is gone. I had to split-up the imports and to import simclasses as well.

But this leads to an even stranger issue:

AttributeError: 'module' object has no attribute 'StandardCandleFlasherPulseSeriesGenerator'

When changing the import as shown above, calling ./generateTestFlashesSC.py leads to:

Traceback (most recent call last):
  File "./generateTestFlashesSC.py", line 63, in <module>
    tray.AddModule(clsim.StandardCandleFlasherPulseSeriesGenerator, "StandardCandleFlasherPulseSeriesGenerator",
AttributeError: 'module' object has no attribute 'StandardCandleFlasherPulseSeriesGenerator'

And, sure enough, if I try to inspect clsim, StandardCandleFlasherPulseSeriesGenerator as well as some other stuff from https://github.com/claudiok/clsim/blob/master/python/__init__.py is missing.

>>> print dir(clsim)
['I3CLSimEventStatistics', 'I3CLSimFlasherPulse', 'I3CLSimFlasherPulseSeries', 'I3CompressedPhoton', 'I3CompressedPhotonSeries', 'I3CompressedPhotonSeriesMap', 'I3ExtraGeometryItem', 'I3ExtraGeometryItemConstPtrVect', 'I3ExtraGeometryItemCylinder', 'I3ExtraGeometryItemMove', 'I3ExtraGeometryItemUnion', 'I3Photon', 'I3PhotonSeries', 'I3PhotonSeriesMap', 'I3ShadowedPhotonRemover', '__doc__', '__file__', '__name__', '__package__', 'converters', 'std_map_indexing_suite_I3CompressedPhotonSeriesMap_entry', 'std_map_indexing_suite_I3PhotonSeriesMap_entry']

How to reproduce

The easiest way to reproduce this is using the ubuntu-icecube-soft docker image. This uses icesim V05-00-00, but I've also installed V05-00-07 with the same result.

docker run -it tpalczew/ubuntu-icecube-soft bash
cd /icesim/V05-00-00/build
source env-shell.sh
cd /icesim/V05-00-00/src/clsim/resources/scripts/flasher/StandardCandle
./generateTestFlashesSC.py

use of undeclared identifier 'm' in TrkCerenkov.cxx

Building the current master of clsim against the current trunk of simulation (r130936) leads to a compiling error.

Versions

  • Mac OS X 10.10.2 Yosemite
  • Homebrew 0.9.5
  • Python 2.7.6 (system version, not homebrew)
  • simulation trunk r130936, 2015-04-03

Steps To Reproduce

# Install Dependencies
brew update
brew tap homebrew/science
brew tap jvansanten/icecube
brew install cmake cdk gsl hdf5 libarchive cfitsio minuit2 mysql qt pyqt suite-sparse sprng2 geant clhep log4cpp doxygen rdmc ccache distcc
brew install slalib-c
brew uninstall python root root-build boost boost-python
brew install root --cocoa
brew uninstall python  # we need to use the system version!
brew install boost boost-build
brew install boost-python
brew uninstall python

# Checkout simulation code from svn
#
CURRENT_TRUNK=$ICECUBE_SOFTWARE/simulation-trunk-2015-04-03
mkdir -p $CURRENT_TRUNK/debug_build
cd $CURRENT_TRUNK
svn co $SVN/meta-projects/simulation/trunk/ src

# Patch source:
# - remove boost patch as boost 1.57.0 is already installed system-wide.
# - symlink current clsim master
#
rm -r src/cmake/tool-patches/boost-1.38.0
rm -r src/clsim
ln -s ~/icecube/clsim src/clsim  

# Configure and make
#
cd $CURRENT_TRUNK/debug_build
cmake -D CMAKE_BUILD_TYPE=Debug -D SYSTEM_PACKAGES=true ../src
./env-shell.sh
make

Expected Behavior

make compiles the software and returns with code 0.

Observed Behavior

make raises an error and returns with code 2.

[ 39%] Building CXX object clsim/CMakeFiles/clsim.dir/private/geant4/TrkCerenkov.cxx.o
/Users/fiedl/icecube/software/simulation-trunk-2015-04-03/src/clsim/private/geant4/TrkCerenkov.cxx:206:43: error:
      use of undeclared identifier 'm'
        newStep.SetPosX(x0.x()*I3Units::m/m);
                                          ^
/Users/fiedl/icecube/software/simulation-trunk-2015-04-03/src/clsim/private/geant4/TrkCerenkov.cxx:207:43: error:
      use of undeclared identifier 'm'
        newStep.SetPosY(x0.y()*I3Units::m/m);
                                          ^
/Users/fiedl/icecube/software/simulation-trunk-2015-04-03/src/clsim/private/geant4/TrkCerenkov.cxx:208:43: error:
      use of undeclared identifier 'm'
        newStep.SetPosZ(x0.z()*I3Units::m/m);
                                          ^
/Users/fiedl/icecube/software/simulation-trunk-2015-04-03/src/clsim/private/geant4/TrkCerenkov.cxx:209:40: error:
      use of undeclared identifier 'ns'
        newStep.SetTime(t0*I3Units::ns/ns);
                                       ^
/Users/fiedl/icecube/software/simulation-trunk-2015-04-03/src/clsim/private/geant4/TrkCerenkov.cxx:212:50: error:
      use of undeclared identifier 'm'
        newStep.SetLength(step_length*I3Units::m/m);
                                                 ^
/Users/fiedl/icecube/software/simulation-trunk-2015-04-03/src/clsim/private/geant4/TrkCerenkov.cxx:392:71: error:
      use of undeclared identifier 'h_Planck'; did you mean 'CLHEP::h_Planck'?
  ...currentBiasFactor = fWlenBias->GetValue(((h_Planck*c_light/currentPM)/nm)*I3Unit...
                                               ^~~~~~~~
                                               CLHEP::h_Planck
/usr/local/include/CLHEP/Units/PhysicalConstants.h:64:21: note: 'CLHEP::h_Planck'
      declared here
static const double h_Planck      = 6.62606896e-34 * joule*s;
                    ^
/Users/fiedl/icecube/software/simulation-trunk-2015-04-03/src/clsim/private/geant4/TrkCerenkov.cxx:392:80: error:
      use of undeclared identifier 'c_light'; did you mean 'CLHEP::c_light'?
  ...currentBiasFactor = fWlenBias->GetValue(((h_Planck*c_light/currentPM)/nm)*I3Unit...
                                                        ^~~~~~~
                                                        CLHEP::c_light
/usr/local/include/CLHEP/Units/PhysicalConstants.h:56:21: note: 'CLHEP::c_light'
      declared here
static const double c_light   = 2.99792458e+8 * m/s;
                    ^
/Users/fiedl/icecube/software/simulation-trunk-2015-04-03/src/clsim/private/geant4/TrkCerenkov.cxx:392:99: error:
      use of undeclared identifier 'nm'; did you mean 'CLHEP::nm'?
  ...= fWlenBias->GetValue(((h_Planck*c_light/currentPM)/nm)*I3Units::nanometer);
                                                         ^~
                                                         CLHEP::nm
/usr/local/include/CLHEP/Units/SystemOfUnits.h:92:23: note: 'CLHEP::nm' declared here
  static const double nm  = nanometer;
                      ^
/Users/fiedl/icecube/software/simulation-trunk-2015-04-03/src/clsim/private/geant4/TrkCerenkov.cxx:393:68: error:
      use of undeclared identifier 'h_Planck'; did you mean 'CLHEP::h_Planck'?
  ...prevBiasFactor = fWlenBias->GetValue(((h_Planck*c_light/prevPM)/nm)*I3Units::nan...
                                            ^~~~~~~~
                                            CLHEP::h_Planck
/usr/local/include/CLHEP/Units/PhysicalConstants.h:64:21: note: 'CLHEP::h_Planck'
      declared here
static const double h_Planck      = 6.62606896e-34 * joule*s;
                    ^
/Users/fiedl/icecube/software/simulation-trunk-2015-04-03/src/clsim/private/geant4/TrkCerenkov.cxx:393:77: error:
      use of undeclared identifier 'c_light'; did you mean 'CLHEP::c_light'?
  ...prevBiasFactor = fWlenBias->GetValue(((h_Planck*c_light/prevPM)/nm)*I3Units::nan...
                                                     ^~~~~~~
                                                     CLHEP::c_light
/usr/local/include/CLHEP/Units/PhysicalConstants.h:56:21: note: 'CLHEP::c_light'
      declared here
static const double c_light   = 2.99792458e+8 * m/s;
                    ^
/Users/fiedl/icecube/software/simulation-trunk-2015-04-03/src/clsim/private/geant4/TrkCerenkov.cxx:393:93: error:
      use of undeclared identifier 'nm'; did you mean 'CLHEP::nm'?
  ...prevBiasFactor = fWlenBias->GetValue(((h_Planck*c_light/prevPM)/nm)*I3Units::nan...
                                                                     ^~
                                                                     CLHEP::nm
/usr/local/include/CLHEP/Units/SystemOfUnits.h:92:23: note: 'CLHEP::nm' declared here
  static const double nm  = nanometer;
                      ^
/Users/fiedl/icecube/software/simulation-trunk-2015-04-03/src/clsim/private/geant4/TrkCerenkov.cxx:502:19: error:
      use of undeclared identifier 'um'; did you mean 'CLHEP::um'?
    if (Step < 1.*um ) return StepLimit;
                  ^~
                  CLHEP::um
/usr/local/include/CLHEP/Units/SystemOfUnits.h:93:23: note: 'CLHEP::um' declared here
  static const double um  = micrometer;
                      ^
/Users/fiedl/icecube/software/simulation-trunk-2015-04-03/src/clsim/private/geant4/TrkCerenkov.cxx:561:36: error:
      use of undeclared identifier 'eV'
    const G4double Rfact = 369.81/(eV * cm);
                                   ^
/Users/fiedl/icecube/software/simulation-trunk-2015-04-03/src/clsim/private/geant4/TrkCerenkov.cxx:561:41: error:
      use of undeclared identifier 'cm'
    const G4double Rfact = 369.81/(eV * cm);
                                        ^
/Users/fiedl/icecube/software/simulation-trunk-2015-04-03/src/clsim/private/geant4/TrkCerenkov.cxx:654:42: error:
      use of undeclared identifier 'eplus'
    G4double NumPhotons = Rfact * charge/eplus * charge/eplus *
                                         ^
/Users/fiedl/icecube/software/simulation-trunk-2015-04-03/src/clsim/private/geant4/TrkCerenkov.cxx:654:57: error:
      use of undeclared identifier 'eplus'
    G4double NumPhotons = Rfact * charge/eplus * charge/eplus *
                                                        ^
16 errors generated.
make[2]: *** [clsim/CMakeFiles/clsim.dir/private/geant4/TrkCerenkov.cxx.o] Error 1
make[1]: *** [clsim/CMakeFiles/clsim.dir/all] Error 2
make: *** [all] Error 2

no member named 'const_iterator' in 'I3Tree<I3Particle>' in I3MuonSlicer.cxx

Building the current master of clsim against the current release simulation V04-01-11 leads to a compiling error.

Versions

  • Mac OS X 10.10.2 Yosemite
  • Homebrew 0.9.5
  • Python 2.7.6 (system version, not homebrew)
  • simulation V04-01-11

Steps To Reproduce

# Install Dependencies
brew update
brew tap homebrew/science
brew tap jvansanten/icecube
brew install cmake cdk gsl hdf5 libarchive cfitsio minuit2 mysql qt pyqt suite-sparse sprng2 geant clhep log4cpp doxygen rdmc ccache distcc
brew install slalib-c
brew uninstall python root root-build boost boost-python
brew install root --cocoa
brew uninstall python  # we need to use the system version!
brew install boost boost-build
brew install boost-python
brew uninstall python

# Checkout simulation code and symlink clsim
mkdir -p $ICECUBE_SOFTWARE/simulation-V04-01-11/debug_build
cd $ICECUBE_SOFTWARE/simulation-V04-01-11
svn co $SVN/meta-projects/simulation/releases/V04-01-11/ src

rm -r src/cmake/tool-patches/boost-1.38.0  # current version is 1.57.0 already.
rm -r src/clsim
ln -s ~/icecube/clsim src/clsim  # symlink current master 

# Configure and make
cd $ICECUBE_SOFTWARE/simulation-V04-01-11/debug_build
cmake -D CMAKE_BUILD_TYPE=Debug -D SYSTEM_PACKAGES=true ../src

./env-shell.sh
make

Expected Behavior

make compiles the software and returns with code 0.

Observed Behavior

make raises an error and returns with code 2.

Scanning dependencies of target clsim
[ 46%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/I3CLSimEventStatistics.cxx.o
[ 46%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/I3Photon.cxx.o
[ 46%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/I3CompressedPhoton.cxx.o
[ 46%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/I3CLSimFlasherPulse.cxx.o
[ 47%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/util/I3MuonSlicer.cxx.o
/Users/fiedl/icecube/software/simulation-V04-01-11/src/clsim/private/clsim/util/I3MuonSlicer.cxx:95:57: error: no
      member named 'const_iterator' in 'I3Tree<I3Particle>'
    inline bool IsAnyOfType(const std::vector<I3MCTree::const_iterator> &particles, I3Particle::ParticleType type)
                                              ~~~~~~~~~~^
/Users/fiedl/icecube/software/simulation-V04-01-11/src/clsim/private/clsim/util/I3MuonSlicer.cxx:97:29: error: no type
      named 'const_iterator' in 'I3Tree<I3Particle>'; did you mean 'I3MCList::const_iterator'?
        BOOST_FOREACH(const I3MCTree::const_iterator &particle_it, particles)
                            ^~~~~~~~~~~~~~~~~~~~~~~~
                            I3MCList::const_iterator
/usr/local/include/boost/foreach.hpp:1101:14: note: expanded from macro 'BOOST_FOREACH'
        for (VAR = BOOST_FOREACH_DEREF(COL); !BOOST_FOREACH_ID(_foreach_continue); BOOST_FOREACH_ID(_foreach_c...
             ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/vector:498:54: note:
      'I3MCList::const_iterator' declared here
    typedef __wrap_iter<const_pointer>               const_iterator;
                                                     ^
/Users/fiedl/icecube/software/simulation-V04-01-11/src/clsim/private/clsim/util/I3MuonSlicer.cxx:105:70: error: no
      member named 'const_iterator' in 'I3Tree<I3Particle>'
    inline bool AreParticlesSortedInTime(const std::vector<I3MCTree::const_iterator> &particles)
                                                           ~~~~~~~~~~^
/Users/fiedl/icecube/software/simulation-V04-01-11/src/clsim/private/clsim/util/I3MuonSlicer.cxx:110:29: error: no
      type named 'const_iterator' in 'I3Tree<I3Particle>'; did you mean 'I3MCList::const_iterator'?
        BOOST_FOREACH(const I3MCTree::const_iterator &particle_it, particles)
                            ^~~~~~~~~~~~~~~~~~~~~~~~
                            I3MCList::const_iterator
/usr/local/include/boost/foreach.hpp:1101:14: note: expanded from macro 'BOOST_FOREACH'
        for (VAR = BOOST_FOREACH_DEREF(COL); !BOOST_FOREACH_ID(_foreach_continue); BOOST_FOREACH_ID(_foreach_c...
             ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/vector:498:54: note:
      'I3MCList::const_iterator' declared here
    typedef __wrap_iter<const_pointer>               const_iterator;
                                                     ^
/Users/fiedl/icecube/software/simulation-V04-01-11/src/clsim/private/clsim/util/I3MuonSlicer.cxx:127:73: error: no
      member named 'const_iterator' in 'I3Tree<I3Particle>'
    inline double GetTotalEnergyOfParticles(const std::vector<I3MCTree::const_iterator> &particles,
                                                              ~~~~~~~~~~^
/Users/fiedl/icecube/software/simulation-V04-01-11/src/clsim/private/clsim/util/I3MuonSlicer.cxx:132:29: error: no
      type named 'const_iterator' in 'I3Tree<I3Particle>'; did you mean 'I3MCList::const_iterator'?
        BOOST_FOREACH(const I3MCTree::const_iterator &particle_it, particles)
                            ^~~~~~~~~~~~~~~~~~~~~~~~
                            I3MCList::const_iterator
/usr/local/include/boost/foreach.hpp:1101:14: note: expanded from macro 'BOOST_FOREACH'
        for (VAR = BOOST_FOREACH_DEREF(COL); !BOOST_FOREACH_ID(_foreach_continue); BOOST_FOREACH_ID(_foreach_c...
             ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/vector:498:54: note:
      'I3MCList::const_iterator' declared here
    typedef __wrap_iter<const_pointer>               const_iterator;
                                                     ^
/Users/fiedl/icecube/software/simulation-V04-01-11/src/clsim/private/clsim/util/I3MuonSlicer.cxx:172:37: error: no
      member named 'const_iterator' in 'I3Tree<I3Particle>'
        const std::vector<I3MCTree::const_iterator>
                          ~~~~~~~~~~^
/Users/fiedl/icecube/software/simulation-V04-01-11/src/clsim/private/clsim/util/I3MuonSlicer.cxx:173:67: error: no
      type named 'const_iterator' in 'I3Tree<I3Particle>'; did you mean 'I3MCList::const_iterator'?
        GetDaughterIteratorsFromParentIterator(const I3MCTree& t, I3MCTree::const_iterator parent_it)
                                                                  ^~~~~~~~~~~~~~~~~~~~~~~~
                                                                  I3MCList::const_iterator
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/vector:498:54: note:
      'I3MCList::const_iterator' declared here
    typedef __wrap_iter<const_pointer>               const_iterator;
                                                     ^
/Users/fiedl/icecube/software/simulation-V04-01-11/src/clsim/private/clsim/util/I3MuonSlicer.cxx:175:35: error: no
      member named 'const_iterator' in 'I3Tree<I3Particle>'
            std::vector<I3MCTree::const_iterator> daughterList;
                        ~~~~~~~~~~^
/Users/fiedl/icecube/software/simulation-V04-01-11/src/clsim/private/clsim/util/I3MuonSlicer.cxx:175:51: error: C++
      requires a type specifier for all declarations
            std::vector<I3MCTree::const_iterator> daughterList;
                                                  ^~~~~~~~~~~~
/Users/fiedl/icecube/software/simulation-V04-01-11/src/clsim/private/clsim/util/I3MuonSlicer.cxx:176:28: error: no
      type named 'sibling_const_iterator' in 'I3Tree<I3Particle>'; did you mean 'sibling_iterator'?
            for (I3MCTree::sibling_const_iterator j=t.children(parent_it); j!=t.end(parent_it); ++j)
                 ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
                           sibling_iterator
/Users/fiedl/icecube/software/simulation-V04-01-11/src/dataclasses/public/dataclasses/external/tree.hh:222:13: note:
      'sibling_iterator' declared here
      class sibling_iterator : public iterator_base {
            ^
/Users/fiedl/icecube/software/simulation-V04-01-11/src/clsim/private/clsim/util/I3MuonSlicer.cxx:176:55: error: no
      member named 'children' in 'I3Tree<I3Particle>'
            for (I3MCTree::sibling_const_iterator j=t.children(parent_it); j!=t.end(parent_it); ++j)
                                                    ~ ^
/Users/fiedl/icecube/software/simulation-V04-01-11/src/clsim/private/clsim/util/I3MuonSlicer.cxx:176:81: error: no
      matching member function for call to 'end'
            for (I3MCTree::sibling_const_iterator j=t.children(parent_it); j!=t.end(parent_it); ++j)
                                                                              ~~^~~
/Users/fiedl/icecube/software/simulation-V04-01-11/src/dataclasses/public/dataclasses/external/tree.hh:260:28: note:
      candidate function not viable: no known conversion from 'I3MCList::const_iterator'
      (aka '__wrap_iter<const_pointer>') to 'const tree<I3Particle, std::__1::allocator<tree_node_<I3Particle> >
      >::iterator_base' for 1st argument
      sibling_iterator     end(const iterator_base&) const;
                           ^
/Users/fiedl/icecube/software/simulation-V04-01-11/src/dataclasses/public/dataclasses/external/tree.hh:248:35: note:
      candidate function not viable: requires 0 arguments, but 1 was provided
      inline pre_order_iterator   end() const;
                                  ^
/Users/fiedl/icecube/software/simulation-V04-01-11/src/clsim/private/clsim/util/I3MuonSlicer.cxx:187:39: error: no
      type named 'const_iterator' in 'I3Tree<I3Particle>'; did you mean 'I3MCList::const_iterator'?
                                const I3MCTree::const_iterator &particle_it_inputTree,
                                      ^~~~~~~~~~~~~~~~~~~~~~~~
                                      I3MCList::const_iterator
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/vector:498:54: note:
      'I3MCList::const_iterator' declared here
    typedef __wrap_iter<const_pointer>               const_iterator;
                                                     ^
/Users/fiedl/icecube/software/simulation-V04-01-11/src/clsim/private/clsim/util/I3MuonSlicer.cxx:194:35: error:
      invalid operands to binary expression ('const I3MCList::const_iterator' (aka 'const __wrap_iter<const_pointer>')
      and 'tree<I3Particle, std::__1::allocator<tree_node_<I3Particle> > >::pre_order_iterator')
        if (particle_it_inputTree == inputTree.end()) log_fatal("internal error. output particle not in outpu...
            ~~~~~~~~~~~~~~~~~~~~~ ^  ~~~~~~~~~~~~~~~
/Users/fiedl/icecube/software/simulation-V04-01-11/src/clsim/private/clsim/util/I3MuonSlicer.cxx:197:37: error: no
      member named 'const_iterator' in 'I3Tree<I3Particle>'
        const std::vector<I3MCTree::const_iterator> daughterIterators =
                          ~~~~~~~~~~^
/Users/fiedl/icecube/software/simulation-V04-01-11/src/clsim/private/clsim/util/I3MuonSlicer.cxx:317:37: error: no
      type named 'const_iterator' in 'I3Tree<I3Particle>'; did you mean 'I3MCList::const_iterator'?
                BOOST_FOREACH(const I3MCTree::const_iterator daughter_it, daughterIterators)
                                    ^~~~~~~~~~~~~~~~~~~~~~~~
                                    I3MCList::const_iterator
/usr/local/include/boost/foreach.hpp:1101:14: note: expanded from macro 'BOOST_FOREACH'
        for (VAR = BOOST_FOREACH_DEREF(COL); !BOOST_FOREACH_ID(_foreach_continue); BOOST_FOREACH_ID(_foreach_c...
             ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/vector:498:54: note:
      'I3MCList::const_iterator' declared here
    typedef __wrap_iter<const_pointer>               const_iterator;
                                                     ^
/Users/fiedl/icecube/software/simulation-V04-01-11/src/clsim/private/clsim/util/I3MuonSlicer.cxx:482:39: error: no
      type named 'const_iterator' in 'I3Tree<I3Particle>'
        BOOST_FOREACH(const I3MCTree::const_iterator &daughter_it_inputTree, daughterIterators)
                            ~~~~~~~~~~^
/usr/local/include/boost/foreach.hpp:1101:14: note: expanded from macro 'BOOST_FOREACH'
        for (VAR = BOOST_FOREACH_DEREF(COL); !BOOST_FOREACH_ID(_foreach_continue); BOOST_FOREACH_ID(_foreach_c...
             ^
/Users/fiedl/icecube/software/simulation-V04-01-11/src/clsim/private/clsim/util/I3MuonSlicer.cxx:538:69: error: no
      member named 'GetPrimariesPtr' in namespace 'I3MCTreeUtils'; did you mean 'GetPrimaries'?
    const std::vector<const I3Particle*> primaries = I3MCTreeUtils::GetPrimariesPtr(inputMCTree);
                                                     ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
                                                                    GetPrimaries
/Users/fiedl/icecube/software/simulation-V04-01-11/src/dataclasses/public/dataclasses/physics/I3MCTreeUtils.h:37:33: note:
      'GetPrimaries' declared here
  const std::vector<I3Particle> GetPrimaries(const I3MCTree&);
                                ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make[2]: *** [clsim/CMakeFiles/clsim.dir/private/clsim/util/I3MuonSlicer.cxx.o] Error 1
make[1]: *** [clsim/CMakeFiles/clsim.dir/all] Error 2
make: *** [all] Error 2

no member named 'GetWeight' in 'I3MCHit' in I3MCHitConverterWithIDs.cxx

Building the current master of clsim against the current release of simulation leads to a compiling error. Using trunk instead of the current release, leads to the same result.

Versions

  • Mac OS X 10.10.2 Yosemite
  • Homebrew 0.9.5
  • Python 2.7.6 (system version, not homebrew)
  • Simulation Trunk of 2015-03-17.

Steps To Reproduce

# Install Dependencies
brew update
brew tap homebrew/science
brew tap jvansanten/icecube
brew install cmake cdk gsl hdf5 libarchive cfitsio minuit2 mysql qt pyqt suite-sparse sprng2 geant clhep log4cpp doxygen rdmc ccache distcc
brew install slalib-c
brew uninstall python root root-build boost boost-python
brew install root --cocoa
brew uninstall python  # we need to use the system version!
brew install boost boost-build
brew install boost-python
brew uninstall python

# Checkout simulation code and symlink clsim
mkdir -p $ICECUBE_SOFTWARE/simulation-trunk-2015-03-17/debug_build
cd $ICECUBE_SOFTWARE/simulation-trunk-2015-03-17
svn co $SVN/meta-projects/simulation/trunk/ src

rm -r src/cmake/tool-patches/boost-1.38.0  # current version is 1.57.0 already.
rm -r src/clsim
ln -s ~/icecube/clsim src/clsim  # symlink current master 

# Configure and make
cd $ICECUBE_SOFTWARE/simulation-trunk-2015-03-17/debug_build
cmake -D CMAKE_BUILD_TYPE=Debug -D SYSTEM_PACKAGES=true ../src

./env-shell.sh
make

Expected Behavior

make compiles the software and returns with code 0.

Observed Behavior

make raises an error and returns with code 2.

Scanning dependencies of target clsim
[ 49%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/I3CLSimEventStatistics.cxx.o
[ 49%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/I3Photon.cxx.o
[ 49%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/I3CompressedPhoton.cxx.o
[ 49%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/I3CLSimFlasherPulse.cxx.o
[ 49%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/util/I3MuonSlicer.cxx.o
/Users/fiedl/icecube/software/simulation-trunk-2015-03-17/src/clsim/private/clsim/util/I3MuonSlicer.cxx:105:17: warning:
      unused function 'DoesItHaveChildren' [-Wunused-function]
    inline bool DoesItHaveChildren(const I3MCTree &mcTree, const I3Particle &particle)
                ^
1 warning generated.
[ 49%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/util/I3MuonSliceRemoverAndPulseRelabeler.cxx.o
[ 49%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/util/I3TauSanitizer.cxx.o
[ 49%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/dom/I3PhotonToMCPEConverter.cxx.o
[ 50%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/shadow/I3ShadowedPhotonRemover.cxx.o
[ 50%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/shadow/I3ShadowedPhotonRemoverModule.cxx.o
[ 50%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/shadow/I3ExtraGeometryItem.cxx.o
[ 50%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/shadow/I3ExtraGeometryItemUnion.cxx.o
/Users/fiedl/icecube/software/simulation-trunk-2015-03-17/src/clsim/private/clsim/shadow/I3ExtraGeometryItemUnion.cxx:146:54: warning:
      unused variable 'ptr' [-Wunused-variable]
    BOOST_FOREACH(const I3ExtraGeometryItemConstPtr &ptr, elements_)
                                                     ^
/usr/local/include/boost/foreach.hpp:1101:14: note: expanded from macro 'BOOST_FOREACH'
        for (VAR = BOOST_FOREACH_DEREF(COL); !BOOST_FOREACH_ID(_foreach_continue); BOOST_FOREACH_ID(_foreach_c...
             ^
1 warning generated.
[ 50%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/shadow/I3ExtraGeometryItemMove.cxx.o
[ 50%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/shadow/I3ExtraGeometryItemCylinder.cxx.o
[ 50%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/converter/I3PhotonConverter.cxx.o
[ 50%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/converter/I3MCHitConverterWithIDs.cxx.o
/Users/fiedl/icecube/software/simulation-trunk-2015-03-17/src/clsim/private/clsim/converter/I3MCHitConverterWithIDs.cxx:48:38: error:
      no member named 'GetWeight' in 'I3MCHit'
    row->Set<double>  ("weight", hit.GetWeight());
                                 ~~~ ^
1 error generated.
make[2]: *** [clsim/CMakeFiles/clsim.dir/private/clsim/converter/I3MCHitConverterWithIDs.cxx.o] Error 1
make[1]: *** [clsim/CMakeFiles/clsim.dir/all] Error 2
make: *** [all] Error 2

Variations

  • Using the current release vs. using the current trunk makes no difference.

  • Using clsim from the current svn trunk (i.e. without symlinking) does not work either. This raises another compiling error:

      Scanning dependencies of target clsim
    [ 49%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/I3CLSimEventStatistics.cxx.o
    [ 49%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/I3Photon.cxx.o
    [ 49%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/I3CompressedPhoton.cxx.o
    [ 49%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/I3CLSimFlasherPulse.cxx.o
    [ 49%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/util/I3MuonSlicer.cxx.o
    [ 49%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/util/I3MuonSliceRemoverAndPulseRelabeler.cxx.o
    [ 49%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/util/I3TauSanitizer.cxx.o
    [ 49%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/dom/I3PhotonToMCPEConverter.cxx.o
    [ 49%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/shadow/I3ShadowedPhotonRemover.cxx.o
    [ 50%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/shadow/I3ShadowedPhotonRemoverModule.cxx.o
    [ 50%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/shadow/I3ExtraGeometryItem.cxx.o
    [ 50%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/shadow/I3ExtraGeometryItemUnion.cxx.o
    [ 50%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/shadow/I3ExtraGeometryItemMove.cxx.o
    [ 50%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/shadow/I3ExtraGeometryItemCylinder.cxx.o
    [ 50%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/converter/I3PhotonConverter.cxx.o
    [ 50%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/converter/I3MCHitConverterWithIDs.cxx.o
    [ 50%] Building CXX object clsim/CMakeFiles/clsim.dir/private/clsim/converter/I3MCPEConverterWithIDs.cxx.o
    [ 50%] Building CXX object clsim/CMakeFiles/clsim.dir/private/geant4/TrkCerenkov.cxx.o
    /Users/fiedl/icecube/software/simulation-trunk-2015-03-17/src/clsim/private/geant4/TrkCerenkov.cxx:206:43: error: use
          of undeclared identifier 'm'
            newStep.SetPosX(x0.x()*I3Units::m/m);
                                              ^
    /Users/fiedl/icecube/software/simulation-trunk-2015-03-17/src/clsim/private/geant4/TrkCerenkov.cxx:207:43: error: use
          of undeclared identifier 'm'
            newStep.SetPosY(x0.y()*I3Units::m/m);
                                              ^
    /Users/fiedl/icecube/software/simulation-trunk-2015-03-17/src/clsim/private/geant4/TrkCerenkov.cxx:208:43: error: use
          of undeclared identifier 'm'
            newStep.SetPosZ(x0.z()*I3Units::m/m);
                                              ^
    /Users/fiedl/icecube/software/simulation-trunk-2015-03-17/src/clsim/private/geant4/TrkCerenkov.cxx:209:40: error: use
          of undeclared identifier 'ns'
            newStep.SetTime(t0*I3Units::ns/ns);
                                           ^
    /Users/fiedl/icecube/software/simulation-trunk-2015-03-17/src/clsim/private/geant4/TrkCerenkov.cxx:212:50: error: use
          of undeclared identifier 'm'
            newStep.SetLength(step_length*I3Units::m/m);
                                                     ^
    /Users/fiedl/icecube/software/simulation-trunk-2015-03-17/src/clsim/private/geant4/TrkCerenkov.cxx:392:71: error: use
          of undeclared identifier 'h_Planck'; did you mean 'CLHEP::h_Planck'?
                                currentBiasFactor = fWlenBias->GetValue(((h_Planck*c_light/currentPM)/nm)*I3Units:...
                                                                          ^~~~~~~~
                                                                          CLHEP::h_Planck
    /usr/local/include/CLHEP/Units/PhysicalConstants.h:64:21: note: 'CLHEP::h_Planck' declared here
    static const double h_Planck      = 6.62606896e-34 * joule*s;
                        ^
    /Users/fiedl/icecube/software/simulation-trunk-2015-03-17/src/clsim/private/geant4/TrkCerenkov.cxx:392:80: error: use
          of undeclared identifier 'c_light'; did you mean 'CLHEP::c_light'?
                                currentBiasFactor = fWlenBias->GetValue(((h_Planck*c_light/currentPM)/nm)*I3Units:...
                                                                                   ^~~~~~~
                                                                                   CLHEP::c_light
    /usr/local/include/CLHEP/Units/PhysicalConstants.h:56:21: note: 'CLHEP::c_light' declared here
    static const double c_light   = 2.99792458e+8 * m/s;
                        ^
    /Users/fiedl/icecube/software/simulation-trunk-2015-03-17/src/clsim/private/geant4/TrkCerenkov.cxx:392:99: error: use
          of undeclared identifier 'nm'; did you mean 'CLHEP::nm'?
                                currentBiasFactor = fWlenBias->GetValue(((h_Planck*c_light/currentPM)/nm)*I3Units:...
                                                                                                      ^~
                                                                                                      CLHEP::nm
    /usr/local/include/CLHEP/Units/SystemOfUnits.h:92:23: note: 'CLHEP::nm' declared here
      static const double nm  = nanometer;
                          ^
    /Users/fiedl/icecube/software/simulation-trunk-2015-03-17/src/clsim/private/geant4/TrkCerenkov.cxx:393:68: error: use
          of undeclared identifier 'h_Planck'; did you mean 'CLHEP::h_Planck'?
                                prevBiasFactor = fWlenBias->GetValue(((h_Planck*c_light/prevPM)/nm)*I3Units::nanometer);
                                                                       ^~~~~~~~
                                                                       CLHEP::h_Planck
    /usr/local/include/CLHEP/Units/PhysicalConstants.h:64:21: note: 'CLHEP::h_Planck' declared here
    static const double h_Planck      = 6.62606896e-34 * joule*s;
                        ^
    /Users/fiedl/icecube/software/simulation-trunk-2015-03-17/src/clsim/private/geant4/TrkCerenkov.cxx:393:77: error: use
          of undeclared identifier 'c_light'; did you mean 'CLHEP::c_light'?
                                prevBiasFactor = fWlenBias->GetValue(((h_Planck*c_light/prevPM)/nm)*I3Units::nanometer);
                                                                                ^~~~~~~
                                                                                CLHEP::c_light
    /usr/local/include/CLHEP/Units/PhysicalConstants.h:56:21: note: 'CLHEP::c_light' declared here
    static const double c_light   = 2.99792458e+8 * m/s;
                        ^
    /Users/fiedl/icecube/software/simulation-trunk-2015-03-17/src/clsim/private/geant4/TrkCerenkov.cxx:393:93: error: use
          of undeclared identifier 'nm'; did you mean 'CLHEP::nm'?
                                prevBiasFactor = fWlenBias->GetValue(((h_Planck*c_light/prevPM)/nm)*I3Units::nanometer);
                                                                                                ^~
                                                                                                CLHEP::nm
    /usr/local/include/CLHEP/Units/SystemOfUnits.h:92:23: note: 'CLHEP::nm' declared here
      static const double nm  = nanometer;
                          ^
    /Users/fiedl/icecube/software/simulation-trunk-2015-03-17/src/clsim/private/geant4/TrkCerenkov.cxx:502:19: error: use
          of undeclared identifier 'um'; did you mean 'CLHEP::um'?
        if (Step < 1.*um ) return StepLimit;
                      ^~
                      CLHEP::um
    /usr/local/include/CLHEP/Units/SystemOfUnits.h:93:23: note: 'CLHEP::um' declared here
      static const double um  = micrometer;
                          ^
    /Users/fiedl/icecube/software/simulation-trunk-2015-03-17/src/clsim/private/geant4/TrkCerenkov.cxx:561:36: error: use
          of undeclared identifier 'eV'
        const G4double Rfact = 369.81/(eV * cm);
                                       ^
    /Users/fiedl/icecube/software/simulation-trunk-2015-03-17/src/clsim/private/geant4/TrkCerenkov.cxx:561:41: error: use
          of undeclared identifier 'cm'
        const G4double Rfact = 369.81/(eV * cm);
                                            ^
    /Users/fiedl/icecube/software/simulation-trunk-2015-03-17/src/clsim/private/geant4/TrkCerenkov.cxx:654:42: error: use
          of undeclared identifier 'eplus'
        G4double NumPhotons = Rfact * charge/eplus * charge/eplus *
                                             ^
    /Users/fiedl/icecube/software/simulation-trunk-2015-03-17/src/clsim/private/geant4/TrkCerenkov.cxx:654:57: error: use
          of undeclared identifier 'eplus'
        G4double NumPhotons = Rfact * charge/eplus * charge/eplus *
                                                            ^
    16 errors generated.
    make[2]: *** [clsim/CMakeFiles/clsim.dir/private/geant4/TrkCerenkov.cxx.o] Error 1
    make[1]: *** [clsim/CMakeFiles/clsim.dir/all] Error 2
    make: *** [all] Error 2
    

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.