- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - Linux
- >
- Re: Why is /usr/lib/hpux32 used?
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Discussions
Discussions
Forums
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-02-2006 04:48 AM
тАО03-02-2006 04:48 AM
===============================================
$ uname -rs
HP-UX B.11.23
$ model
ia64 hp server rx4640
$ cc -V
cc: HP aC++/ANSI C B3910B A.06.05 [Jul 25 2005]
$ cc hello.c
$ ldd -s -v a.out
find library=libc.so.1; required by a.out
search path=/usr/lib/hpux32:/opt/langtools/lib/hpux32 (RUNPATH)
trying path=/usr/lib/hpux32/libc.so.1
libc.so.1 => /usr/lib/hpux32/libc.so.1
find library=libdl.so.1; required by /usr/lib/hpux32/libc.so.1
search path=/usr/lib/hpux32 (RUNPATH)
trying path=/usr/lib/hpux32/libdl.so.1
libdl.so.1 => /usr/lib/hpux32/libdl.so.1
Solved! Go to Solution.
- Tags:
- LPATH
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-02-2006 05:13 AM
тАО03-02-2006 05:13 AM
Re: Why is /usr/lib/hpux32 used?
That's the default linker search path on Itanium (32-bit) based systems. If you had a PA-RISC (32-bit) system then the default library path would be "/usr/lib". You can change the default linker (ld) search path by using the LPATH environment variable or the -L linker option (the latter taking precedence over the former).
If unset LPATH then ld searches the default dir "/usr/lib" for parisc & "usr/lib/hpux32" for itanium. If LPATH is set, ld searches only the dirs specified in LPATH and the default dirs are not searched unless specified in LPATH. To nclude /usr/local/lib in the search path after the default directories, set LPATH as follows:
# export LPATH=/usr/lib:/usr/local/lib
Note the "-L" switch if given to cc has higher priority than LPATH.
cheers!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-02-2006 05:42 AM
тАО03-02-2006 05:42 AM
Re: Why is /usr/lib/hpux32 used?
Hmmm. I thought this machine was 64-bit. If I execute getconf KERNEL_BITS it returns 64. Is there something else I should look at?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-02-2006 05:56 AM
тАО03-02-2006 05:56 AM
Re: Why is /usr/lib/hpux32 used?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-02-2006 07:42 AM
тАО03-02-2006 07:42 AM
Re: Why is /usr/lib/hpux32 used?
# what cc
# file cc
thanks!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-02-2006 07:57 AM
тАО03-02-2006 07:57 AM
Re: Why is /usr/lib/hpux32 used?
/usr/bin/cc:
HP aC++/C for Itanium(R)-based systems B3910B A.06.05 [Jul 25 2005]
$ file `which cc`
/usr/bin/cc: ELF-32 executable object file - IA64
(/usr/bin/cc -> /opt/ansic/bin/cc)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-02-2006 08:12 AM
тАО03-02-2006 08:12 AM
Re: Why is /usr/lib/hpux32 used?
Assembler messages:
Can't open +A64 for reading: No such file or directory
ld: Can't find library or mismatched ABI for -lm
Fatal error.
The LPATH is set in the make file to /usr/lib/hpux64:$LD_LIBRARY_PATH. If I set a library path in the compile command (-L/usr/lib/hpux32) the error message travels down to a different set of (PSoft) libraries.
I would like to understand _why_ the GNUbase install is affecting this.
- Tags:
- COBOL
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-02-2006 08:31 AM
тАО03-02-2006 08:31 AM
Re: Why is /usr/lib/hpux32 used?
# cc hello.c
# ldd -s -v a.out
Will generate 32-bit objects & link the 32-bit library "usr/lib/hpux32" into a.out.
# cc +DD64 hello.c -o hello64
# ldd -s -v hello64
Will generate 64-bit objects & link the 64-bit library "usr/lib/hpux64" into hello64. Doing a file on a.out & hello64 should show this distinction as well.
cheers!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-02-2006 09:12 AM
тАО03-02-2006 09:12 AM
Re: Why is /usr/lib/hpux32 used?
LPATH=/usr/lib/hpux64:$LD_LIBRARY_PATH shows a 64-bit library while also providing a 32-bit library to the linker on the command line (-L/usr/lib/hpux32). Note the "-L" option would take precedence over the LPATH environment variable.
Could you post the gcc command line you are using as well as the relevant portion of your makefile which could help in debugging this further. Also, what does LD_LIBRARY_PATH contain.
cheers!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-02-2006 09:23 AM
тАО03-02-2006 09:23 AM
Re: Why is /usr/lib/hpux32 used?
>LPATH=/usr/lib/hpux64:$LD_LIBRARY_PATH shows a 64-bit library
>while also providing a 32-bit library to the linker on
>the command line (-L/usr/lib/hpux32). Note the "-L" option would
>take precedence over the LPATH environment variable.
Well, I was the one who forced the -L/usr/lib/hpux32 to see if the LPATH having /usr/lib/hpux64 on it was part of my problem.
I'm really mixing up compilers, (COBOL, HP's ANSI C and gcc), in my tests to see how much additional information I can get during the process.
That being said, the COBOL installation appears to be 64-bit, and I am going to reinstall as 32-bit tomorrow, and then see what happens with the PeopleSoft compile, with and without GNUbase utilities....
This conversation has been most educational for me. Thank you! I will post what happens next.