By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
432,474 Members | 966 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 432,474 IT Pros & Developers. It's quick & easy.

Federated Informix - how to djxlink?

P: n/a
Hi,

Creating the federated datasource library for informix fails for me.
The db2 server is version 8.1 WSE on AIX 4.3.
The informix client on this server is version CSDK 2.81/ESQL 9.53 UC2.
When I run djxlink as root, I get the followin messages:

# /usr/opt/db2_08_01/bin/djxlink
/usr/opt/db2_08_01/bin/djxlinkInformix:
nm: /informix/clientsdk/lib/esql/libifgen.a: 0654-200 Cannot open the
specified file.
nm: No such file or directory
nm: /informix/clientsdk/lib/esql/libifsql.a: 0654-200 Cannot open the
specified file.
nm: No such file or directory
Error building libdb2informixF.a
Messages are in file djxlinkInformix.out.

The messages do not lie. The .a files are not there, only .so.

At last I found the directory where the output is created (pretty
nonstandard, why not ., $HOME, /tmp? lib might not even be writeable!)

# cat $HOME/sqllib/lib/*.out
BEGIN INFORMIX PROCESSING

ld: 0706-006 Cannot find or open library file: -l ifasf
ld:open(): No such file or directory
ld: 0706-006 Cannot find or open library file: -l ifgen
ld:open(): No such file or directory
ld: 0706-006 Cannot find or open library file: -l ifgls
ld:open(): No such file or directory
ld: 0706-006 Cannot find or open library file: -l ifglx
ld:open(): No such file or directory
ld: 0706-006 Cannot find or open library file: -l ifos
ld:open(): No such file or directory
ld: 0706-006 Cannot find or open library file: -l ifsql
ld:open(): No such file or directory
ld: 0706-006 Cannot find or open library file: -l ifxa
ld:open(): No such file or directory
ld: 0706-005 Cannot find or open file: /informix/clientsdk/lib/netstub.a
ld:open(): No such file or directory
ld: 0706-005 Cannot find or open file:
/informix/clientsdk/lib/esql/checkapi.o
ld:open(): No such file or directory
Error building libdb2informixF.a
END INFORMIX PROCESSING

Any ideas where to get these libraries or what else to do?

Thanks

Joachim Banzhaf

Nov 12 '05 #1
Share this Question
Share on Google+
10 Replies


P: n/a
I am trying to find out the answer for your question, please hold on. In the
meanwhile, what is in your db2dj.ini file. Is it something like:
INFORMIXDIR=/informix
INFORMIXSERVER=inf93

Thanks
Aakash

"Joachim Banzhaf" <jb******@ngi.de> wrote in message
news:sb************@banzhaf.dnsalias.net...
Hi,

Creating the federated datasource library for informix fails for me.
The db2 server is version 8.1 WSE on AIX 4.3.
The informix client on this server is version CSDK 2.81/ESQL 9.53 UC2.
When I run djxlink as root, I get the followin messages:

# /usr/opt/db2_08_01/bin/djxlink
/usr/opt/db2_08_01/bin/djxlinkInformix:
nm: /informix/clientsdk/lib/esql/libifgen.a: 0654-200 Cannot open the
specified file.
nm: No such file or directory
nm: /informix/clientsdk/lib/esql/libifsql.a: 0654-200 Cannot open the
specified file.
nm: No such file or directory
Error building libdb2informixF.a
Messages are in file djxlinkInformix.out.

The messages do not lie. The .a files are not there, only .so.

At last I found the directory where the output is created (pretty
nonstandard, why not ., $HOME, /tmp? lib might not even be writeable!)

# cat $HOME/sqllib/lib/*.out
BEGIN INFORMIX PROCESSING

ld: 0706-006 Cannot find or open library file: -l ifasf
ld:open(): No such file or directory
ld: 0706-006 Cannot find or open library file: -l ifgen
ld:open(): No such file or directory
ld: 0706-006 Cannot find or open library file: -l ifgls
ld:open(): No such file or directory
ld: 0706-006 Cannot find or open library file: -l ifglx
ld:open(): No such file or directory
ld: 0706-006 Cannot find or open library file: -l ifos
ld:open(): No such file or directory
ld: 0706-006 Cannot find or open library file: -l ifsql
ld:open(): No such file or directory
ld: 0706-006 Cannot find or open library file: -l ifxa
ld:open(): No such file or directory
ld: 0706-005 Cannot find or open file: /informix/clientsdk/lib/netstub.a
ld:open(): No such file or directory
ld: 0706-005 Cannot find or open file:
/informix/clientsdk/lib/esql/checkapi.o
ld:open(): No such file or directory
Error building libdb2informixF.a
END INFORMIX PROCESSING

Any ideas where to get these libraries or what else to do?

Thanks

