Operating System - OpenVMS
1826086 Members
4532 Online
109690 Solutions
New Discussion

XPM version3.4k or 3.5.1.1

 
CoreDump
Occasional Contributor

XPM version3.4k or 3.5.1.1

Hello,

I am trying to build XPM with out much luck using as_is, short flags

My main problem is link any suggestion?

Linking SXPM ...
LINK sxpm,sxpm.opt/OPT
%LINK-W-NUDFSYMS, 46 undefined symbols:
%LINK-I-UDFSYM, XAllocColor
%LINK-I-UDFSYM, XAllocNamedColor
%LINK-I-UDFSYM, XBlackPixelOfScreen
%LINK-I-UDFSYM, XClearWindow
%LINK-I-UDFSYM, XCreateColormap
%LINK-I-UDFSYM, XCreateGC
%LINK-I-UDFSYM, XCreateImage
%LINK-I-UDFSYM, XCreatePixmap
%LINK-I-UDFSYM, XCreateSimpleWindow
%LINK-I-UDFSYM, XDefaultColormap
%LINK-I-UDFSYM, XDefaultColormapOfScreen
%LINK-I-UDFSYM, XDefaultDepth
%LINK-I-UDFSYM, XDefaultScreen
%LINK-I-UDFSYM, XDefaultVisual
%LINK-I-UDFSYM, XFreeColors
%LINK-I-UDFSYM, XFreeGC
%LINK-I-UDFSYM, XFreePixmap
%LINK-I-UDFSYM, XGetGeometry
%LINK-I-UDFSYM, XGetImage
%LINK-I-UDFSYM, XGrabServer
%LINK-I-UDFSYM, XLookupString
%LINK-I-UDFSYM, XMapWindow
%LINK-I-UDFSYM, XParseColor
%LINK-I-UDFSYM, XParseGeometry
%LINK-I-UDFSYM, XPutImage
%LINK-I-UDFSYM, XQueryColors
%LINK-I-UDFSYM, XRootWindowOfScreen
%LINK-I-UDFSYM, XSetIconName
%LINK-I-UDFSYM, XSetWMNormalHints
%LINK-I-UDFSYM, XSetWindowBackgroundPixmap
%LINK-I-UDFSYM, XSetWindowColormap
%LINK-I-UDFSYM, XShapeCombineMask
%LINK-I-UDFSYM, XStoreName
%LINK-I-UDFSYM, XUngrabServer
%LINK-I-UDFSYM, XrmGetResource
%LINK-I-UDFSYM, XtAddEventHandler
%LINK-I-UDFSYM, XtDatabase
%LINK-I-UDFSYM, XtFree
%LINK-I-UDFSYM, XtInitialize
%LINK-I-UDFSYM, XtMainLoop
%LINK-I-UDFSYM, XtMalloc
%LINK-I-UDFSYM, XtRealizeWidget
%LINK-I-UDFSYM, XtResizeWidget
%LINK-I-UDFSYM, XtSetValues
%LINK-I-UDFSYM, XtShellStrings
%LINK-I-UDFSYM, XtStrings
LINK-W-USEUNDEF, undefined symbol XFreePixmap referenced
in psect $LINK$ offset %X00000030
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XFreeColors referenced
in psect $LINK$ offset %X00000040
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XSetWindowColormap referenced
in psect $LINK$ offset %X00000130
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XtRealizeWidget referenced
in psect $LINK$ offset %X00000140
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XShapeCombineMask referenced
in psect $LINK$ offset %X00000180
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XtMainLoop referenced
in psect $LINK$ offset %X000001A0
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XMapWindow referenced
in psect $LINK$ offset %X000001B0
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XSetWMNormalHints referenced
in psect $LINK$ offset %X000001E0
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XAllocNamedColor referenced
in psect $LINK$ offset %X00000210
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XDefaultColormapOfScreen referenced
in psect $LINK$ offset %X00000230
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XtSetValues referenced
in psect $LINK$ offset %X00000280
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XRootWindowOfScreen referenced
in psect $LINK$ offset %X00000290
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XSetWindowBackgroundPixmap referenced
in psect $LINK$ offset %X000002A0
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XStoreName referenced
in psect $LINK$ offset %X000002C0
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XtShellStrings referenced
in psect $LINK$ offset %X000002D8
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XrmGetResource referenced
in psect $LINK$ offset %X000002E0
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XtStrings referenced
in psect $LINK$ offset %X000002F0
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XtDatabase referenced
in psect $LINK$ offset %X00000330
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XSetIconName referenced
in psect $LINK$ offset %X00000360
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XCreateSimpleWindow referenced
in psect $LINK$ offset %X000003A0
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XParseGeometry referenced
in psect $LINK$ offset %X000003D0
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XtInitialize referenced
in psect $LINK$ offset %X000003E0
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XBlackPixelOfScreen referenced
in psect $LINK$ offset %X00000410
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XtResizeWidget referenced
in psect $LINK$ offset %X00000440
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XtMalloc referenced
in psect $LINK$ offset %X00000450
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XClearWindow referenced
in psect $LINK$ offset %X00000480
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XtFree referenced
in psect $LINK$ offset %X00000490
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XtAddEventHandler referenced
in psect $LINK$ offset %X000004B0
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XCreateColormap referenced
in psect $LINK$ offset %X000004F0
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XLookupString referenced
in psect $LINK$ offset %X00000580
in module sxpm file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]sxpm.OBJ;1
%LINK-W-USEUNDEF, undefined symbol XGetImage referenced
in psect $LINK$ offset %X00000020
in module CrIFrP file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]LIBXPM.OLB;5
%LINK-W-USEUNDEF, undefined symbol XGetGeometry referenced
in psect $LINK$ offset %X00000030
in module CrIFrP file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]LIBXPM.OLB;5
%LINK-W-USEUNDEF, undefined symbol XCreateGC referenced
in psect $LINK$ offset %X00000020
in module CrPFrI file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]LIBXPM.OLB;5
%LINK-W-USEUNDEF, undefined symbol XCreatePixmap referenced
in psect $LINK$ offset %X00000030
in module CrPFrI file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]LIBXPM.OLB;5
%LINK-W-USEUNDEF, undefined symbol XFreeGC referenced
in psect $LINK$ offset %X00000040
in module CrPFrI file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]LIBXPM.OLB;5
%LINK-W-USEUNDEF, undefined symbol XPutImage referenced
in psect $LINK$ offset %X00000050
in module CrPFrI file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]LIBXPM.OLB;5
%LINK-W-USEUNDEF, undefined symbol XFreeColors referenced
in psect $LINK$ offset %X00000170
in module create file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]LIBXPM.OLB;5
%LINK-W-USEUNDEF, undefined symbol XCreateImage referenced
in psect $LINK$ offset %X00000240
in module create file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]LIBXPM.OLB;5
%LINK-W-USEUNDEF, undefined symbol XUngrabServer referenced
in psect $LINK$ offset %X00000270
in module create file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]LIBXPM.OLB;5
%LINK-W-USEUNDEF, undefined symbol XGrabServer referenced
in psect $LINK$ offset %X000002A0
in module create file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]LIBXPM.OLB;5
%LINK-W-USEUNDEF, undefined symbol XQueryColors referenced
in psect $LINK$ offset %X000002B0
in module create file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]LIBXPM.OLB;5
%LINK-W-USEUNDEF, undefined symbol XDefaultScreen referenced
in psect $LINK$ offset %X00000310
in module create file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]LIBXPM.OLB;5
%LINK-W-USEUNDEF, undefined symbol XDefaultVisual referenced
in psect $LINK$ offset %X00000320
in module create file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]LIBXPM.OLB;5
%LINK-W-USEUNDEF, undefined symbol XDefaultColormap referenced
in psect $LINK$ offset %X00000340
in module create file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]LIBXPM.OLB;5
%LINK-W-USEUNDEF, undefined symbol XDefaultDepth referenced
in psect $LINK$ offset %X00000420
in module create file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]LIBXPM.OLB;5
%LINK-W-USEUNDEF, undefined symbol XAllocColor referenced
in psect $LINK$ offset %X00000520
in module create file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]LIBXPM.OLB;5
%LINK-W-USEUNDEF, undefined symbol XParseColor referenced
in psect $LINK$ offset %X00000530
in module create file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]LIBXPM.OLB;5
%LINK-W-USEUNDEF, undefined symbol XQueryColors referenced
in psect $LINK$ offset %X00000030
in module scan file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]LIBXPM.OLB;5
%LINK-W-USEUNDEF, undefined symbol XDefaultColormap referenced
in psect $LINK$ offset %X00000050
in module scan file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]LIBXPM.OLB;5
%LINK-W-USEUNDEF, undefined symbol XDefaultScreen referenced
in psect $LINK$ offset %X000000D0
in module scan file DKB100:[USERS.WIBLIN.dev.XPM.xpm-3_4k.lib]LIBXPM.OLB;5
XPMlib build completed


