equinor / segyio

Fast Python library for SEGY files.
Other
484 stars 216 forks source link

Why is there no .libs in the whl file I built with this command? #420

Closed wangweiwei104 closed 5 years ago

wangweiwei104 commented 5 years ago

Why is there no .libs in the whl file I built with this command? xx@xx-PC:~/Documents/segyio-new/python$ python3 setup.py bdist_wheel

jokva commented 5 years ago

Why should it be? The .libs dir is populated by tools like auditwheel and delocate.

wangweiwei104 commented 5 years ago

@jokva Thank you for your reply. I am a novice. But when I use this command 'auditwheel repair XX.whl', I am prompted with this error: `wangwei@wangwei-PC:~/Documents/segyio-new/python/dist$ auditwheel repair segyio-0.0.0-cp36-cp36m-linux_x86_64.whl

INFO:auditwheel.main_repair:Repairing segyio-0.0.0-cp36-cp36m-linux_x86_64.whl usage: auditwheel [-h] [-V] [-v] command ... auditwheel: error: cannot repair "segyio-0.0.0-cp36-cp36m-linux_x86_64.whl" to "manylinux1_x86_64" ABI because of the presence of too-recent versioned symbols. You'll need to compile the wheel on an older toolchain. `

jokva commented 5 years ago

You're not inside a manylinux1-compatible environment. What are you trying to accomplish, exactly, can't you use the wheels from pypi?

wangweiwei104 commented 5 years ago

You're not inside a manylinux1-compatible environment. What are you trying to accomplish, exactly, can't you use the wheels from pypi?

I changed some code in segyio.cpp

jokva commented 5 years ago

And you need to redistribute it as a wheel?

First and foremost, make sure whoever you give the wheel to also get access to your modifications, to comply with the LGPL licence.

Then, you need to understand how to build manylinux wheels. The documentation for manylinux is reasonably good. https://github.com/pypa/manylinux

wangweiwei104 commented 5 years ago

And you need to redistribute it as a wheel?

First and foremost, make sure whoever you give the wheel to also get access to your modifications, to comply with the LGPL licence.

Then, you need to understand how to build manylinux wheels. The documentation for manylinux is reasonably good. https://github.com/pypa/manylinux

I do this to learn how to build what and use it in an Anaconda environment

jokva commented 5 years ago

Fair enough, but you don't necessarily need a manylinux wheel for that. If you set a different tag, the platform requirement goes away. You can also build an anaconda package instead of the wheel.

Regardless, this is not a segyio issue anymore. I'm sure you'll figure this out in no time, best of luck!