Hello!

I want to install VMS::Queue module on my Alpha VMS 7.21 system, however I
after many try I am still unable to compile it on VMS. My "C" compiler is
installed as "CXX" therefore I need to make some changes in "DESCRIP.MMS"
file (CC/DEC to CXX). After running MMS I am getting followings errors :
----------------------------------------------------------------------------
-----------------------------------------------------------------------
CXX
/Include=[]/Prefix=All/Obj=.obj/List/Machine/Define=("VERSION=""0.54""","XS_
VERSION=""0.54""")/Include=(perl_root:[lib.VMS_AXP.5_00503.CORE])/Optimize
QUEU
E.c + SYS$LIBRARY:SYS$LIB_C/LIBRARY
 
#         include "unixish.h"
..........^
%CXX-F-NOINCLFILE, Cannot find file "unixish.h" specified in #include
directive.
at line number 1121 in file PERL_ROOT:[LIB.VMS_AXP.5_00503.CORE]PERL.H;1
 
#         include "unixish.h"
..........^
%CXX-E-NOOBJ, Object file deleted.
at line number 1121 in file PERL_ROOT:[LIB.VMS_AXP.5_00503.CORE]PERL.H;1
%MMK-F-ERRUPD, error status %X15F61264 occurred when updating target
QUEUE.OBJ
----------------------------------------------------------------------------
----------------------------------------------------------------------------
---

I copied "VMSISH.h" file as "UNIXISH.h" in core directory, but then I have
started getting many other errors as below:
============================================================================
=
   typedef int sigset_t;
...............^
%CXX-E-NOTCOMPAT, In this declaration, the type of "sigset_t" is not
compatible
with the type of a previous declaration of "sigset_t" at line number 108 in
file
 SYS$COMMON:[SYSLIB]DECC$RTLDEF.TLB;2.
at line number 394 in file PERL_ROOT:[LIB.VMS_AXP.5_00503.CORE]UNIXISH.H;1
 
  OurDataList = malloc(sizeof(FetchedItem) * InfoCount);
..^
%CXX-E-PTRMISMATCH, In this statement, the referenced type of the pointer
value
"malloc(sizeof(FetchedItem)*InfoCount)" is "void", which is not compatible
with
"FetchedItem".
at line number 1290 in file DRA1:[PERL.MD.VMS.QUEUE]QUEUE.XS;1
 
  ReturnLengths = malloc(sizeof(short) * InfoCount);
..^
%CXX-E-PTRMISMATCH, In this statement, the referenced type of the pointer
value
"malloc(sizeof(short)*InfoCount)" is "void", which is not compatible with
"unsig
ned short".
at line number 1294 in file DRA1:[PERL.MD.VMS.QUEUE]QUEUE.XS;1
 
        TempStringBuffer = malloc(*(OurDataList[i].ReturnLength) + 1);
........^
%CXX-E-PTRMISMATCH, In this statement, the referenced type of the pointer
value
"malloc(*(OurDataList[i].ReturnLength)+1)" is "void", which is not
compatible wi
th "char".
at line number 1352 in file DRA1:[PERL.MD.VMS.QUEUE]QUEUE.XS;1
 
        strncpy(TempStringBuffer, OurDataList[i].ReturnBuffer,
..................................^
%CXX-E-PTRMISMATCH, In this statement, the referenced type of the pointer
value
"OurDataList[i].ReturnBuffer" is "void", which is not compatible with "const
cha
r".
at line number 1354 in file DRA1:[PERL.MD.VMS.QUEUE]QUEUE.XS;1
 
                   newSVpv(OurDataList[i].ReturnBuffer,
...........................^
%CXX-E-PTRMISMATCH, In this statement, the referenced type of the pointer
value
"OurDataList[i].ReturnBuffer" is "void", which is not compatible with
"char".
at line number 1364 in file DRA1:[PERL.MD.VMS.QUEUE]QUEUE.XS;1
 
        TempLongPointer = OurDataList[i].ReturnBuffer;
........^
%CXX-E-PTRMISMATCH, In this statement, the referenced type of the pointer
value
"OurDataList[i].ReturnBuffer" is "void", which is not compatible with
"long".
at line number 1393 in file DRA1:[PERL.MD.VMS.QUEUE]QUEUE.XS;1
 
        TempQuadPointer = OurDataList[i].ReturnBuffer;
........^
%CXX-E-PTRMISMATCH, In this statement, the referenced type of the pointer
value
"OurDataList[i].ReturnBuffer" is "void", which is not compatible with
"__int64".
at line number 1400 in file DRA1:[PERL.MD.VMS.QUEUE]QUEUE.XS;1
 
  ListOItems = malloc(sizeof(ITMLST) * (QueueItemCount + 1));
..^
%CXX-E-PTRMISMATCH, In this statement, the referenced type of the pointer
value
"malloc(sizeof(ITMLST)*(QueueItemCount+1))" is "void", which is not
compatible w
ith "ITMLST".
at line number 1945 in file DRA1:[PERL.MD.VMS.QUEUE]QUEUE.XS;1
 
  ListOItems = malloc(sizeof(ITMLST) * (EntryItemCount + 1));
..^
%CXX-E-PTRMISMATCH, In this statement, the referenced type of the pointer
value
"malloc(sizeof(ITMLST)*(EntryItemCount+1))" is "void", which is not
compatible w
ith "ITMLST".
at line number 2010 in file DRA1:[PERL.MD.VMS.QUEUE]QUEUE.XS;1
 
at line number 2112 in file DRA1:[PERL.MD.VMS.QUEUE]QUEUE.XS;1
%MMK-F-ERRUPD, error status %X15F61262 occurred when updating target
QUEUE.OBJ
========================================================================

I don't know much about VMS and C++. I would highly appreciate if someone
could guide me to resolve this problem.

Thank in Advance.

Ravi

Reply via email to