Joachim Banzhaf

Nov 12 '05 #2

P: n/a
Aakash Bordia wrote:
I am trying to find out the answer for your question, please hold on. In
the meanwhile, what is in your db2dj.ini file. Is it something like:
INFORMIXDIR=/informix
INFORMIXSERVER=inf93

Thanks
Aakash


Hi Aakash,

I did not find a reference that I have to change it, so I did not touch
db2dj.ini until now. If no tool (e.g. db2cc) touches the file behind the
scenes, it contains what is in by default, after installation of db2 (or
creation of the instance). Since at the time of instance creation the
informix client wasn't installed yet, but a slightly older informix server
I guess it does not contain valid settings.
But I do set those variables via ~/.profile for the instance owner and root.
They contain

INFORMIXDIR=/informix/clientsdk
INFORMIXSERVER=mysrv

In addition I set INFORMIXSQLHOSTS=/informix/clientsdk/etc/sqlhosts.db2
and of course PATH=$INFORMIXDIR/bin:$PATH (all exported)

I'm sorry, I can't give you the contents of db2dj.ini because I cannot acces
the server right now.

Meanwhile: thanks for trying

Joachim Banzhaf

Nov 12 '05 #3

P: n/a
Some additions:

I did some digging in the docs about db2dj.ini:
It should have the correct entries for the informix server, since the
informix server was installed at time of instance creation/db2
installation.
But I got the same error messages with the informix server. That was what
made me install the informix client sdk...

By the way, I tested the informix server config with dbaccess to see if
everything is configured correctly on the informix side. What would you
suggest to use to test the configuration of the informix client (I found no
dbacces or anything else I could use for this)

Thanks again,

Joachim Banzhaf

I wrote:
Aakash Bordia wrote:
I am trying to find out the answer for your question, please hold on. In
the meanwhile, what is in your db2dj.ini file. Is it something like:
INFORMIXDIR=/informix
INFORMIXSERVER=inf93

Thanks
Aakash


Hi Aakash,

I did not find a reference that I have to change it, so I did not touch
db2dj.ini until now. If no tool (e.g. db2cc) touches the file behind the
scenes, it contains what is in by default, after installation of db2 (or
creation of the instance). Since at the time of instance creation the
informix client wasn't installed yet, but a slightly older informix server
I guess it does not contain valid settings.
But I do set those variables via ~/.profile for the instance owner and
root. They contain

INFORMIXDIR=/informix/clientsdk
INFORMIXSERVER=mysrv

In addition I set INFORMIXSQLHOSTS=/informix/clientsdk/etc/sqlhosts.db2
and of course PATH=$INFORMIXDIR/bin:$PATH (all exported)

I'm sorry, I can't give you the contents of db2dj.ini because I cannot
acces the server right now.

Meanwhile: thanks for trying

Joachim Banzhaf


Nov 12 '05 #4

P: n/a
Here is what I got from one buddy:

"I think the Informix CSDK is not installed on the server, so installing it
will solve the problem. If CSDK is installed correctly, there are always .a
files under the lib or lib/esql directory. I guess Informix IConnect, which
is bundled with IDS, is installed on the server.

When it is installed, there are many .so files under the lib or lib/esql
directory, but these are not sufficient to run djxlinkInformix. In this
case, you might be able to get CSDK version by bin/esqlvars command, but
this does not mean CSDK is installed."

Also, did you try accessing the server from the client side using the
command line access of Informix? I dont know what that would be , but I am
talking about the equivalent of DB2 CLP.

Thanks
Aakash

"Joachim Banzhaf" <jb******@ngi.de> wrote in message
news:7n************@banzhaf.dnsalias.net...
Some additions:

I did some digging in the docs about db2dj.ini:
It should have the correct entries for the informix server, since the
informix server was installed at time of instance creation/db2
installation.
But I got the same error messages with the informix server. That was what
made me install the informix client sdk...

By the way, I tested the informix server config with dbaccess to see if
everything is configured correctly on the informix side. What would you
suggest to use to test the configuration of the informix client (I found no dbacces or anything else I could use for this)

Thanks again,

Joachim Banzhaf

I wrote:
Aakash Bordia wrote:
I am trying to find out the answer for your question, please hold on. In the meanwhile, what is in your db2dj.ini file. Is it something like:
INFORMIXDIR=/informix
INFORMIXSERVER=inf93

Thanks
Aakash


Hi Aakash,

I did not find a reference that I have to change it, so I did not touch
db2dj.ini until now. If no tool (e.g. db2cc) touches the file behind the
scenes, it contains what is in by default, after installation of db2 (or
creation of the instance). Since at the time of instance creation the
informix client wasn't installed yet, but a slightly older informix server I guess it does not contain valid settings.
But I do set those variables via ~/.profile for the instance owner and
root. They contain

