|Message: Re: setting G4LIB_USE_EXPAT||Not Logged In (login)|
Click on the Forum title, e.g. on the "Forums by Category" page, to read a sequence of postings to the Forum and its threads all in one page. If you are only interested in one thread or the thread following a specific posting, click the thread or the posting, which takes you to a smaller page, which contains only the part you are interested in and may be easier to navigate.
Messages are "chained" if there are only replies at the first level, i.e. 1/1.html, 1/1/1.html etc. In case of "chained" messages the message number is replaced by the icon and there is no indentation.
Inline: Display the subject line only or also the text of the posting(s); for the choice "All" the "Outline" choices are switched off.
|1||0||1||no text / full text of posting|
|2||1||All||text for level 1 only / text for All postings|
Outline: Choose the depth of the posting thread, successive toggle controls provide increasing detail.
|1||2||1||2 levels / 1 level (original posting)|
|2||3||2||3 levels / 2 levels|
|3||3||All||3 levels / all levels (all postings)|
On Tue, 04 Feb 2014 22:36:52 GMT, Anthony Villano wrote: > ... > As you can see, I've selected for the EXPAT package to be compiled > internally, because I don't want to use my system version. > > After compilation of one of my standard simulations, I get the > following: > > /usr/bin/ld.real: cannot find -lexpat collect2: ld returned 1 exit > status > > Obvious: The linker is trying to find the EXPAT shared object file and > can't. Since I knew this was supposed to be compiled with Geant4 I poked > around in the libraries that it created and found libG4expat.so. > Presumably this is the library, with 'G4' appended to let me know it was > compiled with Geant, and also maybe so that my system doesn't get > confused. Question then became, why are the internal Geant make files > (which I deduced were responsible for creating the link line) using > -lG4expat instead of -lexpat? > > Looking into 'binmake.gmk' which is included into my user-defined > top-level GNU make file (a simulation which I originally coded for > v4.9.3), I found the following line: > > ifdef G4LIB_USE_EXPAT > LDLIBS2 += -lG4expat > endif > > Which shows me that if I set the G4LIB_USE_EXPAT variable, then I'll > probably use the correct link statement, indeed this worked. > > Question is, why was this variable not set by my automatic G4 setup > script? Presumably it 'knew' that I choose for EXPAT to be compiled with > Geant4. More concretely, why did I have to do:
This looks to be a bug in the configuration of the shell scripts. Duly noted, and should be fixed in upcoming patch(es).
> Incidentally, I'm not sure why I had to source both of the above scripts > anyway. The first one only set the data paths, not G4INSTALL and > similar. Actually I just checked and the second one sets the data paths > as well, so I could just do: > > source > /path/to/geant4.10.00-install/share/Geant4-10.0.0/geant4make/geant4make.sh
If you are using the Geant4 makefile system to build your application then you can just source the the
|Inline Depth:||Outline Depth:||Add message:|