3 REPLIES 3
Steven Schweda
Honored Contributor

Re: XPM version3.4k or 3.5.1.1

Interesting facts might include where you're
getting, say, XAllocColor declared, and
what's in the LINK options file.

The names in SYS$COMMON:[SYSLIB]DECWINDOWS.OLB
seem to be /NAMES = UPPERCASE, so you'll
need to work around that somehow. You might
wrap DECW$INCLUDE:XLIB.H in appropriate
#pragma directives. Judging from a search of
SYS$SYSDEVICE:[000000...]*.h, lots of folks
(including the OpenVMS Porting Library folks)
do things like:

#define XAllocColor XALLOCCOLOR

(in, for example,
[...PORTING.DIST.INCLUDE]MOTIF_REDEFINES.H.)

http://h71000.www7.hp.com/openvms/products/ips/porting.html
Rick Dyson
Valued Contributor

Re: XPM version3.4k or 3.5.1.1

v3.4k is pretty old. I found an Aug 2000 kit on my old v6.2 Alpha with library dates of 1997. It is not very cleaned up, but it looks like I must have gotten it compiled at one time. I appear to have a working copy of CXPM/SXPM.

There has always been a great DECW archive with lots of Unix tools ported to OpenVMS. I believe it is at:

http://decwarch.free.fr/