INFORMIXDIR=/informix/clientsdk
INFORMIXSERVER=mysrv

In addition I set INFORMIXSQLHOSTS=/informix/clientsdk/etc/sqlhosts.db2
and of course PATH=$INFORMIXDIR/bin:$PATH (all exported)

I'm sorry, I can't give you the contents of db2dj.ini because I cannot
acces the server right now.

Meanwhile: thanks for trying

Joachim Banzhaf

Nov 12 '05 #5

P: n/a
Hi Aakash,

Aakash Bordia wrote:
Here is what I got from one buddy:

"I think the Informix CSDK is not installed on the server, so installing
it will solve the problem. If CSDK is installed correctly, there are
always .a files under the lib or lib/esql directory. I guess Informix
IConnect, which is bundled with IDS, is installed on the server.
I will have to check that again.
There was a pure informix server installation first.
Then - after I got these errors - I asked the system admin to install the
informix sdk. He reported he has it downloaded and installed (in a
different directory than the server). But only some odbc related .a files
where installed. Everything else .so-only :-(.
When it is installed, there are many .so files under the lib or lib/esql
directory, but these are not sufficient to run djxlinkInformix. In this
case, you might be able to get CSDK version by bin/esqlvars command, but
this does not mean CSDK is installed."
Could you please point me to the right client sdk download? (AIX 4.3 32bit)
How do I verify what really is installed. What else is this command good
for???
Also, did you try accessing the server from the client side using the
command line access of Informix? I dont know what that would be , but I am
talking about the equivalent of DB2 CLP.
I did verify that in the first scenario (informix server, on same machine as
the db2 server, with dbaccess tool without csdk acting as client to an
informix server on another machine). It worked fine. I'd be glad I knew
what the equivalent would be in a client installation. dbacces is not part
of it - at least not on my system.
I wouldn't even be afraid of writing a small sample c program for that
purpose. But I have a feeling that it would not link ;-)

Thanks,

Joachim Banzhaf
Thanks
Aakash

"Joachim Banzhaf" <jb******@ngi.de> wrote in message
news:7n************@banzhaf.dnsalias.net...
Some additions:

I did some digging in the docs about db2dj.ini:
It should have the correct entries for the informix server, since the
informix server was installed at time of instance creation/db2
installation.
But I got the same error messages with the informix server. That was what
made me install the informix client sdk...

By the way, I tested the informix server config with dbaccess to see if
everything is configured correctly on the informix side. What would you
suggest to use to test the configuration of the informix client (I found

no
dbacces or anything else I could use for this)

Thanks again,

Joachim Banzhaf

I wrote:
> Aakash Bordia wrote:
>
>> I am trying to find out the answer for your question, please hold on. In >> the meanwhile, what is in your db2dj.ini file. Is it something like:
>> INFORMIXDIR=/informix
>> INFORMIXSERVER=inf93
>>
>> Thanks
>> Aakash
>
> Hi Aakash,
>
> I did not find a reference that I have to change it, so I did not touch
> db2dj.ini until now. If no tool (e.g. db2cc) touches the file behind
> the scenes, it contains what is in by default, after installation of
> db2 (or creation of the instance). Since at the time of instance
> creation the informix client wasn't installed yet, but a slightly older
> informix server > I guess it does not contain valid settings.
> But I do set those variables via ~/.profile for the instance owner and
> root. They contain
>
> INFORMIXDIR=/informix/clientsdk
> INFORMIXSERVER=mysrv
>
> In addition I set INFORMIXSQLHOSTS=/informix/clientsdk/etc/sqlhosts.db2
> and of course PATH=$INFORMIXDIR/bin:$PATH (all exported)
>
> I'm sorry, I can't give you the contents of db2dj.ini because I cannot
> acces the server right now.
>
> Meanwhile: thanks for trying
>
> Joachim Banzhaf


Nov 12 '05 #6

P: n/a
Hi Joachim,

Joachim Banzhaf <jb******@ngi.de> wrote in message:
Could you please point me to the right client sdk download? (AIX 4.3 32bit) You can get the informations of Informix Client SDK at following url.
http://www-3.ibm.com/software/data/informix/tools/csdk/
The latest version for AIX4.3 32bit is CSDK 2.81.UC2.
How do I verify what really is installed. What else is this command good
for??? When Informix CSDK is installed, there is esql command under bin directory.
This is the precompiler which compiles the Embeded SQL files(.ec) to C source
files. You can get the CSDK version by 'esql -V'.
I did verify that in the first scenario (informix server, on same machine as
the db2 server, with dbaccess tool without csdk acting as client to an
informix server on another machine). It worked fine. I'd be glad I knew
what the equivalent would be in a client installation. dbacces is not part
of it - at least not on my system.

