Open jontis opened 1 week ago
Please test with cx_Freeze 7.1.1 I have tested some samples of pandas, scikit-learn, using a newer version, and they have worked. For instance, I have tested, using scikit-learn 1.5.0 and an example from sklearn auto_examples_python/bicluster, used bdist_appimage and it works.
Tested with cx_freeze 7.1.1 from conda. Same problem. It says very early in the process: sys.platform: linux running bdist_appimage /home/jonathan/.local/bin/appimagetool --version running build_exe patchelf --version returns: 'patchelf 0.17.2\n' WARNING: cannot find 'libcrypt.so.2'
I've checked and while libcrypt.so.2 is present in several other env, it is not in this env. Missing dependancy for packaging?
I solved that error by: mamba install libxcrypt this provided libcrypt.so.2
Now on to next error.
File "/home/jonathan/mambaforge/envs/brainwash/lib/python3.10/site-packages/scipy/linalg/blas.py", line 213, in
This file is already present in env: $ locate libcblas.so.3 /home/jonathan/mambaforge/envs/brainwash/lib/libcblas.so.3
And the only mention of it in the build log is: $ cat cxlog.txt | grep libcblas patchelf --replace-needed libcblas.so.3 libopenblasp-r0.3.24.so /home/jonathan/code/brainwash/src/build/exe.linux-x86_64-3.10/lib/numpy/core/_multiarray_umath.cpython-310-x86_64-linux-gnu.so returns: ''
Try to upgrade numpy cx_Freeze have a sample: https://github.com/marcelotduarte/cx_Freeze/tree/main/samples/pandas I tested it with numpy 1.26.4 and pandas 2.2.2 and works. You can use it to test your environment.
Tried but no change. It may be scipy that is the problem, and it seems to work for cx_freeze 6.16
Error message:
File "/home/jonathan/mambaforge/envs/brainwash/lib/python3.10/site-packages/scipy/linalg/blas.py", line 213, in
Triggered by: from scipy.signal import savgol_filter, find_peaks
Tried also bumping scipy to latest 1.13.1 but the error remains unchanged.
Checked for differences in blas in both functioning cxfreeze 6.16 and non functioning cxfreeze 7.1.1 system but they are the same: libblas 3.9.0 19_linux64_openblas conda-forge libcblas 3.9.0 19_linux64_openblas conda-forge liblapack 3.9.0 19_linux64_openblas conda-forge libopenblas 0.3.24 pthreads_h413a1c8_0 conda-forge
Few questions: 1) The pandas sample works in your side? 2) How you have installed numpy? 3) Can you test using: 3.1) conda install "libblas==mkl" numpy or 3.2) conda install "libblas==openblas" numpy 4) You can indicate a sample/example of code using scipy to test on my side?
Tried also bumping scipy to latest 1.13.1 but the error remains unchanged.
In your first comment of this thread, you do not listed the scipy version. Checking the sources, the lasted tested version is 1.11.2. Can you test with it? I'll try find a example to test the latest version.
Ok, results of the tests:
3.1 for me is not working too w/ the pandas sample. In the docs for scipy signal: https://docs.scipy.org/doc/scipy/reference/generated/scipy.signal.correlate.html#scipy.signal.correlate I get a example to test scipy 1.11.2 and scipy 1.13.1 fails I'll work on this.
We tried to compile this example with the cxfreeze 6.16 dev and it seems to work fine.
We have a scientific app based on QT and the scipy stack, compiling with cx_freeze for linux and windows targets. It worked fine with dev version cx_freeze 6.16 that was available during 2023 december. trying to compile now with another system with cx_freeze 7.1, it fails. We have compared the environments and believe that the only difference is versi5on of cx_freeze but can absolutely have missed something. We don't dare to mess with the only functioning build system we have now. The main packages are:
We build with:
python setup.py bdist_appimage > cxlog.txt
setup.py:
The error when trying to run appimage built by cx_freeze 7.1 is:
$ dist/brainwash-0.9.0-x86_64.AppImage
/tmp/.mount_brainwHL6FMz/main: error while loading shared libraries: libcrypt.so.2: cannot open shared object file: No such file or directory