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 IndexIBM MQ Installation/Configuration SupportMACS:for AIXMQ 5.3.9 64-bit c error libmqic.a

Post new topicReply to topic
MACS:for AIXMQ 5.3.9 64-bit c error libmqic.a View previous topic :: View next topic
Author Message
Shalini
PostPosted: Sat Apr 09, 2005 8:01 am Post subject: MACS:for AIXMQ 5.3.9 64-bit c error libmqic.a Reply with quote

Master

Joined: 30 Apr 2002
Posts: 224
Location: India

Hi,

We have problem using the "MACS: WebSphere MQ Client Libraries for AIX (64-bit)" We have MQSeries 5.3.9 (CSD9) installed in AIX 5.2

it is compiling without any error but when we are running the program we are encountering the following error.
$ put64
exec(): 0509-036 Cannot load program put64 because of the following errors:

0509-150 Dependent module /usr/mqm/lib/libmqic.a(mqic.o)
could not be loaded.
0509-124 The program is a discontinued 64-bit object file.

1) Our Runtime components have following versions

mqm.Client.Bnd 5.3.0.2 C F WebSphere MQ Client Bundle
mqm.Server.Bnd 5.3.0.2 C F WebSphere MQ Server Bundle
mqm.base.runtime 5.3.0.9 A F WebSphere MQ Runtime for
mqm.base.samples 5.3.0.9 A F WebSphere MQ Samples
mqm.base.sdk 5.3.0.9 A F WebSphere MQ Base Kit for
mqm.client.rte 5.3.0.9 A F WebSphere MQ Client for AIX
mqm.client64.rte 5.2.0.0 C F MQSeries Client Libraries
mqm.java.rte 5.3.0.9 A F WebSphere MQ Java Client and
mqm.keyman.rte 5.3.0.9 A F WebSphere MQ Support for GSKit
mqm.man.en_US.data 5.3.0.9 A F WebSphere MQ Man Pages - U.S.
mqm.msg.en_US 5.3.0.9 A F WebSphere MQ Messages - U.S.
mqm.server.rte 5.3.0.9 A F WebSphere MQ Server

From the support pack Notes:

NOTES:

» This client is based upon the MQ V5.2 codebase and therefore does not provide support for WebSphere MQ V5.3 functionality (e.g SSL)

» The 64-bit MQ applications you run have no dependency on the underlying installed WebSphere MQ product. This needs to be installed to provide the /var/mqm directories and files for error reporting/tracing/exit path etc.

2) We donot use SSL


3) mqver gives the following output
$ mqver
Name: WebSphere MQ
Version: 530.9 CSD09
CMVC level: p530-09-L041213
BuildType: IKAP - (Production)

4) The following directory has the permission as below
/usr/mqm
$ ls -ltr
total 112
drwxr-xr-x 20 mqm mqm 512 Feb 03 2003 READMES.client
drwxr-xr-x 4 mqm mqm 512 Feb 03 2003 java
dr-xr-xr-x 4 bin bin 512 Feb 03 2003 loc
drwxr-xr-x 2 mqm mqm 512 Nov 18 2003 READMES.client64
drwxr-xr-x 2 mqm mqm 2048 Jan 16 2004 inc64
dr-xr-xr-x 2 mqm mqm 512 Dec 14 03:46 licenses
dr-xr-xr-x 20 mqm mqm 512 Dec 14 03:46 READMES
dr-xr-xr-x 3 mqm mqm 512 Dec 14 03:47 ssl
dr-xr-xr-x 2 mqm mqm 512 Dec 14 03:47 tivoli
drwxr-xr-x 2 mqm mqm 512 Feb 25 19:35 lib64
dr-xr-xr-x 2 mqm mqm 2048 Mar 29 16:52 inc
dr-xr-xr-x 7 mqm mqm 1536 Mar 29 16:52 samp
dr-xr-xr-x 2 mqm mqm 1536 Mar 29 16:52 lib
dr-xr-xr-x 2 mqm mqm 2048 Mar 29 16:52 bin

5) Contents of /usr/mqm/li64 with file permission are as below.

