Where is 32-bit CSDK for Solaris 10 x86 (Intel)?
Posted in 2009
Poster wanted a 32-bit Client SDK for Solaris 10 x86 to keep building existing 32-bit ESQL/C apps against 64-bit IDS 11.50, but the CSDK 3.50 downloads labelled for Solaris x86-64 actually contained SPARC binaries (link failed with 'wrong ELF machine type: EM_SPARC32PLUS'), and no 32-bit IDS or older 32-bit CSDK was offered for that platform. Art Kagel and Jonathan Leffler explained you can mix bitnesses using separate INFORMIXDIR/LD_LIBRARY_PATH trees, with 32-bit clients reaching a 64-bit engine over stream pipes or TCP (not shared memory). However, no 32-bit x86 CSDK was actually located; the poster planned to raise the apparent download-page mix-up with IBM, and the thread records no fix.
Auto-generated by DrWatson from the posts below — may be imperfect; read the full thread.
Topics: Installation, Setup & Upgrades, Connectivity: ESQL/C, 4GL & Embedded SQL, Platform-Specific Issues
Dear Informix users,
We have number 32-bit applications and libraries which uses ESQL/C compiler
and links agaist CSDK libraries. I wish to port these applications/libraries
to Solaris 10 x86 (Intel) platform.
I have successfully installed Informix IDS 11.50 developer edition on the
Solaris host. However since Informix 11.50 is a 64-bit application I cannot
use the bundled CSDK with that version.
Thus, from IBM's website I have download and tried following 32-bit CSDK
version on Solaris 10 x86 (Intel) platform:
clientsdk.3.50.UC3DE.SOL.tar
clientsdk.3.50.UC4DE.SOL.tar
When I try to link with Informix libraries I got following error:
ld: fatal: file /opt/informix/lib/esql/checkapi.o: wrong ELF machine type:
EM_SPARC32PLUS
Which indicates that the CSDK package is for Solaris/sparc architecture. The
elfdump command also verifies this:
$ elfdump /opt/informix/lib/esql/checkapi.o
ELF Header
ei_magic: { 0x7f, E, L, F }
ei_class: ELFCLASS32 ei_data: ELFDATA2MSB
e_machine: EM_SPARC32PLUS e_version: EV_CURRENT
e_type: ET_REL
e_flags: [ EF_SPARC_32PLUS ]
e_entry: 0 e_ehsize: 52 e_shstrndx: 1
e_shoff: 0x43c e_shentsize: 40 e_shnum: 10
e_phoff: 0 e_phentsize: 0 e_phnum: 0
I'm absolutely sure that I ticked correct box while downloading these packages
from IBM's website (that is I selected "Solaris 10 on x86-64" item)
Does anyone know how to get 32-bit CSDK compatible with IDS 11.5 running on
Solaris 10 x86?
Thanks, regards,
Semih Cemiloglu
Why not just port everything to 64bit over time and continue to use whatever
version of the CSDK youare currently using until the port is complete and
tested?
Art
Art S. Kagel
Oninit (www.oninit.com)
IIUG Board of Directors (art@iiug.org)
Disclaimer: Please keep in mind that my own opinions are my own opinions and
do not reflect on my employer, Oninit, the IIUG, nor any other organization
with which I am associated either explicitly or implicitly. Neither do
those opinions reflect those of other individuals affiliated with any entity
with which I am affiliated nor those of the entities themselves.
On Mon, Sep 7, 2009 at 8:52 PM, SEMIH CEMILOGLU
<semih.cemiloglu@gmail.com>wrote:
> Dear Informix users,
>
> We have number 32-bit applications and libraries which uses ESQL/C compiler
> and links agaist CSDK libraries. I wish to port these
> applications/libraries
> to Solaris 10 x86 (Intel) platform.
>
> I have successfully installed Informix IDS 11.50 developer edition on the
> Solaris host. However since Informix 11.50 is a 64-bit application I cannot
> use the bundled CSDK with that version.
>
> Thus, from IBM's website I have download and tried following 32-bit CSDK
> version on Solaris 10 x86 (Intel) platform:
>
> clientsdk.3.50.UC3DE.SOL.tar
> clientsdk.3.50.UC4DE.SOL.tar
>
> When I try to link with Informix libraries I got following error:
>
> ld: fatal: file /opt/informix/lib/esql/checkapi.o: wrong ELF machine type:
> EM_SPARC32PLUS
>
> Which indicates that the CSDK package is for Solaris/sparc architecture.
> The
> elfdump command also verifies this:
>
> $ elfdump /opt/informix/lib/esql/checkapi.o>
> ELF Header
> ei_magic: { 0x7f, E, L, F }
> ei_class: ELFCLASS32 ei_data: ELFDATA2MSB
> e_machine: EM_SPARC32PLUS e_version: EV_CURRENT
> e_type: ET_REL
> e_flags: [ EF_SPARC_32PLUS ]
> e_entry: 0 e_ehsize: 52 e_shstrndx: 1
> e_shoff: 0x43c e_shentsize: 40 e_shnum: 10
> e_phoff: 0 e_phentsize: 0 e_phnum: 0
>
> I'm absolutely sure that I ticked correct box while downloading these
> packages
> from IBM's website (that is I selected "Solaris 10 on x86-64" item)
>
> Does anyone know how to get 32-bit CSDK compatible with IDS 11.5 running on
> Solaris 10 x86?
>
> Thanks, regards,
> Semih Cemiloglu
>
>
>
>
*******************************************************************************
> Forum Note: Use "Reply" to post a response in the discussion forum.
>
>
--001517448ad26b2380047306c931
Hi, I might be stating the obvious but, On Solaris one cannot mix and match 32-bit and 64-bit applications/libraries. Hence this is all or nothing proposition for the entire software stack which Informix is part of. On theory it's nice to migrate 64-bit and break the 4GB barrier but if you have couple of million lines of code base to work with, 64-bit compilation is a lot more than just toggling compile switches. Besides, we would like control to timing and context of the 64-bit migration, as in our experience this is not a trivial task. Let me rephrase the question: Is IBM/Informix 32-bit CSDK libraries available on Solaris 10 x86 compatible with IDS 11.50? If yes, how can one get it? Thanks, regards, Semih Cemiloglu
Hi Semih, Remember that when you install your 32 bit CSDK for solaris, it should not be in the same path/environment as your informix IDS 64 bit version. Perhaps what you could do is install the 32 bit version of informix IDS on solaris (Which will come bundled with the 32bit SDK) and compile your applications against that version. The compiled application should connect to either a 32bit or 64bit informix database server without a problem. Perhaps you could even set it up so that you can compile the source code against both the 32 bit and 64 bit versions. That way you would gradually over time get your applications compiled against a 64 bit environment as Art suggested. > To: ids@iiug.org > From: semih.cemiloglu@gmail.com > Subject: Re: Where is 32-bit CSDK for Solaris 10 x86 (Intel [16886] > Date: Mon, 7 Sep 2009 23:43:31 -0400 > > Hi, > > I might be stating the obvious but, On Solaris one cannot mix and match 32-bit > and 64-bit applications/libraries. Hence this is all or nothing proposition > for the entire software stack which Informix is part of. > > On theory it's nice to migrate 64-bit and break the 4GB barrier but if you > have couple of million lines of code base to work with, 64-bit compilation is > a lot more than just toggling compile switches. Besides, we would like control > to timing and context of the 64-bit migration, as in our experience this is > not a trivial task. > > Let me rephrase the question: Is IBM/Informix 32-bit CSDK libraries available > on Solaris 10 x86 compatible with IDS 11.50? If yes, how can one get it? > > Thanks, regards, > Semih Cemiloglu > > > ******************************************************************************* > Forum Note: Use "Reply" to post a response in the discussion forum. > _________________________________________________________________ What can you do with the new Windows Live? Find out http://www.microsoft.com/windows/windowslive/default.aspx
Actually, Semih, you can indeed mix 32-bit and 64-bit applications in Solaris. The installed stack in $INFORMIXDIR where the engine is installed must be all 32bit or all64bit it is true, but you CAN install the 64bit IDS stack in one directory and a separate 32bit CSDK in a different directory and applications compiled with the 32bit compiler will have INFORMIXDIR and LD_LIBRARY_PATH pointed to the 32bit installation and communicating with the IDS instance using stream pipes or IP loopback connections. The engine and its tools and any applications that you have already ported to the 64bit CSDK will have INFORMIXDIR and LD_LIBRARY_PATH pointed to the 64bit installation and can also connect to the instance using shared memory. This works very well and will allow you to continue to run your 32bit apps unchanged and slowly convert one library and application at a time to 64bits. I know that it is non-trivial to convert code from 32bit to 64bit safe having performed the task myself for equivalent code volumes. However, the exercise is worth the performance improvement both within the applications themselves and in the ability to communicate with the IDS instance using shared memory again. Anyway, my point was that you DO NOT have to get the latest CSDK v3.50 32bit release, you can continue to use the current 32bit CSDK version you have already compiled your code with. That will work fine as long as the applications do not need to access engine features that were not supported under the earlier release (ex: BIGINT & BIGSERIAL). If an app does have to be modified to support a new 11.50 features, then it is time to port that app to 64bit code anyway. That was the point you missed. The CSDK v 3.00 or 2.90 or whatever version you had before as long as it is also a for Solaris for Intel release. In that case you should not even have to recompile/relink. Art Art S. Kagel Oninit (www.oninit.com) IIUG Board of Directors (art@iiug.org) Disclaimer: Please keep in mind that my own opinions are my own opinions and do not reflect on my employer, Oninit, the IIUG, nor any other organization with which I am associated either explicitly or implicitly. Neither do those opinions reflect those of other individuals affiliated with any entity with which I am affiliated nor those of the entities themselves. On Mon, Sep 7, 2009 at 11:43 PM, SEMIH CEMILOGLU <semih.cemiloglu@gmail.com>wrote: > Hi, > > I might be stating the obvious but, On Solaris one cannot mix and match > 32-bit > and 64-bit applications/libraries. Hence this is all or nothing proposition > for the entire software stack which Informix is part of. > > On theory it's nice to migrate 64-bit and break the 4GB barrier but if you > have couple of million lines of code base to work with, 64-bit compilation > is > a lot more than just toggling compile switches. Besides, we would like > control > to timing and context of the 64-bit migration, as in our experience this is > not a trivial task. > > Let me rephrase the question: Is IBM/Informix 32-bit CSDK libraries > available > on Solaris 10 x86 compatible with IDS 11.50? If yes, how can one get it? > > Thanks, regards, > Semih Cemiloglu > > > > ******************************************************************************* > Forum Note: Use "Reply" to post a response in the discussion forum. > > --0015173fe6c6a3ab82047311a665
Hi Art, What about cross pollination i.e 32 bit apps accessing 64bit instances and 64 bit apps accessing 32 bit instances? I am sure that is doable with separate connections to instances as well. Any other comments on that? Thanks, Sunil --- On Tue, 9/8/09, Art Kagel <art.kagel@gmail.com> wrote: From: Art Kagel <art.kagel@gmail.com> Subject: Re: Where is 32-bit CSDK for Solaris 10 x86 (Intel [16896] To: ids@iiug.org Date: Tuesday, September 8, 2009, 7:19 AM Actually, Semih, you can indeed mix 32-bit and 64-bit applications in Solaris. The installed stack in $INFORMIXDIR where the engine is installed must be all 32bit or all64bit it is true, but you CAN install the 64bit IDS stack in one directory and a separate 32bit CSDK in a different directory and applications compiled with the 32bit compiler will have INFORMIXDIR and LD_LIBRARY_PATH pointed to the 32bit installation and communicating with the IDS instance using stream pipes or IP loopback connections. The engine and its tools and any applications that you have already ported to the 64bit CSDK will have INFORMIXDIR and LD_LIBRARY_PATH pointed to the 64bit installation and can also connect to the instance using shared memory. This works very well and will allow you to continue to run your 32bit apps unchanged and slowly convert one library and application at a time to 64bits. I know that it is non-trivial to convert code from 32bit to 64bit safe having performed the task myself for equivalent code volumes. However, the exercise is worth the performance improvement both within the applications themselves and in the ability to communicate with the IDS instance using shared memory again. Anyway, my point was that you DO NOT have to get the latest CSDK v3.50 32bit release, you can continue to use the current 32bit CSDK version you have already compiled your code with. That will work fine as long as the applications do not need to access engine features that were not supported under the earlier release (ex: BIGINT & BIGSERIAL). If an app does have to be modified to support a new 11.50 features, then it is time to port that app to 64bit code anyway. That was the point you missed. The CSDK v 3.00 or 2.90 or whatever version you had before as long as it is also a for Solaris for Intel release. In that case you should not even have to recompile/relink. Art Art S. Kagel Oninit (www.oninit.com) IIUG Board of Directors (art@iiug.org) Disclaimer: Please keep in mind that my own opinions are my own opinions and do not reflect on my employer, Oninit, the IIUG, nor any other organization with which I am associated either explicitly or implicitly. Neither do those opinions reflect those of other individuals affiliated with any entity with which I am affiliated nor those of the entities themselves. On Mon, Sep 7, 2009 at 11:43 PM, SEMIH CEMILOGLU <semih.cemiloglu@gmail.com>wrote: > Hi, > > I might be stating the obvious but, On Solaris one cannot mix and match > 32-bit > and 64-bit applications/libraries. Hence this is all or nothing proposition > for the entire software stack which Informix is part of. > > On theory it's nice to migrate 64-bit and break the 4GB barrier but if you > have couple of million lines of code base to work with, 64-bit compilation > is > a lot more than just toggling compile switches. Besides, we would like > control > to timing and context of the 64-bit migration, as in our experience this is > not a trivial task. > > Let me rephrase the question: Is IBM/Informix 32-bit CSDK libraries > available > on Solaris 10 x86 compatible with IDS 11.50? If yes, how can one get it? > > Thanks, regards, > Semih Cemiloglu > > > > ******************************************************************************* > Forum Note: Use "Reply" to post a response in the discussion forum. > > --0015173fe6c6a3ab82047311a665 ******************************************************************************* Forum Note: Use "Reply" to post a response in the discussion forum.
Not a problem as long as you don't try to use a shared memory connection. 32bit apps can access 64bit instances and 64bit apps can access 32bit instances over stream pipe (onstrpip) or TCP connections (ontlitcp or onsoctcp) without any problems. Art Art S. Kagel Oninit (www.oninit.com) IIUG Board of Directors (art@iiug.org) Disclaimer: Please keep in mind that my own opinions are my own opinions and do not reflect on my employer, Oninit, the IIUG, nor any other organization with which I am associated either explicitly or implicitly. Neither do those opinions reflect those of other individuals affiliated with any entity with which I am affiliated nor those of the entities themselves. On Tue, Sep 8, 2009 at 10:38 AM, Sunil Sabat <sunil_sabat@yahoo.com> wrote: > Hi Art, > > What about cross pollination i.e 32 bit apps accessing 64bit instances and > 64 > bit apps accessing 32 bit instances? I am sure that is doable with separate > connections to instances as well. Any other comments on that? > > Thanks, > > Sunil > --- On Tue, 9/8/09, Art Kagel <art.kagel@gmail.com> wrote: > > From: Art Kagel <art.kagel@gmail.com> > Subject: Re: Where is 32-bit CSDK for Solaris 10 x86 (Intel [16896] > To: ids@iiug.org > Date: Tuesday, September 8, 2009, 7:19 AM > > Actually, Semih, you can indeed mix 32-bit and 64-bit applications in > Solaris. The installed stack in $INFORMIXDIR where the engine is installed > must be all 32bit or all64bit it is true, but you CAN install the 64bit IDS > stack in one directory and a separate 32bit CSDK in a different directory > and applications compiled with the 32bit compiler will have INFORMIXDIR and > LD_LIBRARY_PATH pointed to the 32bit installation and communicating with > the > IDS instance using stream pipes or IP loopback connections. The engine and > its tools and any applications that you have already ported to the 64bit > CSDK will have INFORMIXDIR and LD_LIBRARY_PATH pointed to the 64bit > installation and can also connect to the instance using shared memory. This > works very well and will allow you to continue to run your 32bit apps > unchanged and slowly convert one library and application at a time to > 64bits. > > I know that it is non-trivial to convert code from 32bit to 64bit safe > having performed the task myself for equivalent code volumes. However, the > exercise is worth the performance improvement both within the applications > themselves and in the ability to communicate with the IDS instance using > shared memory again. > > Anyway, my point was that you DO NOT have to get the latest CSDK v3.50 > 32bit > release, you can continue to use the current 32bit CSDK version you have > already compiled your code with. That will work fine as long as the > applications do not need to access engine features that were not supported > under the earlier release (ex: BIGINT & BIGSERIAL). If an app does have to > be modified to support a new 11.50 features, then it is time to port that > app to 64bit code anyway. That was the point you missed. The CSDK v 3.00 > or 2.90 or whatever version you had before as long as it is also a for > Solaris for Intel release. In that case you should not even have to > recompile/relink. > > Art > > Art S. Kagel > Oninit (www.oninit.com) > IIUG Board of Directors (art@iiug.org) > > Disclaimer: Please keep in mind that my own opinions are my own opinions > and > do not reflect on my employer, Oninit, the IIUG, nor any other organization > with which I am associated either explicitly or implicitly. Neither do > those opinions reflect those of other individuals affiliated with any > entity > with which I am affiliated nor those of the entities themselves. > > On Mon, Sep 7, 2009 at 11:43 PM, SEMIH CEMILOGLU > <semih.cemiloglu@gmail.com>wrote: > > > Hi, > > > > I might be stating the obvious but, On Solaris one cannot mix and match > > 32-bit > > and 64-bit applications/libraries. Hence this is all or nothing > proposition > > for the entire software stack which Informix is part of. > > > > On theory it's nice to migrate 64-bit and break the 4GB barrier but if > you > > have couple of million lines of code base to work with, 64-bit > compilation > > is > > a lot more than just toggling compile switches. Besides, we would like > > control > > to timing and context of the 64-bit migration, as in our experience this > is > > not a trivial task. > > > > Let me rephrase the question: Is IBM/Informix 32-bit CSDK libraries > > available > > on Solaris 10 x86 compatible with IDS 11.50? If yes, how can one get it? > > > > Thanks, regards, > > Semih Cemiloglu > > > > > > > > > > > ******************************************************************************* > > Forum Note: Use "Reply" to post a response in the discussion forum. > > > > > > --0015173fe6c6a3ab82047311a665 > > > > ******************************************************************************* > Forum Note: Use "Reply" to post a response in the discussion forum. > > > > ******************************************************************************* > Forum Note: Use "Reply" to post a response in the discussion forum. > > --0023545bf5486540f8047312ee6a
Hi Mark, According to IBM Informix download page there is no 32-bit version of IDS 11.50 on Solaris 10 x86: https://www14.software.ibm.com/webapp/iwm/web/reg/pick.do?source=ifxids&S_TACT=1 05AGX28&S_CMP=DLMAIN&lang=en_US Linux on the other has has a 32-bit IDS version. That's why I am forced to work with 64-bit IDS on Solaris. The curious thing is when I download 32-Bit CSDK for Sol10-x86 they all come out as for Sparc architecture. Here is an excerpt from ESQLC_machine_notes_3.50.txt file: ================================= MACHINE SPECIFIC NOTES FOR IBM INFORMIX-Client SDK 3.50.UC4 PRODUCT RELEASE IBM INFORMIX-ESQL/C Version 3.50.UC4 On Solaris Sparc 32bit DATE: 03 Apr 2009 ================================= OS Information : Built on Solaris 9, Certified on Solaris 10. Which confirms that CSDK3.50UC4 is for sparc architecture not for Intel. According to the folllowing pages http://www-01.ibm.com/software/data/informix/tools/csdk/requirements/intel.html http://www14.software.ibm.com/download/data/web/en_US/trialprograms/L132305W9350 2J16.html?S_TACT=104CBW71 I should be able to use CDSK down to the version 2.90 with IDS 11.50. But IBM website does not provide 32-bit version of CSDK v2.90. Hence, I have no way of doing what you have suggested. Today, I will see IBM reps and will get to the bottom of this. However, there is certainly a mix-up in IBM's downloads page. I hope someone will look after this. Regards, Semih Cemiloglu
Hi Art, Thank you for your helpful recommendations. Indeed, your suggesstion of getting 32-bit apps to talk to 64-bit IDS over socket was my initial plan, had I been able to access 32-bit CSDK for Solaris 10 x86 platform. My point is that there is no 32-bit CSDK available for me (or anyone) to use on that platform. See my response to Mark for whys and details. We have been using Informix 7.31 on Solaris 10 *SPARC* architecture for over a decade now. IBM is refusing to provide 7.31 on Solaris 10 *INTEL* architecture, as I understand end of service date is imminent for 7.31. The bottom line is I don't have access to 32-bit IDS nor 32-CSDK on Solaris 10 x86 platfom. Porting to 64-bit seems so formidable task to us that even changing Informix with another database brand is an option. Art, I noticed that you are in the board of directors, please voice my concerns that a) Solaris/OpenSolaris is a terrific OS second to none. Developers using Solaris expect reasonable support and Informix product diversity on all platforms/architectures that Solaris is ported. b) There is certainly a mix-up in IBM/Informix product download pages. Please get someone to act on this. Thanks, regards, Semih Cemiloglu
On Mon, Sep 7, 2009 at 20:43, SEMIH CEMILOGLU<semih.cemiloglu@gmail.com> wrote: > I might be stating the obvious but, On Solaris one cannot mix and match 32-bit > and 64-bit applications/libraries. Hence this is all or nothing proposition > for the entire software stack which Informix is part of. It is perfectly feasible to have two INFOMRIXDIR locations, one with the 32-bit software and one with the 64-bit software. Further, you can arrange, with care, that the programs you use are all present in both directories. Assuming you start with them as mostly 32-bit software. People have their environment set to the new (long-term) 64-bit software, but when they run a program appX nominally from the 64-bit directory (but it is actually still a 32-bit application), then you have an environment setting shell script in the 64-bit directory which tweaks the environment to pick up the program from the 32-bit directory instead. When you migrate appX to 64-bit, you replace the script in the 64-bit directory with the migrated application - and replace the 32-bit program with the counterpart script that sets the environment and invokes the 64-bit version. Repeat for all applications - you can migrate one at a time seamlessly. > On theory it's nice to migrate 64-bit and break the 4GB barrier but if you > have couple of million lines of code base to work with, 64-bit compilation is > a lot more than just toggling compile switches. Besides, we would like control > to timing and context of the 64-bit migration, as in our experience this is > not a trivial task. > > Let me rephrase the question: Is IBM/Informix 32-bit CSDK libraries available > on Solaris 10 x86 compatible with IDS 11.50? If yes, how can one get it? You can connect 32-bit CSDK to 64-bit IDS except you can't use shared memory connections. -- Jonathan Leffler #include <disclaimer.h> Email: jleffler@earthlink.net, jleffler@us.ibm.com Guardian of DBD::Informix v2008.0513 -- http://dbi.perl.org/ "Blessed are we who can laugh at ourselves, for we shall never cease to be amused." NB: Please do not use this email for correspondence. I don't necessarily read it every week, even. Joan Crawford - "I, Joan Crawford, I believe in the dollar. Everything I earn, I spend." - http://www.brainyquote.com/quotes/authors/j/joan_crawford.html
On Tue, Sep 8, 2009 at 07:38, Sunil Sabat<sunil_sabat@yahoo.com> wrote: > What about cross pollination i.e 32 bit apps accessing 64bit instances and 64 > bit apps accessing 32 bit instances? I am sure that is doable with separate > connections to instances as well. Any other comments on that? Perfectly feasible in either direction as long as you avoid shared memory connections. You just have to keep the environment variables straight. > --- On Tue, 9/8/09, Art Kagel <art.kagel@gmail.com> wrote: > > From: Art Kagel <art.kagel@gmail.com> > Subject: Re: Where is 32-bit CSDK for Solaris 10 x86 (Intel [16896] > To: ids@iiug.org > Date: Tuesday, September 8, 2009, 7:19 AM > > Actually, Semih, you can indeed mix 32-bit and 64-bit applications in > Solaris. The installed stack in $INFORMIXDIR where the engine is installed > must be all 32bit or all64bit it is true, but you CAN install the 64bit IDS > stack in one directory and a separate 32bit CSDK in a different directory > and applications compiled with the 32bit compiler will have INFORMIXDIR and > LD_LIBRARY_PATH pointed to the 32bit installation and communicating with the > IDS instance using stream pipes or IP loopback connections. The engine and > its tools and any applications that you have already ported to the 64bit > CSDK will have INFORMIXDIR and LD_LIBRARY_PATH pointed to the 64bit > installation and can also connect to the instance using shared memory. This > works very well and will allow you to continue to run your 32bit apps > unchanged and slowly convert one library and application at a time to > 64bits. Little known facts about Solaris: The environment variables LD_LIBRARY_PATH_32 and LD_LIBRARY_PATH_64 can be used to specify 32-bit and 64-bit library search paths respectively. > I know that it is non-trivial to convert code from 32bit to 64bit safe > having performed the task myself for equivalent code volumes. However, the > exercise is worth the performance improvement both within the applications > themselves and in the ability to communicate with the IDS instance using > shared memory again. > > Anyway, my point was that you DO NOT have to get the latest CSDK v3.50 32bit > release, you can continue to use the current 32bit CSDK version you have > already compiled your code with. That will work fine as long as the > applications do not need to access engine features that were not supported > under the earlier release (ex: BIGINT & BIGSERIAL). If an app does have to > be modified to support a new 11.50 features, then it is time to port that > app to 64bit code anyway. That was the point you missed. The CSDK v 3.00 > or 2.90 or whatever version you had before as long as it is also a for > Solaris for Intel release. In that case you should not even have to > recompile/relink. > > Art > > > On Mon, Sep 7, 2009 at 11:43 PM, SEMIH CEMILOGLU > <semih.cemiloglu@gmail.com>wrote: >> I might be stating the obvious but, On Solaris one cannot mix and match >> 32-bit >> and 64-bit applications/libraries. Hence this is all or nothing proposition >> for the entire software stack which Informix is part of. >> >> On theory it's nice to migrate 64-bit and break the 4GB barrier but if you >> have couple of million lines of code base to work with, 64-bit compilation >> is >> a lot more than just toggling compile switches. Besides, we would like >> control >> to timing and context of the 64-bit migration, as in our experience this is >> not a trivial task. >> >> Let me rephrase the question: Is IBM/Informix 32-bit CSDK libraries >> available >> on Solaris 10 x86 compatible with IDS 11.50? If yes, how can one get it? -- Jonathan Leffler #include <disclaimer.h> Email: jleffler@earthlink.net, jleffler@us.ibm.com Guardian of DBD::Informix v2008.0513 -- http://dbi.perl.org/ "Blessed are we who can laugh at ourselves, for we shall never cease to be amused." NB: Please do not use this email for correspondence. I don't necessarily read it every week, even. Ogden Nash - "The trouble with a kitten is that when it grows up, it's always a cat." - http://www.brainyquote.com/quotes/authors/o/ogden_nash.html
My commiserations Semih, It looks like you will need to continue with executing your 32bit applications, which should work with no problems against Informix IDS 11.5 and start the arduous task of porting to 64bit. Regards Mark > To: ids@iiug.org > From: semih.cemiloglu@gmail.com > Subject: Re: RE: Where is 32-bit CSDK for Solaris 10 x86 (I [16910] > Date: Tue, 8 Sep 2009 20:12:59 -0400 > > Hi Mark, > > According to IBM Informix download page there is no 32-bit version of IDS > 11.50 on Solaris 10 x86: > > > https://www14.software.ibm.com/webapp/iwm/web/reg/pick.do?source=ifxids&S_TACT=1 05AGX28&S_CMP=DLMAIN&lang=en_US > > Linux on the other has has a 32-bit IDS version. That's why I am forced to > work with 64-bit IDS on Solaris. > > The curious thing is when I download 32-Bit CSDK for Sol10-x86 they all come > out as for Sparc architecture. Here is an excerpt from > ESQLC_machine_notes_3.50.txt file: > > ================================= > > MACHINE SPECIFIC NOTES > > FOR > > IBM INFORMIX-Client SDK 3.50.UC4 PRODUCT RELEASE > > IBM INFORMIX-ESQL/C Version 3.50.UC4 > > On Solaris Sparc 32bit > > DATE: 03 Apr 2009 > > ================================= > > OS Information : Built on Solaris 9, Certified on Solaris 10. > > Which confirms that CSDK3.50UC4 is for sparc architecture not for Intel. > > According to the folllowing pages > > http://www-01.ibm.com/software/data/informix/tools/csdk/requirements/intel.html > > http://www14.software.ibm.com/download/data/web/en_US/trialprograms/L132305W9350 2J16.html?S_TACT=104CBW71 > > I should be able to use CDSK down to the version 2.90 with IDS 11.50. But IBM > website does not provide 32-bit version of CSDK v2.90. > > Hence, I have no way of doing what you have suggested. Today, I will see IBM > reps and will get to the bottom of this. > > However, there is certainly a mix-up in IBM's downloads page. I hope someone > will look after this. > > Regards, > Semih Cemiloglu > > > ******************************************************************************* > Forum Note: Use "Reply" to post a response in the discussion forum. > _________________________________________________________________ Share your memories online with anyone you want. http://www.microsoft.com/southafrica/windows/windowslive/products/photos-share.a spx?tab=1