freedmand / semantra

Multi-tool for semantic search
MIT License
2.52k stars 140 forks source link

Semantra Install Failure on Fedora 37 #37

Open Rui-E-Rodrigues opened 1 year ago

Rui-E-Rodrigues commented 1 year ago

Hello! I tried to install semantra on an x86 machine running Fedora 37. The install failed. Anyone had a similar experience? Please see link to error logs below - any suggestions as to a solution? https://github.com/Rui-E-Rodrigues/SemantraFedora36InstallErrors/tree/570095e2ee9f80c8fa5b8a8cd6c97f6070a8b32b Please note: I also updated my installation of gnuC and gnuC++ and then re-ran pipx install semantra... however this did not result in a fix. Furthermore I also tried to install Semantra on a machine running Debian-11 and I had the same issues as on Fedora36 and Fedora37 Thank you, Regards!

freedmand commented 1 year ago

Thanks for submitting the issue! I don't have Debian/Fedora so a bit hard for me to reproduce. Can you try swapping annoy-fixed for annoy in the requirements specified in pyproject.toml and reinstalling? This may require cloning the repo and installing locally.

Rui-E-Rodrigues commented 1 year ago

I substituted 'annoy-fixed' with 'annoy' in the pyproject.toml file on my local repo and then got the same error when I ran installation. What "appears" to fix the installation procedure is installing the Python development headers prior to running installation. On Fedora 37 that is: sudo dnf install python3-devel I tested semantra against a PDF... it showed me a number of progress bars as it vectorized the PDF text...displayed a URL, but wasnt able to access the URL via my browser. Haven't had the time to troubleshoot this so will have to park this one to go deal with work commitments.. any suggestions appreciated. Thanks

MaxPowerWasTaken commented 1 year ago

I also failed semantra install on pipx's failure to build annoy-fixed on linux; first on ubuntu 22.10 and then ubuntu 23.04. I tried a few things unsuccessfully. In my case installing the python development headers (sudo pip install build-essential python3-dev) did not solve the issue, but I was ultimately able to get it to install (and tested it out working on a pdf) by using pip instead of pipx. I don't have enough experience with pipx to know if that should surprise me (my usual workflow is to use pip-tools/pip-compile + venvs + pip for this sort of thing).

freedmand commented 1 year ago

I was able to install on Ubuntu a few weeks ago — I wonder if anything's changed in the package. @Rui-E-Rodrigues, it sounds like it's working for you on the backend. What happened when you hit the URL?

In any case, I'm working on a v0.2 of Semantra that will redo a lot of things. I'm planning to sub out Annoy for DocArray.

Rui-E-Rodrigues commented 1 year ago

Folks, thank you for following up on this. Update: following on from @MaxPowerWasTaken 's suggestions, I used pip rather than pipx on my Fedora 37 machine and it installed smoothly and access through the browser now works really well - Thanks a lot! To answer @freedmand 's question about my previous install my browser was simply unable to access the backend when I paste the IP address based URL in there... it works just fine in the pip based install however..... looking forward to v0.2 @freedmand

MaxPowerWasTaken commented 1 year ago

Awesome, glad my solution worked for you as well! I'm definitely a big fan of Semantra!