termux / termux-packages

A package build system for Termux.
https://termux.dev
Other
13.19k stars 3.02k forks source link

Anyone managed to install python numba ? #845

Open metorm opened 7 years ago

metorm commented 7 years ago

I am trying to install [numba]() in termux for python. However,as pip compiles it, there is an error says

"LLVMgold.so not found"

On my PC, LLVMgold.so belongs to llvm-dev, but on termux there is only libllvm-dev, and it seems do not provide LLVMgold.so

Is there any workaround?

its-pointless commented 7 years ago

I gave it a try today. Binutils with gold and llvm with LLVMgold.so. unfortunately llvmlite have not updated to llvm-4.0 so i couldn't build that dependency. When they use 4.0 i can build a working version.

jrh20001 commented 6 years ago

Any luck on building LLVMgold.so to enable numba installation? Thx

its-pointless commented 6 years ago

No sorry. might have another look. But it probably needs someone with better knowlege of llvm than me.

jrh20001 commented 6 years ago

I made an attempt to build llvmgold using termux-exec and git clone --depth 1 git://sourceware.org/git/binutils-gdb.git binutils but I get an error unable to write to /tmp directory because I don't have root permission on my Android pad.

its-pointless commented 6 years ago

Oh iv got binutils ld.gold available on my repo and i rebuilt llvm so as to have LLVMgold.so plugin so i can compile llvmlite it just doesn't work. Doesn't pass unit tests and numba doesn;t work their

its-pointless commented 6 years ago

Anyway error where im at ..s................s........Fatal Python error: Segmentation fault

Current thread 0x0000007f84a0fa98 (most recent call first): File "/data/data/com.termux/files/home/llvmlite-0.21.0/llvmlite/binding/executionengine.py", line 95 in finalize_object File "/data/data/com.termux/files/home/llvmlite-0.21.0/llvmlite/tests/test_binding.py", line 484 in get_sum File "/data/data/com.termux/files/home/llvmlite-0.21.0/llvmlite/tests/test_binding.py", line 635 in test_object_cache_getbuffer File "/data/data/com.termux/files/usr/lib/python3.6/unittest/case.py", line 605 in run File "/data/data/com.termux/files/usr/lib/python3.6/unittest/case.py", line 653 in call File "/data/data/com.termux/files/usr/lib/python3.6/unittest/suite.py", line 122 in run File "/data/data/com.termux/files/usr/lib/python3.6/unittest/suite.py", line 84 in call File "/data/data/com.termux/files/usr/lib/python3.6/unittest/suite.py", line 122 in run File "/data/data/com.termux/files/usr/lib/python3.6/unittest/suite.py", line 84 in call File "/data/data/com.termux/files/usr/lib/python3.6/unittest/suite.py", line 122 in run File "/data/data/com.termux/files/usr/lib/python3.6/unittest/suite.py", line 84 in call File "/data/data/com.termux/files/usr/lib/python3.6/unittest/runner.py", line 176 in run File "/data/data/com.termux/files/usr/lib/python3.6/unittest/main.py", line 256 in runTests File "/data/data/com.termux/files/home/llvmlite-0.21.0/llvmlite/tests/customize.py", line 98 in run_tests_real File "/data/data/com.termux/files/home/llvmlite-0.21.0/llvmlite/tests/customize.py", line 113 in runTests File "/data/data/com.termux/files/usr/lib/python3.6/unittest/main.py", line 95 in init File "/data/data/com.termux/files/home/llvmlite-0.21.0/llvmlite/tests/customize.py", line 39 in init File "/data/data/com.termux/files/home/llvmlite-0.21.0/llvmlite/tests/init.py", line 54 in run_tests File "/data/data/com.termux/files/home/llvmlite-0.21.0/llvmlite/tests/init.py", line 59 in main File "./runtests.py", line 9 in [2] 15221 segmentation fault ./runtests.py

jrh20001 commented 6 years ago

Ok that's further than I got. Wonder if you could compile using llvm-dev insteal of llvmlite?

On Tue, Jan 9, 2018 at 8:54 PM, its-pointless notifications@github.com wrote:

Anyway error where im at ..s................s........Fatal Python error: Segmentation fault

Current thread 0x0000007f84a0fa98 (most recent call first): File "/data/data/com.termux/files/home/llvmlite-0.21.0/llvmlite/binding/executionengine.py", line 95 in finalize_object File "/data/data/com.termux/files/home/llvmlite-0.21.0/llvmlite/tests/test_binding.py", line 484 in get_sum File "/data/data/com.termux/files/home/llvmlite-0.21.0/llvmlite/tests/test_binding.py", line 635 in test_object_cache_getbuffer File "/data/data/com.termux/files/usr/lib/python3.6/unittest/case.py", line 605 in run File "/data/data/com.termux/files/usr/lib/python3.6/unittest/case.py", line 653 in call File "/data/data/com.termux/files/usr/lib/python3.6/unittest/suite.py", line 122 in run File "/data/data/com.termux/files/usr/lib/python3.6/unittest/suite.py", line 84 in call File "/data/data/com.termux/files/usr/lib/python3.6/unittest/suite.py", line 122 in run File "/data/data/com.termux/files/usr/lib/python3.6/unittest/suite.py", line 84 in call File "/data/data/com.termux/files/usr/lib/python3.6/unittest/suite.py", line 122 in run File "/data/data/com.termux/files/usr/lib/python3.6/unittest/suite.py", line 84 in call File "/data/data/com.termux/files/usr/lib/python3.6/unittest/runner.py", line 176 in run File "/data/data/com.termux/files/usr/lib/python3.6/unittest/main.py", line 256 in runTests File "/data/data/com.termux/files/home/llvmlite-0.21.0/llvmlite/tests/customize.py", line 98 in run_tests_real File "/data/data/com.termux/files/home/llvmlite-0.21.0/llvmlite/tests/customize.py", line 113 in runTests File "/data/data/com.termux/files/usr/lib/python3.6/unittest/main.py", line 95 in init File "/data/data/com.termux/files/home/llvmlite-0.21.0/llvmlite/tests/customize.py", line 39 in init File "/data/data/com.termux/files/home/llvmlite-0.21.0/llvmlite/tests/ init.py", line 54 in run_tests File "/data/data/com.termux/files/home/llvmlite-0.21.0/llvmlite/tests/ init.py", line 59 in main File "./runtests.py", line 9 in [2] 15221 segmentation fault ./runtests.py

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/termux/termux-packages/issues/845#issuecomment-356499614, or mute the thread https://github.com/notifications/unsubscribe-auth/Aho3dSLpOwbFt5tbD5xleUWsd6HKmHuGks5tJEKGgaJpZM4Mdi6B .