/usr/mqm/lib64
$ ls -tlr
total 8776
-r-xr-xr-x 1 mqm mqm 2321 Mar 31 2003 libmqmzse.a
-r-xr-xr-x 1 mqm mqm 772606 Mar 31 2003 libmqmcsc.a
-r-xr-xr-x 1 mqm mqm 397879 Mar 31 2003 libmqic.a
-r-xr-xr-x 1 mqm mqm 873907 Mar 31 2003 libmqmcsc_r.a
-r-xr-xr-x 1 mqm mqm 413303 Mar 31 2003 libmqic_r.a
-r-xr-xr-x 1 mqm mqm 298231 Mar 31 2003 libimqb23ia.a
-r-xr-xr-x 1 mqm mqm 238950 Mar 31 2003 libimqc23ia.a
-r-xr-xr-x 1 mqm mqm 303479 Mar 31 2003 libimqb23ia_r.a
-r-xr-xr-x 1 mqm mqm 243226 Mar 31 2003 libimqc23ia_r.a
-r-sr-sr-- 1 mqm mqm 75236 Mar 31 2003 amqcctca
-r-sr-sr-- 1 mqm mqm 79785 Mar 31 2003 amqcctca_r
-r--r--r-- 1 mqm mqm 233160 Mar 31 2003 amqtrc.fmt
-r-xr-xr-x 1 mqm mqm 270028 Nov 18 2003 libmqicb_r.a
-r-xr-xr-x 1 mqm mqm 262557 Nov 18 2003 libmqicb.a
lrwxrwxrwx 1 mqm mqm 28 Feb 25 19:35 libmqmcs_r.a ->
/usr/mqm/lib64/libmqmcsc
lrwxrwxrwx 1 mqm mqm 26 Feb 25 19:35 libmqmcs.a ->
/usr/mqm/lib64/libmqmcsc.a

/usr/mqm
$ ls -ltr
total 112
drwxr-xr-x 20 mqm mqm 512 Feb 03 2003 READMES.client
drwxr-xr-x 4 mqm mqm 512 Feb 03 2003 java
dr-xr-xr-x 4 bin bin 512 Feb 03 2003 loc
drwxr-xr-x 2 mqm mqm 512 Nov 18 2003 READMES.client64
drwxr-xr-x 2 mqm mqm 2048 Jan 16 2004 inc64
dr-xr-xr-x 2 mqm mqm 512 Dec 14 03:46 licenses
dr-xr-xr-x 20 mqm mqm 512 Dec 14 03:46 READMES
dr-xr-xr-x 3 mqm mqm 512 Dec 14 03:47 ssl
dr-xr-xr-x 2 mqm mqm 512 Dec 14 03:47 tivoli
drwxr-xr-x 2 mqm mqm 512 Feb 25 19:35 lib64
dr-xr-xr-x 2 mqm mqm 2048 Mar 29 16:52 inc
dr-xr-xr-x 7 mqm mqm 1536 Mar 29 16:52 samp
dr-xr-xr-x 2 mqm mqm 1536 Mar 29 16:52 lib
dr-xr-xr-x 2 mqm mqm 2048 Mar 29 16:52 bin

6) We compile using Userid who is under "mqm"


7) We are using "VisualAge C++ Professional / C for AIX Compiler, Version 6"

We use two tar from the link (http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg24001024&loc=en_US&cs=utf-8&lang=en)

1. macs_aix51.tar
2. macs.hdrs.tar

Please suggest/comment

Back to top
View user's profile Send private message Send e-mail
clindsey
PostPosted: Sat Apr 09, 2005 10:59 am Post subject: Reply with quote

Knight

Joined: 12 Jul 2002
Posts: 586
Location: Dallas, Tx

Quote:

0509-150 Dependent module /usr/mqm/lib/libmqic.a(mqic.o)
could not be loaded.
0509-124 The program is a discontinued 64-bit object file.


At runtime, the libpath for your shell where the program executes must include /usr/mqm/lib64 and not /usr/mqm/lib.

Run 'export LIBPATH=/usr/mqm/lib64:$LIBPATH' and then execute your program again.

Charlie
Back to top
View user's profile Send private message
Shalini
PostPosted: Mon Apr 11, 2005 9:24 pm Post subject: Reply with quote

Master

Joined: 30 Apr 2002
Posts: 224
Location: India

The put64 program is still not working our machine.

when I issue the command

"$ put64 Q1 JUNKQM
Sample AMQSPUT0 start
Hello


