This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Title: HP-UX local libraries not included
Type: Stage: patch review
Components: Extension Modules Versions: Python 3.8, Python 3.7, Python 3.6
Status: open Resolution:
Dependencies: Superseder:
Assigned To: Nosy List: adiroiban, michael-o, neologix
Priority: normal Keywords: patch

Created on 2012-04-12 21:24 by adiroiban, last changed 2022-04-11 14:57 by admin.

File name Uploaded Description Edit
hpux_local_lib.diff adiroiban, 2012-04-12 21:24 review
Pull Requests
URL Status Linked Edit
PR 8831 closed michael-o, 2018-08-20 09:25
Messages (4)
msg158171 - (view) Author: Adi Roiban (adiroiban) Date: 2012-04-12 21:24

Sorry for bothering you.

In my initial report, I did not added /usr/local/lib paths , since I was thinking that Python should only work with the default library location.
Now I see that /usr/local is added just at the beginning of module building.

The default HPUX system comes with openssl, but for example there is no zlib.

Now, on HPUX one can use the Connect archives from

They come with a nice tool for providing similar functionality like apt-get or yum.

zlib is included in HPUX Connect archive.

HPUX Connect packages are installed in /usr/local

With the initial code I was able to build hashlib and other extensions using libraries from /usr/local

To include /usr/local/lib/hpux* in the path, I also had to add them to self.compiler.library_dirs as otherwise they were not added in LD.

I am not sure how it did work in the first place, since on HPUX openssl is in /usr/lib/hpux* and not in /usr/lib/

Here is the code

        # HP-UX keeps files in lib/hpux folders.
        if platform == 'hp-ux11':
            for hpux_path in [
                    '/usr/lib/hpux64', '/usr/lib/hpux32',
                    '/usr/local/lib/hpux64', '/usr/local/lib/hpux32',
                lib_dirs += hpux_path
                add_dir_to_list(self.compiler.library_dirs, hpux_path)

With the following code I was able to also build the extensions using libraries from /usr/local on HPUX.

I am new to python build system and I am not sure if this is the right way to do it.

I am also new to 'hg'. I have pulled the latest changed for cpython but I can not see the previous changes in 'default' branch.

I have attached a patch based on 76268:3df2f4a83816

msg158191 - (view) Author: Adi Roiban (adiroiban) Date: 2012-04-13 01:38

There was an error in the patch.

Instead of 

lib_dirs += hpux_path

it should be:

lib_dirs += [hpux_path]

msg324180 - (view) Author: Michael Osipov (michael-o) * Date: 2018-08-27 13:49
Can someone review the PR for this?
msg340898 - (view) Author: Michael Osipov (michael-o) * Date: 2019-04-26 09:17
Please close because there is actually no /usr/local on HP-UX, System V does use /opt, not /usr/local.
Date User Action Args
2022-04-11 14:57:29adminsetgithub: 58773
2019-04-26 09:17:15michael-osetmessages: + msg340898
2018-08-27 13:49:38michael-osetnosy: + michael-o

messages: + msg324180
versions: + Python 3.6, Python 3.7, Python 3.8
2018-08-20 09:25:03michael-osetstage: patch review
pull_requests: + pull_request8308
2012-04-13 01:38:53adiroibansetmessages: + msg158191
2012-04-12 21:27:14vstinnersetnosy: + neologix
2012-04-12 21:24:04adiroibancreate