Kirjoittaja Aihe: PyViennaCl paketin pip installaatio epäonnistuu (Ratkaistu)  (Luettu 2290 kertaa)

vili84

  • Käyttäjä
  • Viestejä: 73
    • Profiili
Hei, yritän asentaa PyViennaCl pakettia Ubuntu 20.04:llä  ja python 3.8  pipillä
Koodia: [Valitse]
pip install pyviennacl . Ongelma on että jossain vaiheessa asennus kaatuu virheeseen
Koodia: [Valitse]
   
external/boost-python-ublas-subset/boost_subset/libs/python/src/converter/builtin_converters.cpp: In function ‘void* pyviennaclboost::python::converter::{anonymous}::convert_to_cstring(PyObject*)’:
external/boost-python-ublas-subset/boost_subset/libs/python/src/converter/builtin_converters.cpp:51:35: error: invalid conversion from ‘const void*’ to ‘void*’ [-fpermissive]
51 |       return PyUnicode_Check(obj) ? _PyUnicode_AsString(obj) : 0;
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
.
Ongelma on mahdollisti hieman sama kuin tässä https://stackoverflow.com/questions/54991157/cant-compile-boost-python-1-65-1-with-msvc2015 eli luultavasti python versiota vastaavassa boost.pythonissa on jokin virhe ja kyseinen riippuvuus pitäisi päivittää. En vain keksi miten tuon voisi korjata pip asennuksesa?
« Viimeksi muokattu: 26.02.21 - klo:14.13 kirjoittanut vili84 »

vili84

  • Käyttäjä
  • Viestejä: 73
    • Profiili
Sain ratkaistua tuon ongelman lataamaalla git repon omalle koneelle ja tekemällä tuon https://stackoverflow.com/questions/54991157/cant-compile-boost-python-1-65-1-with-msvc2015 olevan fixin koodiin ja asentamalla manuaalisesti
Koodia: [Valitse]
path/to/venv/python3 setup.py build
path/to/venv/python3 setup.py install
Tuon jälkeen tulee tosin toinen onglelma,liittyen epäyhteensopivaan endianesiin, kun importtaa tuota pakettia pythonissa.

nm

  • Käyttäjä
  • Viestejä: 16425
    • Profiili
Näyttää vanhalta ja hylätyltä projektilta. Onko PyViennaCl:ssä jokin ominaisuus, jota ei ole NumPyssä tai SciPyssä?

vili84

  • Käyttäjä
  • Viestejä: 73
    • Profiili
Scipy:ssä olevat tietyt matriisi laskentaan liittyvät operaatiot löytyy vain sparse matriiseille ja näytti toimivan hieman hitaasti. Tuon takia olisin halunnut kokeilla tuota pyviennacl:ää jossa näyttäisi löytyvän dense matriiseille samat operaatiot ja samoin tuo näyttäisi automaatisesti tukevan gpu:ta. Mutta tosiaan ainakin tuo python wrapperi näyttäisi olevan hylätty, tuo c++ on kai vielä aktiivinen?