ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » Mainframe, CICS, TXSeries » z/OS Help

Post new topic  Reply to topic
 z/OS Help « View previous topic :: View next topic » 
Author Message
RogerLacroix
PostPosted: Sun Jan 14, 2007 9:36 pm    Post subject: z/OS Help Reply with quote

Jedi Knight

Joined: 15 May 2001
Posts: 3264
Location: London, ON Canada

All,

I'm getting a really strange error from the z/OS linker when I try to build a program (exit) on the mainframe.

Quote:
IEW2606S 4B39 MODULE INCORPORATES VERSION 3 PROGRAM OBJECT FEATURES AND CANNOT BE SAVED IN LOAD MODULE FORMAT


This is the only error message that I get. It compiles (RC=00) and prelinks (RC=04) just fine. I have checked and rechecked both the prelink and link parameters but I don't see anything wrong with them but a fresh pair of eyes will probably stop the problem in a second.

I have separate C sources for common modules and compile them individually (see edcc.jcl ). Then I compile, prelink and link the main C source (see edccpl.jcl ). I have done this many times in the past on the mainframe for different customers without any problems.

JCL:
Code:
//COMP001  EXEC EDCC,MEMBER='CWSXC1'
//COMP002  EXEC EDCC,MEMBER='CWSXC2'
//COMP003  EXEC EDCC,MEMBER='CWSXC3'
//*
//CPL01    EXEC EDCCPL,MEMBER='TSTEXIT'


PreLink statements:
Code:
INCLUDE SYSMOD
INCLUDE OBJECT(CWSXC1)
INCLUDE OBJECT(CWSXC2)
INCLUDE OBJECT(CWSXC3)


Link Statements
Code:
INCLUDE SYSLIB(EDCXMEM)
INCLUDE SYSLIB(CSQXSTUB)
INCLUDE SYSLIB(CWSXC1)
INCLUDE SYSLIB(CWSXC2)
INCLUDE SYSLIB(CWSXC3)
ENTRY TSTEXIT
NAME TSTEXIT(R)


Ok, now to the strange part. I can build a "HelloWorld" application without any problem using the edccpl.jcl PROC. If I take all the C source code for TSTEXIT and put it all into 1 C source file then it will build just fine using the edccpl.jcl PROC.

Therefore, there must be something wrong with either my prelink or link parameters but I don't see it.

I even deleted my LOAD dataset and recreated it exactly the same as the WMQ SCSQLOAD dataset but it made no difference.

Any help would be appreciated.

Regards,
Roger Lacroix
Capitalware Inc.
_________________
Capitalware: Transforming tomorrow into today.
Connected to MQ!
Twitter
Back to top
View user's profile Send private message Visit poster's website
Mr Butcher
PostPosted: Sun Jan 14, 2007 10:34 pm    Post subject: Reply with quote

Padawan

Joined: 23 May 2005
Posts: 1716

Roger,

define the oputput library as a PDSE (type=LIBRARY) and try again.
_________________
Regards, Butcher
Back to top
View user's profile Send private message
RogerLacroix
PostPosted: Tue Jan 16, 2007 10:56 am    Post subject: Reply with quote

Jedi Knight

Joined: 15 May 2001
Posts: 3264
Location: London, ON Canada

Hi,

Thanks. That is what everyone is saying but I still missing the "why"?

Especially given that if I put all the exit's source into 1 very, very large C source file, then it will compile, prelink and link perfectly into a standard PDS.

On the MQ ListServer:

Bobbee pointed me to:
http://www.mail-archive.com/ibm-main@bama.ua.edu/msg01633.html

And Craig pointed to:
http://ew.share.org/proceedingmod/abstract.cfm?abstract_id=12992&conference_id=13

and Morag said to use a PDSE too.

All I can see is that because I am compiling individual C source files that linker/binder is requiring a PDSE because they were individually compiled. Anybody got a better explanation?

