RBVI / ChimeraX

Source code for molecular graphics program UCSF ChimeraX
https://www.rbvi.ucsf.edu/chimerax/
Other
151 stars 29 forks source link

Compiling error: Failed building wheel for ihm, ParmEd #35

Closed RodenLuo closed 10 months ago

RodenLuo commented 10 months ago

Hi,

OS: Windows 10, cygcheck (cygwin) 3.4.9 Commit: 28be708 (the current latest)

I am following https://www.cgl.ucsf.edu/chimerax/docs/devel/building.html#linux-build. make install runs for some time and then gives me the following errors. Could you please kindly advise? Thanks.

Building wheels for collected packages: ihm, msgpack, ParmEd, pycollada
  error: subprocess-exited-with-error

  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> See above for output.

  note: This error originates from a subprocess, and is likely not a problem with pip.
  Building wheel for ihm (setup.py) ... error
  ERROR: Failed building wheel for ihm
  Running setup.py clean for ihm
  Building wheel for msgpack (pyproject.toml) ... done
  Created wheel for msgpack: filename=msgpack-1.0.4-cp311-cp311-win_amd64.whl size=15572 sha256=788fe950d575
ff8d4d24eb6b36323d9963fe351049ce02b70091b6dd09180e1b
  Stored in directory: c:\users\luod\appdata\local\pip\cache\wheels\55\e6\d3\5defbcadbaa60a8bc20e1d233aa5294
1a1fbe2707b11f9066d
  error: subprocess-exited-with-error

  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> See above for output.

  note: This error originates from a subprocess, and is likely not a problem with pip.
  Building wheel for ParmEd (setup.py) ... error
  ERROR: Failed building wheel for ParmEd
  Running setup.py clean for ParmEd
  Building wheel for pycollada (setup.py) ... done
  Created wheel for pycollada: filename=pycollada-0.7.2-py3-none-any.whl size=127037 sha256=f62dd618c468797e
cc9c8f0f42a32f2ed8b8d0a9ee849f23de04a927259aa030
  Stored in directory: c:\users\luod\appdata\local\pip\cache\wheels\07\31\f9\395db362d2ceb6314508ed934261131
31978eaca551cb359eb
Successfully built msgpack pycollada
Failed to build ihm ParmEd
Installing collected packages: wcwidth, sortedcontainers, snowballstemmer, pywin32, pytz, py-cpuinfo, pure-e
val, pickleshare, ParmEd, msgpack, ipython-genutils, comtypes, backcall, appdirs, WMI, widgetsnbextension, w
heel-filename, webcolors, urllib3, tzdata, typing-extensions, traitlets, tornado, tomli, sphinxcontrib-jsmat
h, soupsieve, six, pyzmq, pyproject_hooks, pyparsing, Pygments, pydicom, psutil, prompt-toolkit, platformdir
s, pkginfo, Pillow, pep517, parso, packaging, openvr, numpy, networkx, nest-asyncio, MarkupSafe, lz4, lxml,
line_profiler, kiwisolver, jupyterlab-widgets, imagesize, ihm, idna, html2text, funcparserlib, fonttools, fi
lelock, executing, docutils, decorator, debugpy, Cython, cycler, colorama, charset-normalizer, certifi, blos
c2, babel, alabaster, tifffile, scipy, requests, qtpy, python-dateutil, numexpr, nptyping, nibabel, matplotl
ib-inline, jupyter-core, Jinja2, jedi, imagecodecs, contourpy, comm, cftime, build, blockdiag, beautifulsoup
4, asttokens, tables, superqt, stack-data, pynrrd, pycollada, pandas, netCDF4, matplotlib, jupyter-client, i
python, ipywidgets, ipykernel, tcia_utils, qtconsole, sphinxcontrib-serializinghtml, sphinxcontrib-qthelp, s
phinxcontrib-htmlhelp, sphinxcontrib-devhelp, sphinxcontrib-applehelp, Sphinx, sphinxcontrib-blockdiag, sphi
nx_autodoc_typehints
  error: subprocess-exited-with-error

  × Running setup.py install for ParmEd did not run successfully.
  │ exit code: 1
  ╰─> See above for output.

  note: This error originates from a subprocess, and is likely not a problem with pip.
  Running setup.py install for ParmEd ... error
error: legacy-install-failure

× Encountered error while trying to install package.
╰─> ParmEd

note: This is an issue with the package mentioned above, not pip.
hint: See above for output from the failure.

[notice] A new release of pip is available: 23.0 -> 23.3.1
[notice] To update, run: D:\ChimeraX-dev\ChimeraX.app\bin\python.exe -m pip install --upgrade pip
make[2]: *** [Makefile:87: app-install] Error 1
make[2]: Leaving directory '/cygdrive/d/ChimeraX-dev/prereqs/pips'
make[1]: *** [Makefile:146: pips.app-install] Error 2
make[1]: Leaving directory '/cygdrive/d/ChimeraX-dev/prereqs'
make: *** [Makefile:34: install] Error 2
tomgoddard commented 10 months ago

This very likely means you don't have the Microsoft compiler version ChimeraX defines in vsvars.sh. That file contains a few highly specific version numbers for the Microsoft runtime and it doesn't issue any error message if those are not found, which is pretty horrible, because then compilations all just fail later on. Unfortunately we have not made the effort to make it easy to build ChimeraX on Windows. It will work with any Microsoft compiler runtime if you adjust vsvars.sh. But I strongly suggest you don't build it from scratch unless you have a very good reason, have experience building C++ and Python programs that have dozens of dependencies, and have a week of spare time to kill.

I see in issue #36 you just wanted to run a debugger on fit_search.py Python code and you certainly should not build from scratch for that. Just use a daily build or the release build.

I'll put a comment in the Windows build instructions about the vsvars.sh compiler runtime version problem.