DLL not found when try to import package generated.
hzhangxyz opened this issue · comments
I try to use delvewheel to embed dll into my python package, but the result package cannot be imported.
The generated folder is like this:
├── PyTAT-0.2.7.post2+gd04c114.data
│ └── platlib
│ ├── concrt140.dll
│ ├── libopenblas-506beabb.dll
│ └── msvcp140.dll
└── TAT.cp310-win_amd64.pyd
When I try to import the package, it says: Library libopenblas-506beabb.dll not found
What happened? If I simply move the libopenblas-xxx.dll to the current folder manually, it works.
Is there something like rpath set wrong?
delvewheel version: delvewheel-0.0.20
I call delvewheel by: python -m delvewheel repair --wheel-dir {dest_dir} {wheel} --add-path bin
log:
repairing C:\Users\RUNNER~1\AppData\Local\Temp\cibuildwheelrhvnubge\built_wheel\PyTAT-0.2.7.post2+gd04c114-cp310-cp310-win_amd64.whl
finding DLL dependencies
copying DLLs into PyTAT-0.2.7.post2+gd04c114.data\platlib
mangling DLL names
calculating DLL load order
updating PyTAT-0.2.7.post2+gd04c114.dist-info\RECORD
repackaging wheel
fixed wheel written to C:\Users\RUNNER~1\AppData\Local\Temp\cibuildwheelrhvnubge\repaired_wheel\PyTAT-0.2.7.post2+gd04c114-cp310-cp310-win_amd64.whl
I run the above in github action, action run url: https://github.com/hzhangxyz/TAT/runs/5691145045
Did you figure out what the problem was?
Did you figure out what the problem was?
When I create this issue, I manually unzip the wheel file and try to import. then the error occurs.
Later, I just pip install the wheel, then no error will be reported.
I thought every thing will be the same between the above two operation, but I am wrong.