Message: Re: Attempting to install under FreeBSD 6.2 with gcc 3.4.6 Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

More Re: Attempting to install under FreeBSD 6.2 with gcc 3.4.6 

Keywords: FreeBSD compile error
Forum: Installation and Configuration
Re: Question Attempting to install under FreeBSD 6.2 with gcc 3.4.6 (Mark Looper)
Re: None Re: Attempting to install under FreeBSD 6.2 with gcc 3.4.6 (Ben Morgan)
Date: 29 Feb, 2008
From: Mark Looper <Mark Looper>

Thanks -- between your suggestion and one (off-list) from John Allison, I determined that the bug was in the FreeBSD echo command: the construct $(ECHO) in $G4INSTALL/source/GNUmakefile was being expanded to /bin/echo -e, but there is no -e switch in FreeBSD's echo. Thus all lines being echoed were preceded by -e , which (in hindsight) I can see in the g4make.log excerpt that I put in my original post: for example,

-e Building library management utility liblist ...

As a result, all the /tmp/G4*.$(unique) files referenced in the libmap section of the GNUmakefile contained not lists of files, but -e filename on each line, which caused the liblist program to choke. I simply hard-coded /bin/echo (without the -e) to replace all occurrences of $(ECHO) in the libmap section, and voila! I was able to run gmake libmap successfully. (I couldn't find where $(ECHO) was defined, so I couldn't make the change at the source...)

However, I still don't appear to be done; my user code compilations crash at the link stage. This includes the official example codes that I've tried; e.g., example N01 (copied to my $G4WORKDIR) gives me

...
Compiling exampleN01.cc ...
warning: this program uses gets(), which is unsafe.
Using granular libraries ...
Linking exampleN01 ...
/home/looper/geant4.9.1.p01/lib/Linux-g++/libG4navigation.a(G4TransportationMana
ger.o)(.text+0x1bec): In function `G4TransportationManager::G4TransportationMana
ger()':
: undefined reference to `G4FieldManager::G4FieldManager(G4Field*, G4ChordFinder
*, bool)'
...

... followed by hundreds more undefined reference errors. I checked the g4make.log file for several of the source files, and they appear to have had dependencies made and been compiled without errors; the library files that contain the references are present in $G4LIB/$G4SYSTEM as expected, and that directory is in my $LD_LIBRARY_PATH as well. I note that I had to attach it (and $CLHEP_LIB_DIR) to my $LD_LIBRARY_PATH manually -- they aren't handled by the env.csh script that I source -- if that's a clue as to what I have set up wrong here. Can somebody suggest what I need to do to help Geant4 find its links?

Many thanks!

Inline Depth:
 1 1
 All All
Outline Depth:
 1 1
 2 2
 All All
Add message: (add)

 Add Message Add Message
to: "Re: Attempting to install under FreeBSD 6.2 with gcc 3.4.6"

 Subscribe Subscribe

This site runs SLAC HyperNews version 1.11-slac-98, derived from the original HyperNews


[ Geant 4 Home | Geant 4 HyperNews | Search | Request New Forum | Feedback ]