Comments (6)
I have no personal experience with PyInstaller but is it possible it somehow forgot to package the compiled dll for kiwi ? That's how I read error message.
You should have both a _cext.pyi and a .pyd in your install, PyInstaller may have packaged only the .pyi.
from kiwi.
As far as my expertise goes in this regard, it seems to be the other way around: only the pyd (_cext.cp311-win_amd64.pyd) is present.
I'm not entirely sure what to try next and if this is even the problem of kiwisolver or perhaps of PyInstaller instead. This paragraph on the pyinstaller wiki may be related: https://pyinstaller.org/en/v5.13.2/when-things-go-wrong.html#listing-hidden-imports. It seems that, generally, pyinstaller leaves it up to other packages to contribute their own hooks so that packages can be frozen properly, but this could also be an issue on their end.
from kiwi.
Kiwi has no hidden imports. Could you post the content of the kiwi package in the install created by PyInstaller ?
from kiwi.
Just to clarify: I cannot completely view the results of builds as I run PyInstaller with --onefile, which creates a single self-contained exectuable. My findings about the package contents regard those when I use PyInstaller without the --onefile option.
That being said, the installed package contains a kiwisolver folder with inside it only the file "_cext.cp311-win_amd64.pyd".
Another perhaps useful thing me and a colleague discovered in the meantime is the following: when I place msvcp140.dll next to my executable, it does run fine. This suggests that that dll is not properly included when freezing my project with PyInstaller.
from kiwi.
This is weird on several level:
- to run you need the exceptions.py file from which some things are imported by _cext
- you also need
__init__.py
since typically users are not expected to use functionalities beyond this - when building the installer you can set the env var KIWI_DISABLE_FH4 to avoid linking against VCRUNTIME140_1.dll (I mention it since you have a windows dll issue even though it does not seem related to this exact dll).
from kiwi.
I'm not really sure how to proceed with this. My personal runtime problem is solved by manually including the msvcp140.dll in the PyInstaller build, but I do not think that is a satisfying solution for this situation.
The way I see it now the desired solution would be either of the following:
- PyInstaller needs to solve the issue that it is not packing all required DLLs
- Kiwisolver needs to add a PyInstaller hook (see also https://github.com/pyinstaller/pyinstaller-hooks-contrib)
But maybe I'm overlooking something, let me know what you think.
Anyway, I really appreciate your help so far :)
from kiwi.
Related Issues (20)
- Failed building wheel for kiwisolver :( HOT 4
- Cann't install on python 3.11b3 HOT 2
- 1.4.3 has no attribute __version__ HOT 2
- ERROR: Failed building wheel for kiwisolver: C2440: 'static_cast': cannot convert from 'expr_type' to 'type' HOT 2
- Provide cp311 releases HOT 1
- Objective cell memory leak? HOT 26
- Continuous fuzzing by way of Google's OSS-Fuzz HOT 1
- Tests fail on pypy
- #egg=kiwisolver See assertion error when installing kiwisolver HOT 4
- about duplicate constraints HOT 3
- Add Python API to get all constraints HOT 14
- Is it possible to get the absolute value of an expression? HOT 10
- Is it possible to tell the Solver to prefer smaller or larger solutions? HOT 3
- Missing type hint for `Constraint.violated()` HOT 1
- Python 3.12 manylinux wheels HOT 2
- `top_level.txt` include a non existing module `src`
- DLL load failed while importing _cext HOT 2
- How do we define an "objective function" and maximize or minimize it? HOT 1
- On Windows 10 LTSC, import kiwisolver (and/or import matplotlib) fails with DLL _cext even after installing VS runtime (solution incl) HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from kiwi.