The program is hanging instead of running, and it is not putting any message in the Queue(Q1). Please let me know, If I am executing the program in the wrong method .

Please note that I have executed the following command before running the put64 program and the Queue Manager is still running and Queue Q1 exsists in JUNKQM (Queue Manager)

export LIBPATH=/usr/mqm/lib64:$LIBPATH

$ mqver
Name: WebSphere MQ
Version: 530.9 CSD09
CMVC level: p530-09-L041213
BuildType: IKAP - (Production)

dspmq
QMNAME(JUNKQM) STATUS(Running)
Back to top
View user's profile Send private message Send e-mail
Shalini
PostPosted: Mon Apr 11, 2005 11:08 pm Post subject: Reply with quote

Master

Joined: 30 Apr 2002
Posts: 224
Location: India

Hi ,
Once I set the LIBPATH

I get the following error but before setting the LIBPATH I never get such error for amqsput,mqver etc.. but after setting LIBPATH we donot get error for put64 but it hangs. We get error for amqsput or mqver etc.. as below

My LIBPATH in .profile looks like below
***************************************
LIBPATH=/usr/mqm/lib:/usr/lpp/mqm/lib:/usr/opt/ibm/gskak/lib:/home/mqadm/som/expat/expat-1.95.7/lib:$LIBPATH
export LIBPATH
****************************************

When I do
$ export LIBPATH=/usr/mqm/lib64:$LIBPATH
cbst24b:/home/mqadm

$ amqsput
exec(): 0509-036 Cannot load program amqsput because of the following errors:
0509-022 Cannot load module /usr/mqm/lib/libmqm_r.a(libmqm_r.o).
0509-150 Dependent module /usr/mqm/lib64/libmqmcs_r.a(shr.o) could not be loaded.
0509-103 The module has an invalid magic number.
cbst24b:/home/mqadm

$ mqver
exec(): 0509-036 Cannot load program mqver because of the following errors:
0509-150 Dependent module /usr/mqm/lib64/libmqmcs_r.a(shr.o) could not be loaded.
0509-103 The module has an invalid magic number.
cbst24b:/home/mqadm

Here it does not give error but hangs
$ put64
Sample AMQSPUT0 start
Required parameter missing - queue name

My MQ Details:

mqm.Client.Bnd 5.3.0.2 C F WebSphere MQ Client Bundle
mqm.Server.Bnd 5.3.0.2 C F WebSphere MQ Server Bundle
mqm.base.runtime 5.3.0.9 A F WebSphere MQ Runtime for
mqm.base.samples 5.3.0.9 A F WebSphere MQ Samples
mqm.base.sdk 5.3.0.9 A F WebSphere MQ Base Kit for
mqm.client.rte 5.3.0.9 A F WebSphere MQ Client for AIX
mqm.client64.rte 5.2.0.0 C F MQSeries Client Libraries
mqm.java.rte 5.3.0.9 A F WebSphere MQ Java Client and
mqm.keyman.rte 5.3.0.9 A F WebSphere MQ Support for GSKit
mqm.man.en_US.data 5.3.0.9 A F WebSphere MQ Man Pages - U.S.
mqm.msg.en_US 5.3.0.9 A F WebSphere MQ Messages - U.S.
mqm.server.rte 5.3.0.9 A F WebSphere MQ Server

Looking for Ur help/input
Back to top
View user's profile Send private message Send e-mail
clindsey
PostPosted: Tue Apr 12, 2005 6:27 am Post subject: Reply with quote

Knight

Joined: 12 Jul 2002
Posts: 586
Location: Dallas, Tx

You do not need to put /usr/mqm/lib in your LIBPATH at all. You should remove /usr/mqm/lib and /usr/lpp/mqm/lib from LIBPATH in your .profile.
There are links to all the lib in /usr/mqm/lib in /usr/lib so it does not need to be in LIBPATH.

Then, only add /usr/mqm/lib64 to LIBPATH for the specific environment where you are running a 64 bit application. Having /usr/mqm/lib64 set will break any of the 32 bit applications such as amqsput, mqver, runmqsc, etc.

In the shell where LIBPATH includes /usr/mqm/lib64, run 'ldd pgmname' where pgmname is your 64 bit mq program. You should see an output similar to:

