Re: RPMMakefile fails after starting Makefile.Release target: create_ProductVersionFile
Surendra Kodali <[email protected]>
| Newsgroups | gmane.network.open-pegasus.general |
|---|---|
| Message-ID | <OFCEA232CD.E9BEC54E-ON652576DC.0026023A-652576DC.002C5EF5@in.ibm.com> |
Pegasus RPMMakefile looks in env_var_Linux.status file for environment
variables. Environment variables defined in .bashrc file will override the
environment variables defined in env_var_Linux.status file. PEGASUS_ROOT
specified in the env_var_Linux.status should be the rpm BUILD location NOT
the pegasus src code in your local directory. For suppose if you are
building rpms with root access on RHEL, PEGASUS_ROOT specified in the
env_var_Linux.status should be "/usr/src/redhat/BUILD/tog-pegasus-2.9.1"
otherwise simply comment all the below env varibles in env_var_Linux.status
file.
#PEGASUS_ROOT=
#PEGASUS_HOME=
#PEGASUS_PLATFORM=
Pegasus rpm spec file will take care of all the above mentioned environment
variables.
Regards
Surendra
John Robinson
<[email protected]
m> To
Paul von Behren
04/03/2010 01:27 <[email protected]>
cc
"Sampige, Sahana Prabhakar
\(STSD\)" <[email protected]>,
"[email protected]"
<[email protected]>
Subject
Re: RPMMakefile fails after
starting Makefile.Release target:
create_ProductVersionFile
What I fear is that maybe somehow I have set "PEGASUS_ROOT" to well. The
scripting in RPMMakefile is such that the definition of PEGASUS_ROOT is
actually changed during its execution. In particular, it appears to move
PEGASUS_ROOT from a path ending in "pegasus" to a path ending in
"tog-pegasus-2.9.1". Hence if for some reason the RPMMakefile really is
getting the value of PEGASUS_ROOTÂ from .bashrc , env_var.status, or
env_var_Linux.status after PEGASUS_ROOT has moved --- then it would seem
only rational for the build to fail in the fashion I mentioned.
On Wed, Mar 3, 2010 at 12:13 PM, Paul von Behren <[email protected]>
wrote:
I have seen the messages John saw - I recall working around the problem,
but don't recall the details. I agree with him that this is not related
to PEGASUS_PLATFORM. Looking at mak/config.mak, I believe that an
unexpected value for PEGASUS_ROOT will not cause any sort of error
message, but will cause cause PLATFORM_FILES to be set incorrectly -
which in turn cases VALID_PLATFORMS to have a value of ".". This may be
the first symtom of missetting PEGASUS_ROOT - so double check that you
have that set to the base of the pegasus distribution and that the mak
sub-directory is readable.
I am now recalling this symptom showing up when I has pegasus source on a
shared directory - the "~" shell operator was now working as expected and
I have to specify the full path in PEGASUS_ROOT. But this is a fuzzy
recollection.
Try running make with the "-d" (debug)Â or "-n" (dry-run) option to see
how make is interpreting the internal variables.
Hope this helps in troubleshooting! Just keep telling yourself "make is
fun" :-)
Paul
On 3/3/2010 9:20 AM, John Robinson wrote:
Sahana,
PEGASUS_PLATFORMÂ was set in both the .bashrc script, the
env_var.status, and the env_var_Linux.status script. The
env_var_Linux.status and the env_var.status are linked to the same
file.
Before compilation, a check was made by executing "env" to verify
that PEGASUS_PLATFORM was set.
The logic of the line and the printout of the line itself verifies
that the VALID_PLATFORMS was not set. The error line I posted was
not edited. The output from the echo of VALID_PLATFORMSÂ was a
single period: "." .
On Wed, Mar 3, 2010 at 12:42 AM, Sampige, Sahana Prabhakar (STSD) <
[email protected]> wrote:
Hi John,
Looks like the PEGASUS_PATFORM variable has not been set through
your .bashrc script. Please check by doing an
# echo $PEGASUS_PLATFORM.
You can get a list of VALID_PLATFORMS from
http://cvs.opengroup.org/cgi-bin/viewcvs.cgi/pegasus/doc/BuildAndReleaseOptions.html
VALID_PLATFORMS not being displayed is not the reason for your
build failure. Just that the error message displayed is incorrect.
Hope this helps.
Rgds,
Sahana
From: John Robinson [mailto:[email protected]]
Sent: Wednesday, March 03, 2010 3:48 AM
To: [email protected]
Subject: RPMMakefile fails after starting Makefile.Release target:
create_ProductVersionFile
make[1]: Entering directory
`/usr/src/redhat/BUILD/tog-pegasus-2.9.1'
/usr/src/redhat/BUILD/tog-pegasus-2.9.1/mak/config.mak:317: ***
PEGASUS_PLATFORM environment variable must be set to one of the
following: . Stop.
Since the PEGASUS_PLATFORMÂ is set in both the unix environment
from a .bashrc setting and in the env_var_Linux.status file, I am
left with the conclusion
that for some reason the variable VALID_PLATFORMS is not being
set.
Any help offered would be appreciated.