0 votes
138 views

Hi folks,

I tried to install astro-datalab on my MacBook Pro M1 (osx-arm64) running Sonoma 14.5. I followed the instructions to use a fresh install from the GitHub repository. It all seemed to go fine, but when I ran "datalab --version", I got the error:

ImportError: pycurl: libcurl link-time ssl backends (openssl) do not include compile-time ssl backend (secure-transport)

I messed around for an hour trying to uninstall and reinstall libcurl, openssl, etc, but never got datalab to work. I am using conda as my package manager, augmented by pip as needed. 

Thanks in advance...

Dave

by dsilva (220 points) | 138 views

1 Answer

0 votes

Hi Dave,

two colleagues (Stephanie and Igor) have just yesterday solved the same problem on an M1, give it a try (instructions from Stephanie):

"This worked in a conda environment with Python 3.10 (thanks to Igor's advice for the pycurl part):

# Install DL
% pip install --ignore-installed --no-cache-dir astro-datalab

# Add to fix the version of libcurl attached to pycurl, using this:
% conda install -c conda-forge pycurl
on a mac M1 chip. Interestingly, using pip for pycurl did NOT work. Not sure it'll work for Dave but may be worth a try!"
 
Best,
Robert
by robertdemo (8.9k points)
In addition to what Stephanie and Robert said, if the problem still persists, I suggest upgrading your OS, if you are not current, and your Xcode, after that if you are using `brew` do a `brew update` followed by a `brew upgrade`.  If it still doesn't work, please do let us know. Before releasing this package we made sure it worked in a MAC ARM architecture but the ARM is still seeing a lot of changes, software wise, so it'll be a great help for us to know about what problems, ARM users, are experiencing. Thank you!
Igor
Hi Robert, Igor, and Stephanie...

Thanks for your help and patience, I was in South Africa for the last 3 weeks.

TL; DR - I am operational with 2.22.1 but there seems to be a configuration specification problem (?) with 2.23.1 in GitHub.

I have three MacOS machines (don't ask) - Intel, M1, and M2. Today, I took the following steps for all three machines:

(1) removed /opt/anaconda
(2) upgraded to latest macOS (Sonoma 14.6.1)
(3) downloaded and install latest Anaconda (2024.06, Python 3.12)
(4) ran "conda update conda"
(5) ran "conda update --all"
---> At this point, I am running Python 3.12.4, and conda 24.7.1

(6) installed astro-datalab using: "pip install --ignore-installed --no-cache-dir astro-datalab"
---> This installed version 2.22.1, which is NOT the latest version on GitHub

Datalab 2.22.1 worked as expected for the commands I tried (login, ls, put, get, logout). Note I did not have to do anything with brew, curl, or pycurl.

I then tried to install version 2.23.1 from GitHub following the revised README file. This seemed to be going fine until I tried to install (Step 4). That produced the error message:

Processing ./dist/astro_datalab-2.23.1-py3-none-any.whl
Requirement already satisfied: certifi in /opt/anaconda3/lib/python3.12/site-packages (from astro-datalab==2.23.1) (2024.7.4)
INFO: pip is looking at multiple versions of astro-datalab to determine which version is compatible with other requirements. This could take a while.
ERROR: Package 'astro-datalab' requires a different Python: 3.12.4 not in '<3.12,>=3.9'

CONCLUSIONS
(1) I am now running astro-datalab 2.22.1 under Sonoma 14.6.1 on Intel and Apple Silicon.
(2) I have not successfully installed astro-datalab 2.23.1 from GitHub
(3) I am operational for now, although I suspect I am not benefiting from the new pycurl

I'm happy to work with you further as needed.

Thanks again,

David



.
Hi Dave,

sorry for the super late reply. Somehow I didn't get a notification of your response...

The issue seems to be that your new shiny Conda environment has Python 3.12. We don't support it yet, simply for reasons of testing any major upgrades on a deliberately slower timescale. 3.11 is supported though, if you want to try. You should not have to re-install Anaconda again, simply make a new Py3.11 environment, switch to it, and try from there. I.e.:

conda create -n py311 python=3.11
conda activate py311

and so on.

449 questions

463 answers

473 comments

658 users

Welcome to Data Lab Help Desk, where you can ask questions and receive answers from other members of the community.

Categories