[Gate-users] Building GATE v9.1 on Ubuntu 20.04

David Boersma david.boersma at gmail.com
Fri Feb 18 18:24:24 CET 2022


Hi Tim,

Great, thanks for sharing this!

Enabling Qt is recommended, because especially in geometry coding, a GUI
image may say more than a thousand debugging messages. The missing qgl.h
issue makes me wonder if "qt5-default" is sufficient (I cannot easily
check, I'm on a different flavor of Linux), I wonder if you may need to add
3D Qt packages like "libqt53dcore5" and "libqt53dextras5" to get the proper
links with OpenGL. Which you'll very much need for the GUI. I think I do
not understand why the steps you list under 4 did seem to solve your issue
with qgl.h. The current version of CMakeLists.txt still uses the GateLib
construction, albeit with some minor tweaks and updates, and for others it
seems to work. So.... if you just happen to have a free hour some time
during the coming few weeks, then I think you could make the Gate release
team very happy by trying to build the "develop" branch on your system and
let them know what you find ("it all works out of the box for me" and "here
is my list of problems" are both very useful to know). :)

Cheers,
David


On Thu, Feb 17, 2022 at 2:35 PM Schneider Tim <Tim.Schneider at curie.fr>
wrote:

> Dear all,
>
>
> Just to let you know that we managed to get GATE installed after all. And
> here's what we did:
>
>
> 1) We installed root 6.22/08 instead of 6.24/06
>
> 2) We installed Qt5 (sudo apt-get install qt5-default)
>
> 3) We rebuild and re-installed Geant4 10.6.3 without forcing the C++
> standard (it seems to use standard 11 by default) and with Qt enabled (
> -DGEANT4_USE_QT=ON)
>
>
> Trying to build GATE 9.0 now, we got further than before without having
> the weird "error: invalid use of incomplete type ‘class GateARFTable’"
> error. But it still failed trying to locate the "qgl.h" file.
>
> 4) To fix that we changed a few things in the CMakeLists.txt in the
> Gate-9.0 folder:
>
> 4.1) We commented out the line "ADD_LIBRARY(GateLib OBJECT ${sources}
> ${headers})" (line 264 or somewhere around there)
>
> 4.2) In the following lines, we replaced the 5 occasions of
> "$<TARGET_OBJECTS:GateLib>" with "${sources} ${headers}"
>
>
> Then, after ccmake ../Gate-9.0 --> reconfigure --> regenerate, the build
> succeeded.
>
>
> Cheers,
>
> Tim
> ------------------------------
> *De :* Gate-users <gate-users-bounces at lists.opengatecollaboration.org> de
> la part de Schneider Tim <Tim.Schneider at curie.fr>
> *Envoyé :* mercredi 16 février 2022 12:06:22
> *À :* David Boersma
> *Cc :* gate-users at lists.opengatecollaboration.org
> *Objet :* Re: [Gate-users] Building GATE v9.1 on Ubuntu 20.04
>
> Dear Khalid, dear David,
>
> Thank you for your answers! I couldn’t find GATE in the Ubuntu Software
> Centre but that is likely a problem with the proxies of our institute which
> we weren’t really able to fix yet.
>
> Concerning the versions of GATE and Geant4, sorry for the confusion.
> Indeed, we tried first GATE 9.1 together with Geant4 10.7.3 and then GATE
> 9.0 together with Geant4 10.6.3. We get the same error in both cases.
>
> One thing to note is that we forced the C++ standard to version 17 when
> building Geant4, like this: -DGEANT4_BUILD_CXXSTD=17. I didn’t have to do
> this for a previous GATE 9.0 installation, also on an Ubuntu 20.04 machine.
> But this time, without specifying the C++ standard, we get another error
> trying to build GATE which refers to some root files actually…
>
> I will try again installing GATE with some slightly different root
> versions. But any other tips and hints are very welcome!
>
> Thanks,
> Tim
>
>
> Am 16/02/2022 um 10:49 schrieb David Boersma <david.boersma at gmail.com>:
>
> Hi Tim,
>
> Just an observation from the sidelines (these days I can spend much less
> time on GATE than I did in the past): the subject of your mail is about
> version 9.1, but in the build output messages I see source paths with
> version 9.0 in them. Can you clarify which version you are really trying to
> build? That can be important for whoever is going to try to reproduce this
> error.
>
> In principle the newest release is preferred. In case the above errors
> were really obtained with 9.0 source code, could you then try to upgrade to
> 9.1? Moreover, the next release is also just around the corner, this might
> also solve your problem (but maybe introduce a host of new ones :o) ).
>
> Good luck!
> David
>
>
>
> On Tue, Feb 15, 2022 at 5:36 PM Schneider Tim <Tim.Schneider at curie.fr>
> wrote:
>
>> Dear Gaters,
>>
>> We are trying to install GATE v9.1 on an Ubuntu 20.04 machine and we’re
>> having some quite strange errors during the make step:
>>
>> /home/angela/geant4.10.06.p03-install/include/Geant4/CLHEP/Geometry/BasicVector3D.h:468:3:
>> note: candidate: ‘std::ostream& std::operator<<(std::ostream&, int)’
>>   468 |   operator<<(std::ostream &, const BasicVector3D<double> &);
>>       |   ^~~~~~~~
>> /home/angela/Gate-9.0/source/arf/src/GateARFTableMgr.cc:307
>> <http://gatearftablemgr.cc:307>:56: error: invalid use of incomplete
>> type ‘class GateARFTable’
>>   307 |     GateARFTable* arfTable = new GateARFTable(tableName);
>>       |                                                        ^
>> In file included from /home/angela/Gate-9.0/source/arf/src/
>> GateARFTableMgr.cc:14 <http://gatearftablemgr.cc:14>:
>> /home/angela/Gate-9.0/source/arf/include/GateARFTableMgr.hh:14:7: note:
>> forward declaration of ‘class GateARFTable’
>>    14 | class GateARFTable;
>>       |       ^~~~~~~~~~~~
>> /home/angela/Gate-9.0/source/arf/src/GateARFTableMgr.cc:308
>> <http://gatearftablemgr.cc:308>:13: error: invalid use of incomplete
>> type ‘class GateARFTable’
>>   308 |     arfTable->Initialize(tableBuffer[4], tableBuffer[5]);
>>       |             ^~
>> In file included from /home/angela/Gate-9.0/source/arf/src/
>> GateARFTableMgr.cc:14 <http://gatearftablemgr.cc:14>:
>> /home/angela/Gate-9.0/source/arf/include/GateARFTableMgr.hh:14:7: note:
>> forward declaration of ‘class GateARFTable’
>>    14 | class GateARFTable;
>>       |       ^~~~~~~~~~~~
>> /home/angela/Gate-9.0/source/arf/src/GateARFTableMgr.cc:309
>> <http://gatearftablemgr.cc:309>:13: error: invalid use of incomplete
>> type ‘class GateARFTable’
>>   309 |     arfTable->SetEnergyReso(tableBuffer[2]);
>>       |             ^~
>> In file included from /home/angela/Gate-9.0/source/arf/src/
>> GateARFTableMgr.cc:14 <http://gatearftablemgr.cc:14>:
>> /home/angela/Gate-9.0/source/arf/include/GateARFTableMgr.hh:14:7: note:
>> forward declaration of ‘class GateARFTable’
>>    14 | class GateARFTable;
>>       |       ^~~~~~~~~~~~
>> /home/angela/Gate-9.0/source/arf/src/GateARFTableMgr.cc:310
>> <http://gatearftablemgr.cc:310>:13: error: invalid use of incomplete
>> type ‘class GateARFTable’
>>   310 |     arfTable->SetERef(tableBuffer[3]);
>>       |             ^~
>> In file included from /home/angela/Gate-9.0/source/arf/src/
>> GateARFTableMgr.cc:14 <http://gatearftablemgr.cc:14>:
>> /home/angela/Gate-9.0/source/arf/include/GateARFTableMgr.hh:14:7: note:
>> forward declaration of ‘class GateARFTable’
>>    14 | class GateARFTable;
>>       |       ^~~~~~~~~~~~
>> /home/angela/Gate-9.0/source/arf/src/GateARFTableMgr.cc:322
>> <http://gatearftablemgr.cc:322>:13: error: invalid use of incomplete
>> type ‘class GateARFTable’
>>   322 |     arfTable->FillTableFromBuffer(tableBuffer);
>>       |             ^~
>> In file included from /home/angela/Gate-9.0/source/arf/src/
>> GateARFTableMgr.cc:14 <http://gatearftablemgr.cc:14>:
>> /home/angela/Gate-9.0/source/arf/include/GateARFTableMgr.hh:14:7: note:
>> forward declaration of ‘class GateARFTable’
>>    14 | class GateARFTable;
>>       |       ^~~~~~~~~~~~
>> make[2]: *** [CMakeFiles/GateLib.dir/build.make:128:
>> CMakeFiles/GateLib.dir/source/arf/src/GateARFTableMgr.cc.o] Error 1
>> make[2]: *** [CMakeFiles/GateLib.dir/build.make:154:
>> CMakeFiles/GateLib.dir/source/digits_hits/src/GateActions.cc.o] Error 1
>> make[1]: *** [CMakeFiles/Makefile2:290: CMakeFiles/GateLib.dir/all] Error
>> 2
>> make: *** [Makefile:130: all] Error 2
>>
>> This is actually only the lost couple of lines, there are many more such
>> errors and warnings like these before the build completely fails.
>>
>> The ccmake options look like this:
>>
>>  BUILD_TESTING                    OFF
>>
>>
>>  CMAKE_BACKWARDS_COMPATIBILITY    2.4
>>
>>
>>  CMAKE_BUILD_TYPE                 Release
>>
>>
>>  CMAKE_INSTALL_PREFIX             /home/angela/gate-install
>>
>>
>>  EXECUTABLE_OUTPUT_PATH
>>
>>
>>  GATE_COMPILE_GATEDIGIT           OFF
>>
>>
>>  GATE_COMPILE_WITH_NATIVE         OFF
>>
>>
>>  GATE_USE_DAVIS                   OFF
>>
>>
>>  GATE_USE_ECAT7                   OFF
>>
>>
>>  GATE_USE_GEANT4_UIVIS            ON
>>
>>
>>  GATE_USE_ITK                     OFF
>>
>>
>>  GATE_USE_LMF                     OFF
>>
>>
>>  GATE_USE_OPTICAL                 OFF
>>
>>
>>  GATE_USE_RTK                     OFF
>>
>>
>>  GATE_USE_SYSTEM_CLHEP            OFF
>>
>>
>>  GATE_USE_TORCH                   OFF
>>
>>
>>  GATE_USE_XRAYLIB                 OFF
>>
>>
>>  Geant4_DIR
>>  /home/angela/geant4.10.06.p03-install/lib/Geant4-10.6.3
>>  LIBRARY_OUTPUT_PATH
>>
>>
>>  PTL_DIR
>> /home/angela/geant4.10.06.p03-install/lib/Geant4-10.6.3/PTL
>>
>>  ROOTCINT_EXECUTABLE              /home/angela/root/bin/rootcint
>>
>>
>> There was initially another problem that seemed to originate from root
>> and Geant4 having been compiled with different C++ standards. We rebuilt
>> Geant4 enforcing the C++ 17 standard and root is actually the downloaded
>> binary which seems to work fine.
>>
>> Does anyone have an idea what the error during the GATE build could be
>> and how to fix it?
>>
>> Thanks a lot in advance!
>>
>> Best,
>> Tim
>> _______________________________________________
>> Gate-users mailing list
>> Gate-users at lists.opengatecollaboration.org
>> http://lists.opengatecollaboration.org/mailman/listinfo/gate-users
>
> _______________________________________________
> Gate-users mailing list
> Gate-users at lists.opengatecollaboration.org
> http://lists.opengatecollaboration.org/mailman/listinfo/gate-users
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opengatecollaboration.org/pipermail/gate-users/attachments/20220218/bc078b7d/attachment-0001.html>


More information about the Gate-users mailing list