Code:

         /usr/lib/libc.a(shr_64.o)
         /usr/mqm/lib64/libmqic.a(mqic.o)
         /unix
         /usr/lib/libcrypt.a(shr_64.o)
         /usr/mqm/lib64/libmqmcs.a(shr.o)
         /usr/lib/libiconv.a(shr4_64.o)


Note that any libmq references are found in lib64. If any of yours are resolved in /usr/mqm/lib, your build did not link to the correct libs.

Charlie
Back to top
View user's profile Send private message
Shalini
PostPosted: Wed Apr 13, 2005 12:51 am Post subject: Reply with quote

Master

Joined: 30 Apr 2002
Posts: 224
Location: India

Hi,

Thanks for your valuable inputs..

I tried as you suggested for LIBPATH and PATH under a script junkscript.sh as shown below..

***********************************************************************
Junkscript.sh

LIBPATH=/usr/mqm/lib64:/usr/lib:/usr/opt/ibm/gskak/lib:/home/mqadm/som/expat/expat-1.95.7/lib:$LIBPATH

export LIBPATH

PATH=/usr/bin:/etc:/usr/sbin:/usr/ucb:$HOME/bin:/usr/bin/X11:/sbin:.:/usr/mqm/samp/bin:/usr/java131/bin:/usr/vac/bin:/var/mqm/
m/eip:/usr/mqm/samp/bin:/$HOME/junkprgm

export PATH

ldd put64
put64 Q1 JUNKQM


Gave me following output

$ sh Junkscript.sh

put64 needs:
/usr/lib/libc.a(shr_64.o)
/usr/mqm/lib64/libmqic.a(mqic.o)
/unix
/usr/lib/libcrypt.a(shr_64.o)
/usr/mqm/lib64/libmqmcs.a(shr.o)
/usr/lib/libiconv.a(shr4_64.o)
Sample AMQSPUT0 start
test msg to junk



I am calling put64 under same shell,but I donot see any msgs in the Q1 of JUNKQMGR

But if I use
ldd put64 Q1 JUNKQMGR
instead of
put64 Q1 JUNKQMGR

gave me the following output.
Usage: ldd executable


I have “put64” prog under $HOME/junkprgm

Please let me know what mistake I am doing for executing the program so that "put64" will put the message in Q1 of JUNKQM.

Back to top
View user's profile Send private message Send e-mail
clindsey
PostPosted: Wed Apr 13, 2005 4:51 am Post subject: Reply with quote

Knight

Joined: 12 Jul 2002
Posts: 586
Location: Dallas, Tx

ldd is just a test to show which libs get loaded for you environment. It shows the 64 bit libs are loaded so you can remove it from your script now. When you run ldd with more than one parm (ldd put64 Q1 JUNKQMGR), ldd is telling you that is a syntax error so you do not see any other output.

Also, when you set up the environment in a script, that environment is only valid for the life of the script. It is not inherited by the shell unless you preceed the script with a . e.g. ". Junkscript.sh Q JUNKQM"

I am not clear now on your results. Run Junkscript.sh and enter your line of text and hit the return key 2 times. Does a message get written to the queue.

Is put64 an unaltered copy of amqsput0.c that is compiled and linked for 64 bit?

Charlie
Back to top
View user's profile Send private message
Shalini
PostPosted: Wed Apr 13, 2005 6:35 am Post subject: Reply with quote

Master

Joined: 30 Apr 2002
Posts: 224
Location: India

Quote:
Is put64 an unaltered copy of amqsput0.c that is compiled and linked for 64 bit?


Yes This is how I comiled...

xlc -q64 -I/usr/mqm/inc64 -L/usr/mqm/lib64 -lmqic amqsput0.c -o put64

Quote:

I am not clear now on your results. Run Junkscript.sh and enter your line of text and hit the return key 2 times. Does a message get written to the queue.


I did some changes to script as below ...

***********************************************************************
Junkscript.sh

LIBPATH=/usr/mqm/lib64:/usr/lib:/usr/opt/ibm/gskak/lib:/home/mqadm/som/expat/expat-1.95.7/lib:$LIBPATH

export LIBPATH

PATH=/usr/bin:/etc:/usr/sbin:/usr/ucb:$HOME/bin:/usr/bin/X11:/sbin:.:/usr/mqm/samp/bin:/usr/java131/bin:/usr/vac/bin:/var/mqm/
m/eip:/usr/mqm/samp/bin:/$HOME/junkprgm