Unfortunately, there is no tools which comunicates with servers interactively
in Informix CSDK as long as I know. We probably need to write a small
program.

Thanks,
Kenro
Nov 12 '05 #7

P: n/a
Hi Kenro,

Kenro Yamagata wrote:
Hi Joachim,

Joachim Banzhaf <jb******@ngi.de> wrote in message:
Could you please point me to the right client sdk download? (AIX 4.3
32bit)

You can get the informations of Informix Client SDK at following url.
http://www-3.ibm.com/software/data/informix/tools/csdk/
The latest version for AIX4.3 32bit is CSDK 2.81.UC2.
How do I verify what really is installed. What else is this command good
for???

When Informix CSDK is installed, there is esql command under bin
directory. This is the precompiler which compiles the Embeded SQL
files(.ec) to C source
files. You can get the CSDK version by 'esql -V'.
I did verify that in the first scenario (informix server, on same machine
as the db2 server, with dbaccess tool without csdk acting as client to an
informix server on another machine). It worked fine. I'd be glad I knew
what the equivalent would be in a client installation. dbacces is not
part of it - at least not on my system.

Unfortunately, there is no tools which comunicates with servers
interactively
in Informix CSDK as long as I know. We probably need to write a small
program.

Thanks,
Kenro


That gives me something to work on - thanks.
I'll let you know what happened.

Joachim Banzhaf

Nov 12 '05 #8

P: n/a
<veröffentlicht & per Mail versendet>

Joachim Banzhaf wrote:
Hi Kenro,

Kenro Yamagata wrote:
Hi Joachim,

Joachim Banzhaf <jb******@ngi.de> wrote in message:
Could you please point me to the right client sdk download? (AIX 4.3
32bit)

You can get the informations of Informix Client SDK at following url.
http://www-3.ibm.com/software/data/informix/tools/csdk/
The latest version for AIX4.3 32bit is CSDK 2.81.UC2.
How do I verify what really is installed. What else is this command good
for???

When Informix CSDK is installed, there is esql command under bin
directory. This is the precompiler which compiles the Embeded SQL
files(.ec) to C source
files. You can get the CSDK version by 'esql -V'.
I did verify that in the first scenario (informix server, on same
machine as the db2 server, with dbaccess tool without csdk acting as
client to an informix server on another machine). It worked fine. I'd be
glad I knew what the equivalent would be in a client installation.
dbacces is not part of it - at least not on my system.

Unfortunately, there is no tools which comunicates with servers
interactively
in Informix CSDK as long as I know. We probably need to write a small
program.

Thanks,
Kenro


That gives me something to work on - thanks.
I'll let you know what happened.

Joachim Banzhaf


And now here is what happened:
A fresh informix client sdk install gave me the libraries.
I would really like to know what happened to the first install!

Not surprising then, executed djxlink as root succeeded:
# djxlink
../djxlinkInformix:
libdb2informixF.a built successfully.

But on the very next step a new problem comes up:
db2inst1$ db2 "create wrapper informix library 'libdb2informixF.a'"
DB21034E Der Befehl wurde als SQL-Anweisung verarbeitet, da es sich um
keinen
gültigen Befehl des Befehlszeilenprozessors handelte. Während der
SQL-Verarbeitung wurde Folgendes ausgegeben:
SQL10010N Die angegebene Bibliothek "libdb2informixF.a" wurde geladen, die
Funktion "UnfencedWrapper_Hook" konnte jedoch nicht ausgeführt werden.
SQLSTATE=42724

appending "options(add db2_fenced 'Y')" like suggested by db2cc did not
help.

I am out of options - again.
Any help appreciated.

Joachim Banzhaf

Nov 12 '05 #9

P: n/a
I would again recommend you to look at your db2dj.ini file. since you
installed a new client etc.
Thanks
Aakash
Nov 12 '05 #10

P: n/a
Hi Joachim,

Joachim Banzhaf wrote:
But on the very next step a new problem comes up:
db2inst1$ db2 "create wrapper informix library 'libdb2informixF.a'"
DB21034E Der Befehl wurde als SQL-Anweisung verarbeitet, da es sich um
keinen
gültigen Befehl des Befehlszeilenprozessors handelte. Während der
SQL-Verarbeitung wurde Folgendes ausgegeben:
SQL10010N Die angegebene Bibliothek "libdb2informixF.a" wurde geladen, die
Funktion "UnfencedWrapper_Hook" konnte jedoch nicht ausgeführt werden.
SQLSTATE=42724

appending "options(add db2_fenced 'Y')" like suggested by db2cc did not
help.

Please try 'libdb2informix.a' instead of 'libdb2informixF.a'.

Thanks,
Kenro
Nov 12 '05 #11

This discussion thread is closed

Replies have been disabled for this discussion.