purnima bhandari wrote:
Hi All,

Thanks for all the help...

I am able to link by adding my own .com fine which is defining the compiler's needed logical.I added that one in the descrip.mms file into the .FIRST location for MMK and i also modified the descrip_mms.template for Perl5.10.0.

And as I stated in my first e-mail, making such changes would not result in perl building successfully.

The line that you added attempts to change the version of the C compiler used in the compile. This has no effect on what run time library is in use.

Why do you think you need to do this?

Nothing in your previous posts indicate that this is needed to do what you have stated you are trying to do.

Perl 5.10.0 should compile fine with any version of DEC/Compaq/HP C on any VMS platform later than 5.5-2. There are a few small patches needed for some older versions that have been posted to this list.

Now the build is going fine except for the file VMS.C.Below is the warning i am getting.

CC/DECC/NOANSI_ALIAS /Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj/NoList-
/float=ieee/ieee=denorm/Define=(PERL_CORE,_USE_STD_STAT=1) VMS.C


    VMS_INO_T_COPY(statbufp->st_ino, statbufp->crtl_stat.st_ino);
....^
%CC-W-CVTDIFTYPES, In this statement, "statbufp->crtl_stat.st_ino"
>  of type "pointer to unsigned short", is being converted to "unsig
ned int".

You have set a macro definition that is not available in the C RTL header file for the version of VMS you are building on.

This has nothing to do with the compiler version you are using.

Changing the compiler version is done for several reasons, but not the one that you gave in your previous e-mail, which is why changing it does not solve your problem.

The compiler version used is DEC C V 7.x.

Tell us what you are trying to accomplish and why.

Changing the version that the compiler you are using will not help with run-time library issues.

>     On 17 Nov 2008, at 03:38 , purnima bhandari wrote:
>
>>
>>     I am trying to build a perl5.10.0 using MMK.
>>     I am linking against the 8.3 decc$shr on a 7.3-2 system.

This has nothing to do with the compiler version.

>>     Compiler virsion of the & 7.3-2 is below.
>>     $ cc/ver
>>     DEC C V5.7-006 on OpenVMS Alpha V7.3-2
>>     $

Here are the issues you are facing:

1. PERL uses DCL to determine what features are available on the system perl is being built on in the configure state.

This means that even if you change the link to use the newer DECC$SHR, and got everything else to work, you will still end up with a Perl that is limited to what is available on the build system.

In some cases it does this by building small programs, in others by internal knowledge.

The compiler version has nothing at all to do with this.

Because you got incompatible parameters in your resulting build, it looks like you did something to bypass that phase of the Perl build.

2. In the Perl build procedure, perl builds several helper programs that are run. If you succeed in linking them against the newer DECC$SHR, they may not run, and may fail in odd ways.

The compiler version has nothing at all to do with this.

3. The compiler by default, like DCL will use the header file libraries for the build platform. This will result in it only using the features that are available on the build platform, even if you get it to link with the newer library.

> I am very new to the VMS .Can anyone please help me with their
> suggestions?

What are you trying to do?

There is a need for more people to be hacking on VMS perl internals, so I do not want to chase you away.

However if you are new, you should start with simple things, and explain why you think you need to do complex solutions.

VMS does not make it as hard to do things as other platforms, so trying to solve simple problems by doing complex things as maintaining different compiler versions is usually a waste of time.

-John
[EMAIL PROTECTED]
Personal Opinion Only

Reply via email to