I see something about up to v3.4j

There are some other programs that might work better, imagemagick and I think even XV handles PM files.
Hoff
Honored Contributor

Re: XPM version3.4k or 3.5.1.1

It looks like (at least) decw$xlibshr was not included in the LINK command.

In a local include file (sxpm.opt, or something specific to OpenVMS), add the line:

sys$share:decw$xlibshr/share

Other libraries may be needed.

You can SEARCH SYS$SHARE:DECW*.EXE for the shareables containing the reference. Unfortunately, you might get a few false hits -- but it will narrow down the field.

$ sear sys$share:*.exe/wind=0 XAllocColor
SYS$COMMON:[SYSLIB]DECW$OPENGLUTSHR.EXE;1
SYS$COMMON:[SYSLIB]DECW$XLIBSHR.EXE;1
SYS$COMMON:[SYSLIB]DECW$XLIBSHR_TV_SUPPORT.EXE;1

I happen to know the external likely won't be in OpenGL stuff, and the TV stuff is for image translations. Which leaves DECW$XLIBSHR as the likely residence of the symbol. You may also see one with a version at the end, for newer X Windows. That's usually better choice, if the code is compliant with that version of X Windows.

If you poke around the net, you'll almost certainly find many examples of DECwindows LINK options files.

Here's what the CD Player tool needs -- this tool reads the option file from the input stream, and you'll probably want to use either a build procedure for your compile and link (and where the following construct works nicely) or you'll want to use an external options file akin to sxpm.opt... Otherwise, you get to type the files in each time you link...

$ CC DECW$CDPLAYER
$ LINK DECW$CDPLAYER,SYS$INPUT/OPT
SYS$SHARE:DECW$XLIBSHR.EXE/SHARE
SYS$SHARE:DECW$XMLIBSHR.EXE/SHARE
SYS$SHARE:DECW$DXMLIBSHR.EXE/SHARE
$ UIL/MOTIF DECW$CDPLAYER


The compiler-based prefixing that allowed the DEC C library to be included in the default IMAGELIB.OLB LINK path has not occurred with the X Windows libraries. Which means you need to manually specify the shareables (or somewhat less desirably, the object libraries, should those exist) within the LINK command.

And FWIW, unless case-sensitivity is enabled (usually in the compiler and in the linker), most everything external is processed by default as uppercase. (It all just quietly works, unless you enable case sensitivity -- or unless you have something like BOGUS() and bogus() as two different external symbols.)

Some of the stuff like this:

#define XAllocColor XALLOCCOLOR

can be a generic feature of SDL, too. This allows you to pick whatever case you want in the source. This was a "big" problem with system services eons ago, and SDL produces a define that effectively allows either upper or lowercase specifications. If SDL didn't provide this, you ended up having to edit source code, or providing your own version of what SDL generates.

Stephen Hoffman
HoffmanLabs