scitools / mo_pack Goto Github PK
View Code? Open in Web Editor NEWPython wrapper to libmo_unpack
License: BSD 3-Clause "New" or "Revised" License
Python wrapper to libmo_unpack
License: BSD 3-Clause "New" or "Revised" License
I've just tried to install mo_pack with python setup.py build
. It fails due to logerrors.h missing:
gcc -I/usr/lib/python3.8/site-packages/numpy/core/include -I/usr/include/python3.8 -c lib/mo_pack/_packing.c -o build/temp.linux-x86_64-3.8/lib/mo_pack/_packing.o
In file included from /usr/lib/python3.8/site-packages/numpy/core/include/numpy/ndarraytypes.h:1832,
from /usr/lib/python3.8/site-packages/numpy/core/include/numpy/ndarrayobject.h:12,
from /usr/lib/python3.8/site-packages/numpy/core/include/numpy/arrayobject.h:4,
from lib/mo_pack/_packing.c:620:
/usr/lib/python3.8/site-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:17:2: warning: #warning "Using deprecated NumPy API, disable it with " "#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp]
17 | #warning "Using deprecated NumPy API, disable it with " \
| ^~~~~~~
lib/mo_pack/_packing.c:622:10: fatal error: logerrors.h: No such file or directory
622 | #include "logerrors.h"
| ^~~~~~~~~~~~~
compilation terminated.
error: command 'gcc' failed with exit status 1
mo_pack is the only package in my dependency tree that doesn't support python 3.12 yet. It would be great to have support :)
I'm using Python 3.10 and Cython 0.29.36:
src/mo_pack/_packing.c: In function '__pyx_pf_7mo_pack_8_packing_decompress_rle':
src/mo_pack/_packing.c:2380:73: error: 'PyArrayObject' {aka 'struct tagPyArrayObject'} has no member named 'data'
2380 | __pyx_v_ret_code = runlen_decode(((float *)__pyx_v_unpacked_data->data), (__pyx_v_nrows * __pyx_v_ncols), ((float *)__pyx_v_packed_data->data), (__pyx_v_packed_data->dimensions[0]), __pyx_v_missing_data_indicator, ((function *)Py_None));
| ^~
src/mo_pack/_packing.c:2380:144: error: 'PyArrayObject' {aka 'struct tagPyArrayObject'} has no member named 'data'
2380 | __pyx_v_ret_code = runlen_decode(((float *)__pyx_v_unpacked_data->data), (__pyx_v_nrows * __pyx_v_ncols), ((float *)__pyx_v_packed_data->data), (__pyx_v_packed_data->dimensions[0]), __pyx_v_missing_data_indicator, ((function *)Py_None));
| ^~
src/mo_pack/_packing.c:2380:173: error: 'PyArrayObject' {aka 'struct tagPyArrayObject'} has no member named 'dimensions'
2380 | __pyx_v_ret_code = runlen_decode(((float *)__pyx_v_unpacked_data->data), (__pyx_v_nrows * __pyx_v_ncols), ((float *)__pyx_v_packed_data->data), (__pyx_v_packed_data->dimensions[0]), __pyx_v_missing_data_indicator, ((function *)Py_None));
| ^~
src/mo_pack/_packing.c: In function '__pyx_pf_7mo_pack_8_packing_2decompress_wgdos':
src/mo_pack/_packing.c:2783:60: error: 'PyArrayObject' {aka 'struct tagPyArrayObject'} has no member named 'data'
2783 | __pyx_v_ret_code = wgdos_unpack(__pyx_v_packed_data->data, (__pyx_v_nrows * __pyx_v_ncols), ((float *)__pyx_v_unpacked_data->data), __pyx_v_missing_data_indicator, ((function *)Py_None));
| ^~
src/mo_pack/_packing.c:2783:132: error: 'PyArrayObject' {aka 'struct tagPyArrayObject'} has no member named 'data'
2783 | __pyx_v_ret_code = wgdos_unpack(__pyx_v_packed_data->data, (__pyx_v_nrows * __pyx_v_ncols), ((float *)__pyx_v_unpacked_data->data), __pyx_v_missing_data_indicator, ((function *)Py_None));
| ^~
src/mo_pack/_packing.c: In function '__pyx_pf_7mo_pack_8_packing_4compress_rle':
src/mo_pack/_packing.c:3044:37: error: 'PyArrayObject' {aka 'struct tagPyArrayObject'} has no member named 'dimensions'
3044 | __pyx_t_1 = (__pyx_v_unpacked_data->dimensions[0]);
| ^~
src/mo_pack/_packing.c:3045:37: error: 'PyArrayObject' {aka 'struct tagPyArrayObject'} has no member named 'dimensions'
3045 | __pyx_t_2 = (__pyx_v_unpacked_data->dimensions[1]);
| ^~
src/mo_pack/_packing.c:3149:73: error: 'PyArrayObject' {aka 'struct tagPyArrayObject'} has no member named 'data'
3149 | __pyx_v_ret_code = runlen_encode(((float *)__pyx_v_unpacked_data->data), __pyx_v_n_values, ((float *)__pyx_v_packed_data->data), (&__pyx_v_length), __pyx_v_missing_data_indicator, ((function *)Py_None));
| ^~
src/mo_pack/_packing.c:3149:129: error: 'PyArrayObject' {aka 'struct tagPyArrayObject'} has no member named 'data'
3149 | __pyx_v_ret_code = runlen_encode(((float *)__pyx_v_unpacked_data->data), __pyx_v_n_values, ((float *)__pyx_v_packed_data->data), (&__pyx_v_length), __pyx_v_missing_data_indicator, ((function *)Py_None));
| ^~
src/mo_pack/_packing.c: In function '__pyx_pf_7mo_pack_8_packing_6compress_wgdos':
src/mo_pack/_packing.c:3487:37: error: 'PyArrayObject' {aka 'struct tagPyArrayObject'} has no member named 'dimensions'
3487 | __pyx_t_1 = (__pyx_v_unpacked_data->dimensions[0]);
| ^~
src/mo_pack/_packing.c:3488:37: error: 'PyArrayObject' {aka 'struct tagPyArrayObject'} has no member named 'dimensions'
3488 | __pyx_t_2 = (__pyx_v_unpacked_data->dimensions[1]);
| ^~
src/mo_pack/_packing.c:3609:94: error: 'PyArrayObject' {aka 'struct tagPyArrayObject'} has no member named 'data'
3609 | __pyx_v_ret_code = wgdos_pack(__pyx_v_d0, __pyx_v_d1, ((float *)__pyx_v_unpacked_data->data), __pyx_v_missing_data_indicator, __pyx_v_accuracy, ((unsigned char *)__pyx_v_packed_data->data), (&__pyx_v_length), ((function *)Py_None));
| ^~
src/mo_pack/_packing.c:3609:190: error: 'PyArrayObject' {aka 'struct tagPyArrayObject'} has no member named 'data'
3609 | __pyx_v_ret_code = wgdos_pack(__pyx_v_d0, __pyx_v_d1, ((float *)__pyx_v_unpacked_data->data), __pyx_v_missing_data_indicator, __pyx_v_accuracy, ((unsigned char *)__pyx_v_packed_data->data), (&__pyx_v_length), ((function *)Py_None));
| ^~
Well, where to start...
mo-pack
does need a wee bit of love to breath some life back into it e.g.,
master
to main
travis-ci
sdist
and binary wheels
py>=3.8
I noticed there is no build for arm64 on conda-forge for Macs with Apple Silicon. I managed to build libmo_unpack and mo_pack from source successfully on an M1 Macbook Pro, but it would be nice if a build could be added to conda-forge.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.