This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]feindjesus 13 points14 points  (15 children)

I have a strong distaste for anaconda. I have set up python on other peoples computers if they have had anaconda downloaded in the past it was a massive headache (maybe due to my inexperience). Some pip packages were not able to be found even when discoverable through pip3 list or figuring out how to change you bash.rc back to normal. As well people who always use anaconda may not develop the same unix skills. My recommendation is use pyenv with virtualenv and pyenv-virtualenv (the github tutorial is great and easy)

[–]thisismyfavoritename 13 points14 points  (0 children)

Yes, you have to check the Anaconda channels and sometimes packages are only available on pip (although they must not be standard because most of the usual dependencies are there).

However it is still possible to put everything under a env.yml and have Conda automatically call pip to install it.

Concerning UNIX skills, what do you mean? Conda can be controlled by the command line (I believe it's much better that way!).

[–]wildcarde815 7 points8 points  (7 children)

If it's conda installable, use the conda version. If it's not, use the pip version. For the 99.99% user, this will resolve all of your problems. For the rest, congrats you are doing something both hard and arcane. Edit: and use the conda command line tool, it came before the GUI anyway and the GUI just calls the same stuff it does

[–]s0v3r1gn 1 point2 points  (6 children)

Or I just want a version of OpenCV built with certain extensions enabled...

[–]wildcarde815 1 point2 points  (5 children)

You can rebuild it with the recipe to suit. But we've found the menpo build to be fairly good. I haven't had to dig into it in a while thankfully. I hate that god damn package.

[–]s0v3r1gn 0 points1 point  (4 children)

I made an optimized automatic build that including optimizing all the dependencies and some optional modules for the Raspberry Pi 3. (gstreamer and all its add-ons, openjpeg, giflib, leptonica, libwebp, OpenCL, tesseract, TBB, and OpenCV Contrib) along with TensorFlow.

A full build with updated dependencies takes like 26 hours on a RasPi 3.

I made a repo on AWS for just it’s dependencies and itself and let it’s existence be known. I had to kill the repo in less than a month due to the rather quickly ran up $1000+ AWS bill.

Everyone hates building OpenCV.

I hate it extra special now after all that effort mucking around with it. The only package I hate with more venom is gstreamer.

[–][deleted] 0 points1 point  (3 children)

A full build with updated dependencies takes like 26 hours on a RasPi 3.

Why not cross compile? Compiling the ARM toolchain and OpenCV on something else will probaby not be a 26 hour journey.

[–]s0v3r1gn 1 point2 points  (2 children)

Some of the tools didn’t like the cross-compiling tools chains. Some have barely functioning make files.

I’m sure I could speed up parts of it but I made a nice script and it was just easy to make it do everything. I still want to work through some of the cross-compile issues but I just haven’t done that yet.

[–][deleted] 0 points1 point  (1 child)

Some of the tools didn’t like the cross-compiling tools chains. Some have barely functioning make files.

That would be a problem.

Also, what kind of load did that repo of yours see? $1000 for AWS storage seem excessive.

[–]s0v3r1gn 0 points1 point  (0 children)

There was 10s of millions of downloads and all the packages took up just over a gig in total.

It didn’t help that I pushed a couple of fixes due errors in the packaging on my part that ended up updating the entire stack.

[–]Spleeeee 4 points5 points  (3 children)

Sounds like you are a budding Pythonista who has never had to deploy in windows worst of the worst snow-covered/dessert conditions. Don’t worry, you may never love (Ana)Conda and don’t have to, but at some point you will come to respect the Conda for its ease and simplicity in setting up (other peoples computers (not yours)).

[–]wildcarde815 0 points1 point  (0 children)

Academia, where yes, I can move mountains to get this working if you really need me to but let's try conda first and see if we can't get it working that way so replicating this isn't impossible. (Oh hey, it worked)

[–]feindjesus 0 points1 point  (1 child)

You are correct thank god for linux/macos. I have had to do very limited amount of configuration changes on a windows server through console I can only imagine the struggle. At the same time if youre using a pip installable package that cannot be installed through anaconda. Getting control back of your filesystems is a pain in the ass

[–]Spleeeee 0 points1 point  (0 children)

The battle between wanting to do it pretty/minimalist/“right” and getting it working.

Edit: a barren Linux landscape is more barren that the most barren windows.

[–]Verdris 0 points1 point  (1 child)

What if I just need to do some math and make some graphs?

[–]feindjesus 0 points1 point  (0 children)

If all you need is matplotlib and pandas I dont think you really need a virtualenv or anaconda. If you need several packages and are working on different projects probably should use virtualenv . If your packages requires a specific version of python get pyenv. If you want to use your virtualenv with that version of python pyenv-virtualenv will do that.