Operating System - OpenVMS
cancel
Showing results for 
Search instead for 
Did you mean: 

%ILINK-I-UDFSYM for VERB utility on I64

 
SOLVED
Go to solution

%ILINK-I-UDFSYM for VERB utility on I64

Hi,
I have not seen if anyone has built the VERB utility .EXE for I64. The link in compile.com is fine on Alpha (DEC C V5.6-003 on OpenVMS Alpha V7.3-1).

But on I64, I do not know how to fix the undefined symbol. From compile.com ...

$ cc verb
$ cdu verb_cld
$ cc verb_command
$ cc verb_disallows
$ cc verb_entity
$ cc verb_type
$ cc verb_find_entity
$ cc verb_file
$ cc init_cli
$ link/notraceback verb, verb_cld, verb_command, verb_disallows, -
verb_entity, verb_file, verb_type, verb_find_entity, init_cli
%ILINK-W-NUDFSYMS, 1 undefined symbol:
%ILINK-I-UDFSYM, CTL$AG_CLITABLE
%ILINK-W-USEUNDEF, undefined symbol CTL$AG_CLITABLE referenced
section: $CODE$
offset: %X0000000000000650 slot: 0
module: VERB
file: DISK1:[TOOL.VERB]VERB.OBJ;1
$!


The definition and use of the symbol is found as ...

$ search .c,.h CTL$AG_CLITABLE /window=5

******************************
DISK1:[TOOL.VERB]VERB.C;1

main(int argc, char *argv[])
{
globalref VectorBlock *ctl$ag_clitable;
static $DESCRIPTOR(p1,"P1");
static $DESCRIPTOR(q_all,"ALL");
***************
else
{ /* assume /process */
cmd_table = ctl$ag_clitable;
}
}
$

$ cc/version
HP C V7.3-018 on OpenVMS IA64 V8.3-1H1
$

Thanks for any education on this.

Regards,
Lester
8 REPLIES 8
P Muralidhar Kini
Honored Contributor
Solution

Re: %ILINK-I-UDFSYM for VERB utility on I64

Hi Lester,

Give "/SYSEXE" qualifier with the LINK command.

i.e. LINK/SYSEXE ...

That should resolve it.

Regards,
Murali
Let There Be Rock - AC/DC
Steven Schweda
Honored Contributor

Re: %ILINK-I-UDFSYM for VERB utility on I64

> [...] VERB utility [...]

Version?

Around here (VERB V2.2-2), the problem is a
pre-IA64 builder.

IT $ gdiff -u COMPILE.COM_orig COMPILE.COM
--- COMPILE.COM_orig 1995-08-24 09:44:08 -0500
+++ COMPILE.COM 2010-05-09 23:43:40 -0500
@@ -8,7 +8,7 @@
$!
$ cdu = "set command/object"
$!
-$ if target .eqs. "ALPHA"
+$ if target .nes. "VAX"
$ then
$ cc = "cc/nomember_alignment/standard=vaxc"
$ options = "/sysexe"
@@ -24,9 +24,9 @@
$!
$ if target .eqs. "VAX"
$ then
-$ if cpu .eqs. "ALPHA"
+$ if cpu .nes. "VAX"
$ then
-$ say "Cross compiling from Alpha to Vax not supported.."
+$ say "Cross compiling from ''cpu' to VAX not supported."
$ exit
$ endif
$ DECC = (f$trnlnm("DECC$CC_DEFAULT") .eqs. "/DECC") -

IT $ @ compile
IT $ exec verb exit
define verb EXIT
cliroutine EXIT, cliflags(immediate)

IT $ cc /version
HP C V7.3-018 on OpenVMS IA64 V8.3-1H1
P Muralidhar Kini
Honored Contributor

Re: %ILINK-I-UDFSYM for VERB utility on I64

Hi Lester,

So the problem got resolved. Great!.

Check the following link which says how you can thank the forum
http://forums11.itrc.hp.com/service/forums/helptips.do?#28

Regards,
Murali
Let There Be Rock - AC/DC

Re: %ILINK-I-UDFSYM for VERB utility on I64

Points saved this time.
Hoff
Honored Contributor

Re: %ILINK-I-UDFSYM for VERB utility on I64

Verb?

That's far less necessary than it has been.

Why?

The CLD source files for the OpenVMS verbs have all been stored in and are available in SYS$UPDATE for some years now.

As for other options, the version of the Verb tool on Freeware V8.0 has rewritten DCL within its compile and link procedures, and has references to OpenVMS I64 within its procedures.

http://decuslib.com/decus/freewarev80/verb/

Re: %ILINK-I-UDFSYM for VERB utility on I64

Now my closing comment disappeared (not yet enough practical experience with this forum).

I said something like ...

Perfect, thanks Murali and Steven. (I did attempt to link with /SYSEXE, but my attempt was poor!).

Thanks Hoff, good to know .cld files are now in sys$update. But in this case I was looking at Oracle's RMU, RMUH and RMUI variations for multi-versioning.

Cheers,
Lester
John Gillings
Honored Contributor

Re: %ILINK-I-UDFSYM for VERB utility on I64

Lester,

A possible alternative... I'm fairly sure I successfully translated the Alpha VERB image to IA64. Given it's an infrequent use, non-performance sensitive utility, that may be the simplest option.
A crucible of informative mistakes
Steven Schweda
Honored Contributor

Re: %ILINK-I-UDFSYM for VERB utility on I64

> [...] that may be the simplest option.

Simpler than changing '.eqs. "ALPHA"' to
'.nes. "VAX"' (twice) in the builder? This
must be some new meaning of "simplest".