Regards,
Roger Lacroix
Capitalware Inc.
_________________
Capitalware: Transforming tomorrow into today.
Connected to MQ!
Twitter
Back to top
View user's profile Send private message Visit poster's website
cicsprog
PostPosted: Tue Jan 16, 2007 4:22 pm    Post subject: Reply with quote

Partisan

Joined: 27 Jan 2002
Posts: 347

What version of z/OS are you compiling under? Poking around in google, I'm wondering if it has to be a PDSE for possible future 64 bit addressing. Maybe your compile link IBM supplied JCL/"Compile Options" your using are trying to make 64 bit addressing possible by forcing the PDSE. MQ should be (maybe already) 64 bit capable and I'd bet any exits might need to be 64 bit capable. Just a guess.

http://www-03.ibm.com/servers/eserver/zseries/zos/le/conference/pdf/swa8284.pdf
Back to top
View user's profile Send private message
cicsprog
PostPosted: Tue Jan 16, 2007 5:58 pm    Post subject: Reply with quote

Partisan

Joined: 27 Jan 2002
Posts: 347

Saw this one also but for PL/I:

http://www-1.ibm.com/support/docview.wss?rs=619&context=SSY2V3&dc=DB520&uid=swg21105665&loc=en_US&cs=UTF-8&lang=en&rss=ct619other
Back to top
View user's profile Send private message
Mr Butcher
PostPosted: Tue Jan 16, 2007 11:16 pm    Post subject: Reply with quote

Padawan

Joined: 23 May 2005
Posts: 1716

there is lots of stuff that you can read in the mainframe c documentation about binding and prelinking, i had a fast look hoping to be able to provide an answer, but it looks like this needs more time then just 5 minutes of study.

my colleague said, that it depends on
1. what the program uses
2. on the (default) options of the linkage

so it may be that the linkage editor encountered "things" in your program that it is only able to store when using a pdse, or that maybe the linkage options are set so that a pdse is required in any case.

or maybe something else.
_________________
Regards, Butcher
Back to top
View user's profile Send private message
RogerLacroix
PostPosted: Sun Jan 21, 2007 10:34 am    Post subject: Reply with quote

Jedi Knight

Joined: 15 May 2001
Posts: 3264
Location: London, ON Canada

Hi,

I created a PDSE dataset and life is fine now.

Can a PDSE dataset with load-modules (recfm=U) be off-loaded (TSO SEND) the same way as regular PDS?

Regards,
Roger Lacroix
Capitalware Inc.
_________________
Capitalware: Transforming tomorrow into today.
Connected to MQ!
Twitter
Back to top
View user's profile Send private message Visit poster's website
ramires
PostPosted: Sun Jan 21, 2007 2:18 pm    Post subject: Reply with quote

Knight

Joined: 24 Jun 2001
Posts: 523
Location: Portugal - Lisboa

You can try this:

1. "XMIT anynode.anyid DA(dataset) OUTDS(SEQFILE)"
this creates a fix lrecl 80 SEQFILE
2. Use FTP to transfer file SEQFILE.
ftp it in binary
3. At receiver system type "RECEIVE INDS(SEQFILE)"
folow the prompts

Hope it does what you want.
Regards,
Back to top
View user's profile Send private message
KevinF23492
PostPosted: Sun Jan 21, 2007 6:04 pm    Post subject: Reply with quote

Novice

Joined: 26 Dec 2006
Posts: 22

Quote:
Can a PDSE dataset with load-modules (recfm=U) be off-loaded (TSO SEND) the same way as regular PDS?


Yes. No problem....and every z/OS shop should support PDSEs these days too.
Back to top
View user's profile Send private message
RogerLacroix
PostPosted: Mon Jan 22, 2007 8:55 am    Post subject: Reply with quote

Jedi Knight

Joined: 15 May 2001
Posts: 3264
Location: London, ON Canada

Thanks for the info.

Regards,
Roger Lacroix
_________________
Capitalware: Transforming tomorrow into today.
Connected to MQ!
Twitter
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » Mainframe, CICS, TXSeries » z/OS Help
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.