#35992: Gate 6.2 (new port) --------------------------------------------+------------------------------- Reporter: mojca.miklavec.lists@… | Owner: macports-tickets@… Type: submission | Status: new Priority: Normal | Milestone: Component: ports | Version: Keywords: | Port: gate --------------------------------------------+------------------------------- I would like to see Gate 6.2 included in MacPorts. This is slightly related to Geant4 (#32716). Gate needs version 9.5.p01. I have written a preliminary Portfile here which needs a bit of help from experts to get linker flags work properly (and of course an updated Geant4). I'll post updates here as I proceed. {{{ PortSystem 1.0 PortGroup cmake 1.0 name gate version 6.2 categories science maintainers gmail.com:mojca.miklavec.lists license TODO description GATE description long_description GATE is dedicated to numerical simulations in medical imaging and radiotherapy. \ It currently supports simulations of Emission Tomography (PET and SPECT), \ Computed Tomography (CT) and Radiotherapy experiments. homepage http://www.opengatecollaboration.org platforms darwin distfiles gate_v6_2_tar_gz_15277.gz master_sites http://www.opengatecollaboration.org/sites/opengatecollaboration.org/files/g... checksums rmd160 3fb8ec0fc7b78761e9eb0f39605ef84f1c485d42 \ sha256 d8c0dcbb74e734a60bae868ba1ce4d334919695e2b59099d87933ec425c7f98a patchfiles patch-compileerrors.diff worksrcdir gate_v${version} configure.dir ${workpath}/build build.dir ${configure.dir} post-extract { file mkdir ${configure.dir} } configure.post_args ${worksrcpath} depends_lib port:geant4 \ port:clhep # clhep implied with geant4 configure.args-append -DGATE_USE_OWN_CLHEP=OFF }}} {{{ --- source/digits_hits/include/GateMaps.hh.orig +++ source/digits_hits/include/GateMaps.hh @@ -117,7 +117,7 @@ inline GateMap<Tkey,Tvalue>::GateMap(size_t n, GateMap<Tkey,Tvalue> *mapArray[]) for (size_t i=0; i<n ; i++){ GateMap<Tkey,Tvalue>* mapElement = mapArray[i]; for (iterator iter = mapElement->begin(); iter != mapElement->end(); iter++) - insert(*iter); + this->insert(*iter); } } --- source/general/include/GateUIcmdWithAVector.hh.orig +++ source/general/include/GateUIcmdWithAVector.hh @@ -118,14 +118,14 @@ template<typename vContentType> G4String GateUIcmdWithAVector<vContentType>::ConvertToString (std::vector<vContentType> vec) { - char st[100]; + //char st[100]; //LF //std::ostrstream os(st,100); - std::ostringstream os(st,100); + std::ostringstream os; //LF for (G4int i=0; i<vec.size(); i++) os << vec[i] << " "; os << '\0'; - G4String vl = st; + G4String vl = os.str(); G4cout << "GateUIcmdWithAVector::ConvertToString : " << vl << G4endl; return vl; } }}} Compilation currently fails with {{{ Undefined symbols for architecture x86_64: "vtable for CLHEP::HepVector", referenced from: GateSourcePencilBeam::GateSourcePencilBeam(G4String) in GateSourcePencilBeam.cc.o NOTE: a missing vtable usually means the first non-inline virtual member function has no definition. "vtable for CLHEP::HepSymMatrix", referenced from: GateSourcePencilBeam::GateSourcePencilBeam(G4String) in GateSourcePencilBeam.cc.o NOTE: a missing vtable usually means the first non-inline virtual member function has no definition. "CLHEP::HepVector::HepVector(int)", referenced from: GateSourcePencilBeam::GateSourcePencilBeam(G4String) in GateSourcePencilBeam.cc.o "CLHEP::HepVector::operator=(CLHEP::HepVector const&)", referenced from: GateSourcePencilBeam::GateSourcePencilBeam(G4String) in GateSourcePencilBeam.cc.o "CLHEP::HepVector::~HepVector()", referenced from: GateSourcePencilBeam::GateSourcePencilBeam(G4String) in GateSourcePencilBeam.cc.o GateSourcePencilBeam::~GateSourcePencilBeam() in GateSourcePencilBeam.cc.o GateSourcePencilBeam::GenerateVertex(G4Event*) in GateSourcePencilBeam.cc.o "CLHEP::HepSymMatrix::HepSymMatrix(int, int)", referenced from: GateSourcePencilBeam::GateSourcePencilBeam(G4String) in GateSourcePencilBeam.cc.o "CLHEP::HepSymMatrix::operator=(CLHEP::HepSymMatrix const&)", referenced from: GateSourcePencilBeam::GateSourcePencilBeam(G4String) in GateSourcePencilBeam.cc.o "CLHEP::HepSymMatrix::~HepSymMatrix()", referenced from: GateSourcePencilBeam::GateSourcePencilBeam(G4String) in GateSourcePencilBeam.cc.o GateSourcePencilBeam::~GateSourcePencilBeam() in GateSourcePencilBeam.cc.o "CLHEP::RandMultiGauss::fire()", referenced from: GateSourcePencilBeam::GenerateVertex(G4Event*) in GateSourcePencilBeam.cc.o "CLHEP::RandMultiGauss::RandMultiGauss(CLHEP::HepRandomEngine*, CLHEP::HepVector const&, CLHEP::HepSymMatrix const&)", referenced from: GateSourcePencilBeam::GenerateVertex(G4Event*) in GateSourcePencilBeam.cc.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) make[2]: *** [Gate] Error 1 }}} -- Ticket URL: <https://trac.macports.org/ticket/35992> MacPorts <http://www.macports.org/> Ports system for Mac OS