This discussion is archived
11 Replies Latest reply: Jan 11, 2012 4:45 AM by 909168 RSS

64-bit OIC installed in 32-bit OS

909168 Newbie
Currently Being Moderated
Hi,

I have a machine with a 64-bit processor but running a 32-bit Windows OS. That Windows OS hosts a Virtual Box VM running a 32-bit version of Oracle Linux 6.1.

My problem is that when I install Solaris Studio (12.3) the executables in the OIC installation are 64-bit executables. Not surprisingly the 32-bit Linux cannot run them. This is despite the installer I used being called '...-x86-...'. Other executables in the installation (e.g. the C compiler) are 32-bit executables.

It seems that the OIC installer is automatically choosing to install 64-bit executables. I looked at the installer and did not see any way to force the OIC installer to install 32-bit executables, but did not see anything.

Is there are way to have the installer install the correct executables for the OS?

Alternatively, can I take a the OIC directory tree from another machine (one with a 32-bit processor) and replace the incorrect one on this VM?

Thanks,
Leigh.
  • 1. Re: 64-bit OIC installed in 32-bit OS
    NikMolchanov Newbie
    Currently Being Moderated
    Hi Leigh,

    Could you please provide more details about the installation that you tried?
    There are 2 ways to install Oracle Solaris Studio 12.3 on Linux:
    - using RPM installer
    - using TAR file
    Which of them did you try?
    If you had a problem with RPM installer, you can try to extract the installation image from the TAR file.
    You can download SolarisStudio12.3-linux-x86-bin.tar.bz2 file from this page:

    http://www.oracle.com/technetwork/server-storage/solarisstudio/downloads/index.html

    Download, extract, set PATH, try it, and let us know the result, please.

    Thanks.
    Nik
  • 2. Re: 64-bit OIC installed in 32-bit OS
    Steve_Clamage Pro
    Currently Being Moderated
    There might be two separate issue here: OIC and Studio 12.3.

    You will have to check the OIC documentation, or ask in an Oracle Database forum about support for OIC on 32-bit versions of Linux. OIC is not connected in any way to Oracle Solaris Studio.

    Studio 12.3 was not intended to be used on 32-bit systems. (But 32-bit programs can be created, debugged and analyzed.) I see that the System Requirements document says that 32-bit x86 OS versions are supported. That statement seems to have been left over from earlier releases that did support 32-bit systems. The document should say that Studio can be used only on 64-bit systems. We'll get the document corrected.

    Since the compilers are 32-bit programs, you might find that you can use Studio 12.3 anyway, but no support is available if you run into problems.

    Another option is to download Studio 12.2, which is supported on 32-bit OS versions.
  • 3. Re: 64-bit OIC installed in 32-bit OS
    909168 Newbie
    Currently Being Moderated
    Thanks.

    It was the RPM installer.

    Leigh.
  • 4. Re: 64-bit OIC installed in 32-bit OS
    909168 Newbie
    Currently Being Moderated
    Steve,

    If that is true then I would respectfully suggest that the installer should not be called '...-x86-...'

    Leigh.
  • 5. Re: 64-bit OIC installed in 32-bit OS
    909168 Newbie
    Currently Being Moderated
    Steve,

    I give a little more information ...

    I was using 12.3 because of the advertised Pro*C support in that version.

    Does 12.2 have the same Pro*C support?

    Previously I had Solaris Studio 12.3beta installed without OIC. The VM also has the standard Oracle Client installed. The 32-bit standard Oracle client works perfectly well, including Proc*C. The problem seems to be that the Solaris Studio is hard coded to only use the Pro*C from OIC, which as we have discussed does not work because only 64-bit OIC executables/libraries are installed.

    Is it possible to re-configure Solaris Studio to use the standard Oracle Client instead of OIC?

    Alternatively, do you think it will be possible replace all the executables/libraries in the OIC directory tree with 32-bit ones from the standard Oracle Client?

    Leigh.
  • 6. Re: 64-bit OIC installed in 32-bit OS
    NikMolchanov Newbie
    Currently Being Moderated
    Hi Leigh,

    I have never tried to use OIC, but your configuration is not supported anyway ;-),
    so it seems a good idea to replace all the executables/libraries in the OIC directory
    tree with 32-bit ones from the standard Oracle Client, because 64-bit binaries will not
    work for you. Please, let us know how this replacement works.

    Thanks.
    Nik
  • 7. Re: 64-bit OIC installed in 32-bit OS
    user12616316 Newbie
    Currently Being Moderated
    Support for Pro*C is new in Solaris Studio 12.3.

    Solaris Studio 12.3 was not tested for 32-bit Linux systems, and it is not supported on 32-bit Linux systems. Nonetheless, it might work on a 32-bit Linux system. You could try downloading the tarfile and installing from it. It might work, it might not.

    Robert Corbett
  • 8. Re: 64-bit OIC installed in 32-bit OS
    909168 Newbie
    Currently Being Moderated
    I thought I would report back on the Solaris Studio on 32-bit Oracle Linux issue.

    It does work. This how I did it:

    1) Install Solaris Studio, including OIC. This installs an OIC that has 64-bit executables with 64-bit libraries (and 32-bit libraries in the arch32 sub-dir).

    2) Download and extract the 32-bit OIC from the Oracle site.

    3) Replace the 64-bit OIC installed in step 1 with the 32-bit one downloaded in step 2.

    4) Copy the arch32 sub-dir. from the 64-bit installed in step 1 into the new 32-bit one. The build process requires this folder to exist.

    This set up creates working 32-bit executables.

    Also

    I started using a 32-bit Oracle Linux installation because I had one already. This was somewhat misdirected activity. The eventual installation will be on a 64-bit processor and will (probably) use 64-bit Oracle Linux. I am now using a 64-bit Oracle Linux instead.

    However, I still need to link the eventual executables as 32-bits. This is because I need to use some legacy libraries that are only available in 32-bit versions.

    Is there a canonically correct way to configure Solaris Studio to produce 32-bit executables?

    Thanks,
    Leigh.
  • 9. Re: 64-bit OIC installed in 32-bit OS
    Steve_Clamage Pro
    Currently Being Moderated
    user1252037 wrote:

    Is there a canonically correct way to configure Solaris Studio to produce 32-bit executables?
    To produce 32-bit binaries, use the option -m32 on every cc or CC command, compiling and linking.
    To produce 64-bit binaries, use the option -m64 on every cc or CC command, compiling and linking.

    Using these options consistently eliminates problems due to differing default behavior on different systems.
  • 10. Re: 64-bit OIC installed in 32-bit OS
    909168 Newbie
    Currently Being Moderated
    Thanks,

    I just wondered whether there was a single setting that I could change to cause the -m32 to be applied everywhere necessary.

    PS

    I would like to thank everybody that contributed to this thread. The responses have been swift and helpful.

    Regards,
    Leigh.
  • 11. Re: 64-bit OIC installed in 32-bit OS
    909168 Newbie
    Currently Being Moderated
    To respond to my own comment:

    There is a single place where you can set whether you want 32-bit or 64-bit builds. It is the Architecture setting on the C and C++ Compiler tabs of the project properties.

    Regards,
    Leigh.

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points