amoeba commented on PR #35323:
URL: https://github.com/apache/arrow/pull/35323#issuecomment-2568485712
I did a quick test of the wheels crossbow has built here and this seems to
fix the issue.
From reading the related issues, the only package I identified that ships
`msvcp140.dll` was pyopenms==3.2.0 though I'm sure there are more. Other
packages (pandas, numpy) ship renamed versions. pyopenms has since shipped a
newer package release (3.2.0-1) which fixes the issue.
On Windows 11, (x86_64), I did the following to reproduce the issue:
- Installed Python 3.12 (pyopenms doesn't have 3.13 wheels) with `winget
install Python.Python.3.12`
- Installed pyarrow (18.1.0) and pyopenms==3.2.0 using pip
- Ran the following:
```
PS C:\Users\Bryce> python
Python 3.12.8 (tags/v3.12.8:2dc476b, Dec 3 2024, 19:30:04) [MSC v.1942
64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import pyarrow
>>> import pyopenms
======================================================================
Error when loading pyOpenMS libraries!
Libraries could not be found / could not be loaded.
To debug this error, please run ldd (on linux), otool -L (on macOS) or
dependency walker (on windows) on
C:\Users\Bryce\AppData\Local\Programs\Python\Python312\Lib\site-packages\pyopenms\pyopenms*.so
======================================================================
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File
"C:\Users\Bryce\AppData\Local\Programs\Python\Python312\Lib\site-packages\pyopenms\__init__.py",
line 109, in <module>
raise e
File
"C:\Users\Bryce\AppData\Local\Programs\Python\Python312\Lib\site-packages\pyopenms\__init__.py",
line 67, in <module>
from ._all_modules import * # pylint: disable=wildcard-import;
lgtm(py/polluting-import)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File
"C:\Users\Bryce\AppData\Local\Programs\Python\Python312\Lib\site-packages\pyopenms\_all_modules.py",
line 1, in <module>
from ._pyopenms_1 import * # pylint: disable=wildcard-import;
lgtm(py/polluting-import)
^^^^^^^^^^^^^^^^^^^^^^^^^^
ImportError: DLL load failed while importing _pyopenms_1: A dynamic link
library (DLL) initialization routine failed.
```
On the same system, I did the following to fix the issue:
- Kept my Python 3.12 install as-is
- Uninstalled pyarrow
- Installed pyarrow from
https://github.com/ursacomputing/crossbow/actions/runs/12585968702/artifacts/2379754483
(pyarrow-19.0.0.dev261-cp312-cp312-win_amd64.whl, MD5
eb6d57717f756bfd1f5d92f781c30d0b)
- Ran the following:
```
PS C:\Users\Bryce\Downloads\wheel> pip install
.\pyarrow-19.0.0.dev261-cp312-cp312-win_amd64.whl
Processing
c:\users\bryce\downloads\wheel\pyarrow-19.0.0.dev261-cp312-cp312-win_amd64.whl
Installing collected packages: pyarrow
Successfully installed pyarrow-19.0.0.dev261
PS C:\Users\Bryce\Downloads\wheel> import ^C
PS C:\Users\Bryce\Downloads\wheel> python
Python 3.12.8 (tags/v3.12.8:2dc476b, Dec 3 2024, 19:30:04) [MSC v.1942
64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import pyarrow
>>> import pyopenms
```
I'll note the system I tested on does have a system-wide copy of
`msvcp140.dll` but its presence didn't seem to affect anything here which makes
sense (I think...).
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]