[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: failed make of release-2009-02-24
Blake,
When you are doing a global build of everything (yes, redundant) it is
really intended that the build be self-contained, i. e., nothing goes
into "my" type directories. I think that this is a good policy to
follow, even if you are doing the build for a single user: yourself.
Then it is clear where all the products of that build are and how they
can be varied using "my" stuff later on. In this sense, global builds
are a special case. Of course you don't have to do things this way, but
I think this is a case where neatness counts.
To get this effect you can either undefine HALLD_MY or alternately, I
think you can define HALLD_MY to be HALLD_HOME. Then you have an
explicit "one and the same" indication in your environment.
Come to think of it, I think we should make the top level makefile do
this definition automatically. That is how the CLAS top-level makefile
worked. David, comments?
-- Mark
Blake Leverington wrote:
> Hi David,
>
> I've been looking at the file and directory structure and it seems
> that since i have HALLD_MY defined, the majority of the binary,
> library and include files end up there. However, there still seems to
> be several files that put them in HALLD_HOME as well as with a
> different OS directory (i.e. lib/Linux instead of
> lib/Linux_RHEL4-athlon-gcc3.4.4). I've never tried installing with
> only HALLD_HOME set so I do not know if it behaves abnormally or not.
>
> Ok, I'll add those files to the release and the main trunk.
>
> Cheers,
> -Blake
>
> David Lawrence wrote:
>>
>> Hi Blake,
>>
>> We may want to update the main trunk and the release with that
>> fix, but I need to understand exactly why it is needed first.
>>
>> Let me see if I got this straight and you can correct me if I'm
>> misunderstanding something: It looks like you may be building the
>> whole source tree while you have a HALLD_MY environment variable set
>> instead of just HALLD_HOME. This means that as you go through a
>> top-level make *everything* is getting installed into HALLD_MY rather
>> than in HALLD_HOME. Also, a top-level make was never done with just
>> HALLD_HOME set so that (essentially) none of the headers, libraries,
>> or executables *ever* get installed in HALLD_HOME. Have I got this
>> right?
>>
>> If this is the case then the behavior you've seen starts to make more
>> sense (not that it's the way it should be). The make system was
>> designed assuming that one would always build into HALLD_HOME first
>> and that HALLD_MY would be used for perturbations later when someone
>> wanted to mess with only a part of the code without spoiling the
>> HALLD_HOME directory.
>>
>> So I guess that while your use of HALLD_MY is unanticipated, there's
>> no reason it shouldn't work. Given that, I would say that you should
>> go ahead and commit the change to the Makefile in Utilities/hddm to
>> release-2009-02-24. While you're at it, you might as well make the
>> change in the main trunk too so we don't run into this again with the
>> next release.
>>
>> Regards,
>> -David
>>
>> Blake Leverington wrote:
>>> Hi David,
>>>
>>> I went and added -I$HALLD_MY/include to the hddm/Makefile in the
>>> appropriate spots and now everything compiles wonderfully. I don't
>>> think I can check this in, can I?
>>>
>>> Cheers,
>>> -Blake
>>>
>>> Blake Leverington wrote:
>>>> I mean $HALLD_HOME/include only contains xstream and xstream.h.
>>>> Everything else is in $HALLD_MY/include.
>>>>
>>>> -Blake
>>>>
>>>> Blake Leverington wrote:
>>>>> Hi David,
>>>>>
>>>>> particleType.h is being put into $HALLD_MY/include, not
>>>>> $HALLD_HOME/include. I did a make pristine and removed the bin,
>>>>> lib and include directories when I recompiled. So I think it is
>>>>> the -I/home/s4/leverin/gluex/svn/include that isn't right or that
>>>>> -I HALLD_MY/include needs to be added. There's only a couple other
>>>>> files in there ( xstream and xstream.h ).
>>>>>
>>>>>
>>>>> environment variables from my .tcshrc file:
>>>>> setenv HALLD_HOME /home/s4/leverin/gluex/svn
>>>>> setenv HALLD_MY /home/s4/leverin/gluex/my_src
>>>>>
>>>>> -Blake
>>>>>
>>>>> David Lawrence wrote:
>>>>>>
>>>>>> Hi Guys,
>>>>>>
>>>>>> Hmmm.... Something funny is going on here. In Blake's output
>>>>>> below, I can see that the $HALLD_HOME/include directory is being
>>>>>> correctly added to the the path (via
>>>>>> -I/home/s4/leverin/gluex/svn/include) when trying to compile
>>>>>> xml-hddm.cpp . The particleType.h file should have already been
>>>>>> copied into that when the top level Makefile was invoked since it
>>>>>> invokes the following chain:
>>>>>>
>>>>>> src/Makefile -> libraries/Makefile -> libraries/include/Makefile
>>>>>>
>>>>>> All of this should have been done automatically before
>>>>>> src/programs/Makefile was invoked.
>>>>>>
>>>>>> Can you see any error/warning messages when the top-level
>>>>>> Makefile tries invoking the libraries/include/Makefile ?
>>>>>>
>>>>>> What happens if you just run "make" in src/libraries/include?
>>>>>>
>>>>>> This seemed to work fine for me when I checked out fresh copies
>>>>>> of the release on Fedora 8 and Mac OS X 10.5. Blake, can you also
>>>>>> remind me of the exact OS version you are using along with the
>>>>>> gcc version so I can try to reproduce the error? Also, remove the
>>>>>> include, lib, and bin directories from $HALLD_HOME, do a make
>>>>>> pristine, and do a top level "make" again and send me the entire
>>>>>> output so I can compare it with what I'm getting.
>>>>>>
>>>>>>
>>>>>> Regards,
>>>>>> -David
>>>>>>
>>>>>>
>>>>>> Matthew Shepherd wrote:
>>>>>>>
>>>>>>> particleType.h has been a thorn in my side for years!!!!
>>>>>>>
>>>>>>> David can maybe provide you with an appropriate fix. I usually
>>>>>>> end up finding the file and manually copying to some include
>>>>>>> directory that I know will be used at compile time.
>>>>>>>
>>>>>>> -Matt
>>>>>>>
>>>>>>>
>>>>>>> On Feb 25, 2009, at 12:17 PM, Blake Leverington wrote:
>>>>>>>
>>>>>>>> Hi guys,
>>>>>>>>
>>>>>>>> I downloaded the new tagged version of the software, and
>>>>>>>> recompiled everything today, again, because Matt updated the
>>>>>>>> JANA version to 0.4.9 on the cluster, but I encountered this
>>>>>>>> error when I remade the source tree (I did make clean first). I
>>>>>>>> think it failed on this last time I compiled and just went
>>>>>>>> folder by folder and made them individually. I had been hoping
>>>>>>>> the whole tree would have compiled flawlessly from the /src
>>>>>>>> folder.
>>>>>>>>
>>>>>>>> make -C hddm install
>>>>>>>> make[3]: Entering directory
>>>>>>>> `/home/s4/leverin/gluex/svn/src/programs/Utilities/hddm'
>>>>>>>> /usr/bin/g++ -g -D_REENTRANT
>>>>>>>> -I/home/s4/leverin/gluex/svn/src/include
>>>>>>>> -I/share/apps/xerces/xerces-c-src_2_7_0/include \
>>>>>>>> -I/home/s4/leverin/gluex/svn/include -c XString.cpp
>>>>>>>> /usr/bin/g++ -g -D_REENTRANT
>>>>>>>> -I/home/s4/leverin/gluex/svn/src/include
>>>>>>>> -I/share/apps/xerces/xerces-c-src_2_7_0/include \
>>>>>>>> -I/home/s4/leverin/gluex/svn/include -c XParsers.cpp
>>>>>>>> /usr/bin/g++ -g -D_REENTRANT
>>>>>>>> -I/home/s4/leverin/gluex/svn/src/include
>>>>>>>> -I/share/apps/xerces/xerces-c-src_2_7_0/include \
>>>>>>>> -I/home/s4/leverin/gluex/svn/include -o hddm-c hddm-c.cpp
>>>>>>>> XString.o XParsers.o \
>>>>>>>> -L/share/apps/xerces/xerces-c-src_2_7_0/lib -lxerces-c
>>>>>>>> /usr/bin/g++ -g -D_REENTRANT
>>>>>>>> -I/home/s4/leverin/gluex/svn/src/include
>>>>>>>> -I/share/apps/xerces/xerces-c-src_2_7_0/include \
>>>>>>>> -I/home/s4/leverin/gluex/svn/include -o xml-hddm xml-hddm.cpp
>>>>>>>> XString.o XParsers.o \
>>>>>>>> -L/home/s4/leverin/gluex/svn/lib/Linux
>>>>>>>> -L/home/s4/leverin/gluex/svn/src/external/xstream/src -lxstream \
>>>>>>>> -L/share/apps/xerces/xerces-c-src_2_7_0/lib -lxerces-c
>>>>>>>> xml-hddm.cpp:61:26: particleType.h: No such file or directory
>>>>>>>> xml-hddm.cpp: In member function `void
>>>>>>>> HDDMmaker::outputStream(xercesc_2_7::DOMElement*,
>>>>>>>> xercesc_2_7::DOMElement*, std::ostream&)':
>>>>>>>> xml-hddm.cpp:473: error: `Particle_t' undeclared (first use
>>>>>>>> this function)
>>>>>>>> xml-hddm.cpp:473: error: (Each undeclared identifier is
>>>>>>>> reported only once for each function it appears in.)
>>>>>>>> xml-hddm.cpp:473: error: `ParticleType' undeclared (first use
>>>>>>>> this function)
>>>>>>>> make[3]: *** [xml-hddm] Error 1
>>>>>>>> make[3]: Leaving directory
>>>>>>>> `/home/s4/leverin/gluex/svn/src/programs/Utilities/hddm'
>>>>>>>> make[2]: *** [hddm] Error 2
>>>>>>>> make[2]: Leaving directory
>>>>>>>> `/home/s4/leverin/gluex/svn/src/programs/Utilities'
>>>>>>>> make[1]: *** [Utilities] Error 2
>>>>>>>> make[1]: Leaving directory
>>>>>>>> `/home/s4/leverin/gluex/svn/src/programs'
>>>>>>>> make: *** [programs] Error 2
>>>>>>>>
>>>>>>>>
>>>>>>>> -Blake
>>>>>>>>
>>>>>>>> David Lawrence wrote:
>>>>>>>>>
>>>>>>>>> Hi All,
>>>>>>>>>
>>>>>>>>> I have just tagged a new Hall-D software release:
>>>>>>>>> release-2009-02-24. I have successfully compiled this on our 3
>>>>>>>>> supported platforms. Please let me know if you have trouble
>>>>>>>>> compiling it since this will be the release that the
>>>>>>>>> participants in Friday's tutorial will initially use and we
>>>>>>>>> want them to run into as few snags as possible.
>>>>>>>>>
>>>>>>>>> Here are the release notes (minus the last part which
>>>>>>>>> contains the relevant svn log messages).
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Release Notes for Hall-D source code
>>>>>>>>> ------------------------------------
>>>>>>>>>
>>>>>>>>> URL: https://halldsvn.jlab.org/repos/tags/release-2009-02-24
>>>>>>>>> Date: February 24, 2009
>>>>>>>>> Author: David Lawrence davidl@jlab.org
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> This release has been compiled on the following systems
>>>>>>>>> with the specified versions:
>>>>>>>>>
>>>>>>>>> Mac OS X 10.5.6 (Darwin Kernel Version 9.6.0)
>>>>>>>>> ------------
>>>>>>>>> Xerces 2.7.0
>>>>>>>>> JANA 0.4.9
>>>>>>>>> ROOT 5.22/00
>>>>>>>>> cernlib 2006 (compiled on 10.5 with liblapack3 and libblas)
>>>>>>>>> gcc/g++ : gcc version 4.0.1 (Apple Inc. build 5490)
>>>>>>>>> gfortran : gcc version 4.2.3
>>>>>>>>>
>>>>>>>>> Fedora release 8 (Werewolf) on i686 32-bit
>>>>>>>>> ------------
>>>>>>>>> Xerces 2.7.0
>>>>>>>>> JANA 0.4.9
>>>>>>>>> ROOT 5.18/00
>>>>>>>>> cernlib 2005 (/apps/cernlib/i386_fc8 on JLab CUE)
>>>>>>>>> lesstif-devel 0.95.0-20.fc8
>>>>>>>>> gcc/g++/gfortran : 4.1.2 20070925 (Red Hat 4.1.2-33)
>>>>>>>>>
>>>>>>>>> Red Hat Enterprise Linux 5.2 on i686 32-bit
>>>>>>>>> ------------
>>>>>>>>> Xerces 2.7.0
>>>>>>>>> JANA 0.4.9
>>>>>>>>> ROOT 5.18/00
>>>>>>>>> cernlib 2005 (/apps/cernlib/i386_rhel5 on JLab CUE)
>>>>>>>>> gcc/g++/gfortran : 4.1.2 20071124 (Red Hat 4.1.2-42)
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Summary of changes since last release
>>>>>>>>> =====================================================
>>>>>>>>> This is a summary list made from visually scanning the svn log
>>>>>>>>> messages
>>>>>>>>> for the main trunk since the last release. It may be
>>>>>>>>> incomplete. See the
>>>>>>>>> entire list of logs below for the complete list of changes.
>>>>>>>>>
>>>>>>>>> o "string" type variables fixed in HDDM
>>>>>>>>>
>>>>>>>>> o TRACKING
>>>>>>>>> - Re-tooled DParticle, DTrack, and DTrackCandidate factories
>>>>>>>>> with
>>>>>>>>> THROWN tags to make consistent and easier to use for
>>>>>>>>> debugging.
>>>>>>>>>
>>>>>>>>> - Added DTrackHitSelector virtual class and corresponding
>>>>>>>>> DTrackHitSelectorALT1 for hit selection (only used by
>>>>>>>>> ALT1 fitter at present)
>>>>>>>>> - General tools added for accessing material map. Two methods
>>>>>>>>> were implmented. One uses tabulated values read through
>>>>>>>>> calibration
>>>>>>>>> system and the other uses ROOT to in code generated directly
>>>>>>>>> from XML (see hddsroot.h).
>>>>>>>>> - Continued development on Kalman filter including better
>>>>>>>>> e-loss
>>>>>>>>> and MULS
>>>>>>>>> - Copied Mark's LSLM least-squares track fitter to main
>>>>>>>>> trunk as
>>>>>>>>> plugin in src/programs/Analysis/plugins/trkfitterLSLM.
>>>>>>>>>
>>>>>>>>> o Numbering schemes updated for both TOF and FCAL to reflect
>>>>>>>>> newly adopted
>>>>>>>>> convention of having id numbers increase as the coordinate value
>>>>>>>>> increases.
>>>>>>>>>
>>>>>>>>> o HDParSim program made into hdparsim plugin in:
>>>>>>>>> src/programs/Simulation/plugins/hdparsim. Protons, pions and
>>>>>>>>> photons
>>>>>>>>> are now smeared using independant tables.
>>>>>>>>>
>>>>>>>>> o Added hddm_cull_events, hddm_merge_events, and
>>>>>>>>> hddm_merge_files
>>>>>>>>> to standard build.
>>>>>>>>>
>>>>>>>>> o Removed hddsGeant3.F from repository. Generation of it is
>>>>>>>>> now required
>>>>>>>>> from the XML source which is in the repository.
>>>>>>>>>
>>>>>>>>> o Fixed/enhanced hd_dump (text viewer) and hdview2 (graphical
>>>>>>>>> event viewer).
>>>>>>>>> Most notably, hdview2 now draws BCAL and FCAL hits.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> =====================================================
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Regards,
>>>>>>>>> -David
>>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>