its-pointless commented 6 years ago

Iv actually got numba working with my libllvm pull request using master branch of llvmlite

bhree commented 6 years ago

can you show how to do installation? i'm really stuck and out of idea. thank you.

its-pointless commented 6 years ago

Its only working on x86 x86_64 unfortunately.. sorry.

On Wed., 11 Apr. 2018, 9:43 pm Brian Rahardi, notifications@github.com wrote:

can you show how to do installation? i'm really stuck and out of idea. thank you.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/termux/termux-packages/issues/845#issuecomment-380422870, or mute the thread https://github.com/notifications/unsubscribe-auth/AP-OtwloHrD0O8a8OqgAceFDrmLmEBO-ks5tnex7gaJpZM4Mdi6B .

bhree commented 6 years ago

well, at least that relieves me from getting headache installing on arm. Thank you for the answer and your repo I really appreciate it.

nathanielatom commented 5 years ago

It looks like llvmlite uses llvm 7.0 now, would that help? https://llvmlite.readthedocs.io/en/latest/admin-guide/install.html

stale[bot] commented 2 years ago

This issue/PR has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

xtkoba commented 2 years ago

See also #10399.

twaik commented 2 days ago

Old problem is gone, but there is another one.

~ $ pip install numba
Collecting numba
  Downloading numba-0.60.0.tar.gz (2.7 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.7/2.7 MB 6.2 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
  Preparing metadata (pyproject.toml) ... done
Collecting llvmlite<0.44,>=0.43.0dev0 (from numba)
  Downloading llvmlite-0.43.0.tar.gz (157 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting numpy<2.1,>=1.22 (from numba)
  Using cached numpy-2.0.2-cp312-cp312-linux_aarch64.whl
Building wheels for collected packages: numba, llvmlite
  Building wheel for numba (pyproject.toml) ... done
  Created wheel for numba: filename=numba-0.60.0-cp312-cp312-linux_aarch64.whl size=3604319 sha256=166a8227c363237c5921982f27cfb35eb327f8bf47e9b1674a1a7ad19be2e74d
  Stored in directory: /data/data/com.termux/files/home/.cache/pip/wheels/39/4a/8c/0cd2aa9b7c86737f72f1ebc13f7a45206c4e1d3686316b9568
  Building wheel for llvmlite (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for llvmlite (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [30 lines of output]
      /data/data/com.termux/files/usr/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py:251: _IncompatibleBdistWheel: wheel.bdist_wheel is deprecated, please import it from setuptools
      !!

              ********************************************************************************
              Ensure that any custom bdist_wheel implementation is a subclass of
              setuptools.command.bdist_wheel.bdist_wheel.

              By 2025-Oct-15, you need to update your project and remove deprecated calls
              or your builds will no longer be supported.

              See https://github.com/pypa/wheel/pull/631 for details.
              ********************************************************************************

      !!
        return _build_backend().build_wheel(wheel_directory, config_settings,
      running bdist_wheel
      /data/data/com.termux/files/usr/bin/python3.12 /data/data/com.termux/files/usr/tmp/pip-install-nbeyd42z/llvmlite_da391e1856d04eb1b64d16d24d733311/ffi/build.py
      LLVM version... 19.1.2

      Traceback (most recent call last):
        File "/data/data/com.termux/files/usr/tmp/pip-install-nbeyd42z/llvmlite_da391e1856d04eb1b64d16d24d733311/ffi/build.py", line 235, in <module>
          main()
        File "/data/data/com.termux/files/usr/tmp/pip-install-nbeyd42z/llvmlite_da391e1856d04eb1b64d16d24d733311/ffi/build.py", line 225, in main
          main_posix('linux', '.so')
        File "/data/data/com.termux/files/usr/tmp/pip-install-nbeyd42z/llvmlite_da391e1856d04eb1b64d16d24d733311/ffi/build.py", line 181, in main_posix
          raise RuntimeError(msg)
      RuntimeError: Building llvmlite requires LLVM 14, got '19.1.2'. Be sure to set LLVM_CONFIG to the right executable path.
      Read the documentation at http://llvmlite.pydata.org/ for more information about building llvmlite.

      error: command '/data/data/com.termux/files/usr/bin/python3.12' failed with exit code 1
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for llvmlite
Successfully built numba
Failed to build llvmlite
ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (llvmlite)