export PATH

ldd put64
put64 Q1 JUNKQM < x.txt

*************************************************

Gave me following output

$ sh Junkscript.sh

put64 needs:
/usr/lib/libc.a(shr_64.o)
/usr/mqm/lib64/libmqic.a(mqic.o)
/unix
/usr/lib/libcrypt.a(shr_64.o)
/usr/mqm/lib64/libmqmcs.a(shr.o)
/usr/lib/libiconv.a(shr4_64.o)
Sample AMQSPUT0 start

test msg


*******************************
x.txt was full of data..

I did return two times even tried to put the test msgs but the depth of the queue was still zero...


but when I try amqsput with x.txt it works fine as U said the efffect is only
when during script life time...



Back to top
View user's profile Send private message Send e-mail
Nigelg
PostPosted: Wed Apr 13, 2005 6:44 am Post subject: Reply with quote

Grand Master

Joined: 02 Aug 2004
Posts: 1046

At least you can get it to start now.

Have you set MQSERVER, or defined the CLNTCONN channel, and defined
the entries in /etc/services & /etc/inetd.conf, or started the listener?

Remember that the put64 that you have compiled is a client and needs to
start a client connection to the server, unlike amqsput which is a server
app. Try and get amqsputc to work first, then try put64.
Back to top
View user's profile Send private message
clindsey
PostPosted: Wed Apr 13, 2005 8:55 am Post subject: Reply with quote

Knight

Joined: 12 Jul 2002
Posts: 586
Location: Dallas, Tx

FYI, I just created a 64 bit put64 from amqsput0.c and called it from this script

Code:

export LIBPATH=/usr/mqm/lib64:/usr/lib:/lib
export MQSERVER=SYSTEM.DEF.SVRCONN/TCP/localhost
put64 TEST_IN < text


This worked fine for me.

Charlie
Back to top
View user's profile Send private message
Nigelg
PostPosted: Thu Apr 14, 2005 1:12 am Post subject: Reply with quote

Grand Master

Joined: 02 Aug 2004
Posts: 1046

I don't think you need LIBPATH, because the library paths are linked into the app.

Quote:
$ echo $MQSERVER
SVC1/TCP/myaix(1478)
$ cat bld
xlc -q64 -I/usr/mqm/inc64 -L/usr/mqm/lib64 -lmqic amqsput0.c -o put64
$ bld
$ echo $LIBPATH

$ put64 QL1 NG1
Sample AMQSPUT0 start
MQCONN ended with reason code 0
target queue is QL1
1

Sample AMQSPUT0 end
$
Back to top
View user's profile Send private message
Shalini
PostPosted: Fri Apr 15, 2005 3:39 am Post subject: Reply with quote

Master

Joined: 30 Apr 2002
Posts: 224
Location: India

Hi clindsey,

Thanks for a very gr8 inputs.

I was missing two things in LIBPATH of my scripts
1) /usr/lib:/lib
2) MQSERVER


Quote:
export LIBPATH=/usr/mqm/lib64:/usr/lib:/lib
export MQSERVER=SYSTEM.DEF.SVRCONN/TCP/localhost


Now it has resolved the problem of 64 bit (amqsput) with mqseries.

I feel few things they can add in the support pack as a readme which will be useful for a new c/c++ 64 MQ prog..

1) LIBPATH information and MQSERVER Env variable...

Thanks for your inputs

Back to top
View user's profile Send private message Send e-mail
csmith28
PostPosted: Tue Feb 28, 2006 8:32 pm Post subject: Reply with quote

Grand Master

Joined: 15 Jul 2003
Posts: 1196
Location: Arizona

I just had a similar problem while upgrading from WMQ5.3.0.6 to 6.0.1.0 on AIX5200-07.

I deleted the LIBPATH from the .cshrc file in ~mqm and everything worked fine.
_________________
Yes, I am an agent of Satan but my duties are largely ceremonial.
Back to top
View user's profile Send private message
Display posts from previous:
Post new topicReply to topic Page 1 of 1

MQSeries.net Forum IndexIBM MQ Installation/Configuration SupportMACS:for AIXMQ 5.3.9 64-bit c error libmqic.a
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.