<p>It looks like the documentation is wrong. At least, I don't see those options mentioned anywhere in <a href="https://github.com/schrodinger/pymol-open-source/blob/03d7a7fcf0bd95cd93d710a1268dbace2ed77765/setup.py" rel="nofollow noreferrer"><code>setup.py</code></a> and after <code>git clone https://github.com/schrodinger/pymol-open-source</code>, there are no hits for <code>help-distutils</code> anywhere except from the <code>INSTALL</code> file itself:</p>
<pre><code>$ grep -R help-distutils pymol-open-source/
pymol-open-source/INSTALL:    python setup.py --help-distutils
pymol-open-source/INSTALL:    python setup.py --help-distutils install
</code></pre>
<p>The option used to be there, in the previous release. If you look at the <code>setup.py</code> from version 2.5.0 (<a href="https://github.com/schrodinger/pymol-open-source/blob/v2.5.0/setup.py" rel="nofollow noreferrer">https://github.com/schrodinger/pymol-open-source/blob/v2.5.0/setup.py</a>), you can see the <code>--help-distutils</code> option was there:</p>
<pre><code>    parser.add_argument('--help-distutils', action=&quot;store_true&quot;,
            help=&quot;show help for distutils options and exit&quot;)
</code></pre>
<p>So it is simply a bug: they have changed the code but forgot to update the documentation. I suggest you report it to the developers so they can fix it.</p>

CC BY-SA 4.0
2024-07-15T12:38:45.117Z
mmhhh wondering why 'setup.py --help-commands' works, its not in argparser option too but works
pippo1980
CC BY-SA 4.0
2024-07-15T13:30:47.467Z
@pippo1980 presumably that's part of one of the libraries loaded by the tool. Perhaps `setuptools`, but this (delving deep into the code of some program) really is beyond the scope of the site. You can try asking the developers instead.
terdon
CC BY-SA 4.0
2024-07-15T14:10:19.257Z
yep, was just trying to make my mind clear,  setup.py 2.5 is for "This script only applies if you are performing a Python Distutils-based installation of PyMOL"; while master : "This script only applies if you are performing a Python setuptools-based installation of PyMOL". I believe distutils was deprecated in 2021 https://peps.python.org/pep-0632/. Sorry for clogging the comments, it is  for self reference. Guess options, sys.argv[1:] = parser.parse_known_args(namespace=options) is what does the trick ... but not an expert in sys.argv
pippo1980
CC BY-SA 4.0
2024-07-14T19:20:39.477Z
2024-07-14T19:20:39.477Z
terdon
<p>Hi I am playing a little bit with <a href="https://github.com/schrodinger/pymol-open-source" rel="nofollow noreferrer"> schrodinger /
pymol-open-source </a></p>
<p>Trying to figure out how : <code>python setup.py install</code> works I found documentation in</p>
<p><a href="https://github.com/schrodinger/pymol-open-source/blob/03d7a7fcf0bd95cd93d710a1268dbace2ed77765/INSTALL#L31" rel="nofollow noreferrer">    pymol-open-source/INSTALL</a> :</p>
<pre><code> SETUP OPTIONS

    python setup.py --help
    python setup.py --help-distutils
    python setup.py --help-distutils install

    Special install options:
      --pymol-path=       installation directory for PyMOL data ($PYMOL_PATH)
      --no-launcher       skip installation of the pymol launcher
</code></pre>
<p>While <code>python setup.py --help</code> works</p>
<p>python <code>setup.py --help-distutils</code> and <code>python setup.py --help-distutils install</code> dont.</p>
<p>I can build/install it passing:</p>
<p><code>python setup.py install --prefix=... --install-lib=... --install-scripts=...</code></p>
<p>like description in <a href="https://pymolwiki.org/index.php/User:Tlinnet/Linux_Install" rel="nofollow noreferrer">User:Tlinnet/Linux Install</a></p>
<p>bu why the help options don't work ?</p>
<p>I am new to Python setuptools etc , please bear with me</p>
<p><strong>ADDENDUM</strong></p>
<p>pip install works too</p>
<p>crossposted to <a href="https://stackoverflow.com/questions/78744476/opensource-pymol-compiling-install-issue">stackoverflowopensource-pymol-compiling-install-issue</a></p>

<python><pymol>
opensource PyMOL compiling-install issue
# opensource PyMOL compiling-install issue

(Asked by: username_0 on 2024-07-13)

Hi I am playing a little bit with  schrodinger /
pymol-open-source 
Trying to figure out how : python setup.py install works I found documentation in
    pymol-open-source/INSTALL :
 SETUP OPTIONS

    python setup.py --help
    python setup.py --help-distutils
    python setup.py --help-distutils install

    Special install options:
      --pymol-path=       installation directory for PyMOL data ($PYMOL_PATH)
      --no-launcher       skip installation of the pymol launcher

While python setup.py --help works
python setup.py --help-distutils and python setup.py --help-distutils install dont.
I can build/install it passing:
python setup.py install --prefix=... --install-lib=... --install-scripts=...
like description in User:Tlinnet/Linux Install
bu why the help options don't work ?
I am new to Python setuptools etc , please bear with me
ADDENDUM
pip install works too
crossposted to stackoverflowopensource-pymol-compiling-install-issue

**Tags:** python, pymol

---

## 1 answers

### Answer by username_1 on 2024-07-14. Score: 2 | Accepted answer

It looks like the documentation is wrong. At least, I don't see those options mentioned anywhere in setup.py and after git clone https://github.com/schrodinger/pymol-open-source, there are no hits for help-distutils anywhere except from the INSTALL file itself:
$ grep -R help-distutils pymol-open-source/
pymol-open-source/INSTALL:    python setup.py --help-distutils
pymol-open-source/INSTALL:    python setup.py --help-distutils install

The option used to be there, in the previous release. If you look at the setup.py from version 2.5.0 (https://github.com/schrodinger/pymol-open-source/blob/v2.5.0/setup.py), you can see the --help-distutils option was there:
    parser.add_argument('--help-distutils', action="store_true",
            help="show help for distutils options and exit")

So it is simply a bug: they have changed the code but forgot to update the documentation. I suggest you report it to the developers so they can fix it.

> **Comments:**
> **username_0**: mmhhh wondering why 'setup.py --help-commands' works, its not in argparser option too but works  
> **username_1**: @pippo1980 presumably that's part of one of the libraries loaded by the tool. Perhaps `setuptools`, but this (delving deep into the code of some program) really is beyond the scope of the site. You can try asking the developers instead.  
> **username_0**: yep, was just trying to make my mind clear,  setup.py 2.5 is for "This script only applies if you are performing a Python Distutils-based installation of PyMOL"; while master : "This script only applies if you are performing a Python setuptools-based installation of PyMOL". I believe distutils was deprecated in 2021 https://peps.python.org/pep-0632/. Sorry for clogging the comments, it is  for self reference. Guess options, sys.argv[1:] = parser.parse_known_args(namespace=options) is what does the trick ... but not an expert in sys.argv  

---

