Làm thế nào để chạy Conda?


221

Tôi đã cài đặt Anaconda và có thể chạy Python, vì vậy tôi giả sử rằng tôi đã cài đặt nó một cách chính xác. Theo tài liệu giới thiệu này , tôi đang cố gắng cài đặt Python v3.3, vì vậy tôi đang sao chép và dán dòng sau vào bảng điều khiển của mình:

conda create -n py33 python=3.3 anaconda

Tuy nhiên, điều đó cho tôi một lỗi:

-bash: conda: lệnh không tìm thấy

Tôi cần làm gì để chạy Conda?

Tôi đang làm việc trên một hệ thống Linux.


16
Sau khi Anaconda và Miniconda cài đặt, cần có một thông báo như: "Để thay đổi này hoạt động, bạn phải mở một thiết bị đầu cuối mới.". Đóng thiết bị đầu cuối và kết nối lại, và lệnh của bạn sẽ hoạt động.
MacGyver

2
Tôi đã gặp vấn đề tương tự và lời khuyên @MacGyver đã giúp, nhưng tôi chỉ làm điều đó với 'source .bash_profile' từ thư mục chính.
Yauhen

@MacGyver Bạn đúng là quá đáng!
Dr_ITH

Câu trả lời:


386

bạn có thể muốn thử điều này:

cho Anaconda 2:

export PATH=~/anaconda2/bin:$PATH

cho Anaconda 3:

export PATH=~/anaconda3/bin:$PATH

cho Anaconda 4:

Sử dụng dấu nhắc Anaconda

và sau đó

conda --version

để xác nhận rằng nó đã làm việc Xuất PATH = ~ / anaconda3 / bin: $ PATH hoạt động nhưng dừng khi bạn thoát khỏi thiết bị đầu cuối để thay đổi rằng bạn phải chạy sudo nano ~ / .bashrc và sau đó sao chép đường dẫn vào tệp và lưu lại sau khi bạn kích hoạt thay đổi bằng cách sử dụng nguồn .bashrc .

kiểm tra với conda cài đặt anaconda-navigator nếu không được cài đặt theo hướng dẫn cài đặt anaconda một lần nữa

theo dõi cùng với video này https://youtu.be/Pr25JlaXhpc


8
hoặc export PATH=~/anaconda/bin:$PATHnơi thích hợp
Bàn Bobby nhỏ

3
Khi tôi gõ export PATH=~/anaconda3/bin:$PATHvào thiết bị đầu cuối và sau đó chạy conda --versionnó hoạt động tốt. Khi tôi sao chép nó vào tệp .bashrc, hãy mở terminal và chạy conda --versionnó không hoạt động. Bất cứ ý tưởng tại sao?
NewNameStat

@NewNameStat: Xem chủ đề này stackoverflow.com/questions/9127405/ từ
petezurich

3
Nếu tôi mở một thiết bị đầu cuối và áp dụng những thay đổi này, nó sẽ hoạt động nhưng nếu tôi đóng thiết bị đầu cuối và mở lại, nó lại cho tôi thấy con đường trăn cũ không phải chung cư. Tôi mệt mỏi với nó bằng cách loại bỏ tất cả các con đường cũ và vẫn hành vi tương tự. !!
Reihan_amn

Tôi đang dùng sơ cấp (bắt nguồn từ Ubuntu 16.04). Để cập nhật PATH mỗi lần tôi đăng nhập, tôi thêm PATH = "$ HOME / anaconda3 / bin: $ PATH" vào ~ / .profile
RTbecard

76

Hóa ra tôi đã không đặt đường dẫn.

Để làm như vậy, trước tiên tôi phải chỉnh sửa .bash_profile (Tôi đã tải nó xuống máy tính để bàn cục bộ của mình để làm điều đó, tôi không biết cách chỉnh sửa văn bản một tệp từ linux)

Sau đó thêm phần này vào .bash_profile:

PATH=$PATH:$HOME/anaconda/bin

2
Trình cài đặt anaconda thường làm điều này cho bạn, trừ khi bạn nói rõ ràng là không.
asmeker

14
Bạn có thể muốn thêm $HOME/anaconda/binvào phía trước PATH của mình để Python Anaconda trở thành Python mặc định của bạn.
asmeker

4
@asmeker Trình cài đặt Anaconda không làm điều này cho bạn, trừ khi bạn nói rõ ràng với nó. Mặc định là "không".
endolith

8
Mặc định là không có trên Linux. Đó là có trên Windows và OS X.
asmeker

5
Đảm bảo đóng và mở lại thiết bị đầu cuối của bạn sau khi bạn sửa đổi .bash_profile. Tôi không thể hiểu tại sao điều này không hiệu quả cho đến khi tôi làm như vậy.
Horatio

28

Thông tin này là hiện tại kể từ ngày hôm nay, 10 tháng 8 năm 2016. Dưới đây là các bước chính xác tôi đã thực hiện để khắc phục điều này bằng các phương pháp được đăng ở trên. Tôi không thấy ai đăng bài: export PATH=$PATH:$HOME/anaconda/bin(bạn cần thêm xuất vào đầu dòng).

Đây là, từng bước:

Đối với bất kỳ ai gặp phải vấn đề tương tự trong khi sử dụng oh-my-zsh, bạn cần làm như sau:

-Mở của bạn .zshrctrong thiết bị đầu cuối của bạn. Tôi đang sử dụng iTerm 2và có Sublime Text 3trình soạn thảo văn bản mặc định của mình:

subl ~/.zshrc

-Khi tệp mở trong trình soạn thảo văn bản của bạn, cuộn xuống dưới cùng và thêm:

export PATH=$PATH:$HOME/anaconda/bin

-Save tập tin, sau đó đóng nó.

-Đóng thiết bị đầu cuối của bạn, sau đó khởi động lại nó.

-Một khi trở lại trong thiết bị đầu cuối của bạn, gõ:

conda --v

Sau đó, bạn sẽ thấy phiên bản condacài đặt được in trên màn hình của bạn.


Nếu bạn đang sử dụng zsh, thì sau khi làm điều đó, thiết bị đầu cuối của bạn có thể hiển thị cho bạn zsh: command not found: rvm-prompt.

Giải pháp là:

  1. thêm vào alias rvm-prompt=$HOME/.rvm/bin/rvm-prompt trong .zshrctập tin.
  2. kiểu source .zshrc .

Rồi ý zsh: command not found: rvm-promptchí biến mất.


1
Cảm ơn, nó hoạt động ngay bây giờ. Tôi tự hỏi tại sao việc đưa PATH vào .bash_profile không hoạt động.
Azam

Đã làm việc!, Mong đợi tôi phải thêm 3 vào đường dẫn xuất. xuất PATH = $ PATH: $ HOME / anaconda3 / bin
FD

Đối với tôi, những gì đã làm việc là thêm export PATH=$PATH:$HOME/opt/anaconda3/binvào cuối tệp zsh
Mahmoud Felfel

27

Nếu bạn đã cài đặt Anaconda nhưng không thể tải phiên bản chính xác của python và ipython hoặc nếu bạn thấy lệnh conda: không tìm thấy khi cố gắng sử dụng conda, đây có thể là một vấn đề với biến môi trường PATH của bạn. Tại dấu nhắc, gõ:

export PATH=~/anaconda/bin:$PATH

Trong ví dụ này , người ta cho rằng Anaconda được cài đặt ở ~/anacondavị trí mặc định .


1
Điều này chỉ đơn giản là tóm tắt các câu trả lời trước đó (ví dụ: stackoverflow.com/a/18675970/570918 ).
merv

21

Chỉnh sửa ~ / .bash_profile, thêm phần này vào nó.

PATH=$PATH:$HOME/anaconda/bin

sau đó chạy

source ~/.bash_profile

Hy vọng có thể giúp bạn.


Cảm ơn vì điều này, dòng này cũng hoạt động cho một hồ sơ oh-my-zsh nơi một số dòng khác không có.
JimmyM

1
Điều này chỉ đơn thuần tóm tắt các câu trả lời trước đó (ví dụ: stackoverflow.com/a/18675970/570918 )
merv 22/03/19

trong ~ / .bash_profile của tôi đã có các dòng trên anaconda2 và anaconda3 (có thể là kết quả của quá trình cài đặt). Tôi chỉ phải chạy phần thứ hai của câu trả lời source ~/.bashprofile(cũng cho thiết bị đầu cuối macOSX Catelina zsh của tôi)
Richard

21

Sử dụng conda init

Như đã chỉ ra trong một câu trả lời khác , việc thêm Conda theo cách thủ công $PATHkhông còn được khuyến nghị kể từ v4.4.0 (xem Ghi chú phát hành ). Hơn nữa, vì Conda v4.6 chức năng mới để quản lý khởi tạo shell thông qua conda initlệnh đã được giới thiệu. Do đó, khuyến nghị cập nhật là chạy

Unix / Linux

./anaconda3/bin/conda init

các cửa sổ

./anaconda3/Scripts/conda.exe init

Bạn phải khởi chạy một trình bao mới hoặc nguồn tệp init của bạn (ví dụ source .bashrc:) để các thay đổi có hiệu lực.


Lời cảnh báo

Tính năng này vẫn được hỗ trợ thử nghiệm. Tôi khuyên bạn nên chạy lệnh trên với một --dry-run|-dcờ và cờ dài ( -vv) để xem chính xác những gì nó sẽ làm. Nếu bạn chưa có phần được quản lý Conda trong tệp lệnh shell của bạn (ví dụ:.bashrc :), thì phần này sẽ xuất hiện như một phần chèn thẳng của một số dòng mới. Nếu đó không phải là cách chèn đơn giản như vậy, trước tiên tôi khuyên bạn nên xóa mọi phần Conda trước đó $PATHvà các tệp khởi tạo shell có liên quan (ví dụ bashrc:).


Vỏ thay thế

Bạn có thể cần xác định rõ ràng vỏ của bạn với Conda. Ví dụ: nếu bạn chạy zsh(mặc định macOS Catalina) thay vìbash sau đó bạn sẽ chạy

./anaconda3/bin/conda init zsh

Xin vui lòng xem ./anaconda3/bin/conda init --help cho một danh sách toàn diện của vỏ được hỗ trợ.


Dọn dẹp tự động tiềm năng

Conda v4.6.9 đã giới thiệu một --reversecờ tự động loại bỏ các thay đổi được chèn vào conda init.


Có .bashrc trên windows 10 không?
john ktejik

@johnktejik tất cả phụ thuộc vào trình bao bạn đang chạy. Khi bạn chạy conda initvới cờ dài, -vvnó sẽ cho bạn biết chính xác những gì nó sẽ chỉnh sửa.
merv

1
conda initghi đè cả của bạn C:\Users\<name>\Documents\WindowsPowerShell\profile.ps1C:\Users\<name>\Documents\PowerShell\profile.ps1.
not2qubit

@ not2qubit bạn đã báo cáo điều đó về các vấn đề GitHub chưa? Đó dường như không phải là thứ mà họ sẽ cố tình làm.
merv

19

Env của tôi: macOS & anaconda3

Điều này làm việc cho tôi:

$ nano ~/.bash_profile

Thêm điều này:

export PATH=~/anaconda3/bin:$PATH

* Đường dẫn xuất phải khớp với đường dẫn thực tế của anaconda3 trong hệ thống.

Thoát ra và chạy:

$ source ~/.bash_profile

Vậy hãy thử đi:

$ jupyter notebook

Đây là câu trả lời làm việc cho tôi. Bước quan trọng đã chạy $ source ~/.bash_profile.
H. Vabri

Điều này làm việc cho tôi cảm ơn. Tôi đã thêm xuất PATH = ~ / anaconda3 / bin: $ PATH trên dòng 3, sau định nghĩa PATH khác
Vincent Tang

15

Tôi đang sử dụng hệ điều hành MAC High Sierra và chỉ cài đặt Anaconda3 thông qua lệnh HomeBrew. Tôi gặp vấn đề với việc chạy:

 conda

Nó cũng sẽ cho tôi:

-bash: conda: command not found

Tôi đã thử chạy:

export PATH=~/anaconda3/bin:$PATH

nhưng nó cần đường dẫn ENTIRE. Vì vậy, đây là các bước chính xác:

$ nano ~/.bash_profile

Bây giờ xuất đường dẫn ENTIRE, trong trường hợp của tôi là:

export PATH=/usr/local/anaconda3/bin:$PATH

Thoát ra và chạy:

$ source ~/.bash_profile

Vậy hãy thử đi:

$ conda

nó sẽ xuất ra:

 $ conda --version
    conda 4.4.10

1
Điều này hoạt động nhưng một khi tôi đóng thiết bị đầu cuối và mở lại thì tôi phải lấy lại nguồn
mjwrazor

@mjwrazor Trong MacOS, hãy sử dụng ~ / .bashrc thay vì ~ / .bash_profile.
tinh thần

Ít nhất là trong Galapagos, họ biết mọi thứ nằm ở đâu !!! Ước gì tôi có thể thêm một số ngôi sao.
Stato Machino

10

Nếu bạn vừa cài đặt anaconda và gặp lỗi này, thì tôi nghĩ bạn đã quên chạy lệnh này:

  • source ~/.bashrc

Điều này sẽ cho phép bạn sử dụng anaconda trong thiết bị đầu cuối.

Điều này có vẻ đơn giản nhưng nhiều người (bao gồm cả tôi) mắc lỗi này.

Nếu lỗi vẫn còn, bạn phải xác minh xem vị trí anaconda có được thêm vào PATH trong hệ thống của bạn không.

Khi bạn thêm nó, bạn sẽ ổn thôi


2
trình cài đặt mới nhất cho biết không nên thêm conda vào PATH
john ktejik

7

Nếu bạn đã cài đặt Anaconda và chắc chắn đã nói yesvới:

Do you wish the installer to prepend the Anaconda install location to PATH in your /home/name/.bashrc ? [yes¦no]

Câu hỏi sau đó bạn có thể chỉ cần khởi động lại cửa sổ terminal của bạn. Thay đổi sẽ không có hiệu lực cho đến khi bạn (1) đóng và mở lại cửa sổ hiện tại hoặc (2) chỉ cần mở và bắt đầu làm việc trong một cửa sổ mới

Về cơ bản, mở một cửa sổ giao diện điều khiển mới và xem nếu nó hoạt động bây giờ.


1
Đối với tôi, tất cả những gì tôi phải làm là khởi động lại thiết bị đầu cuối và lệnh conda bắt đầu hoạt động. ^^ Câu trả lời không thể chối cãi.
ian-campbell

Tôi nghĩ rằng "câu trả lời" này sẽ phù hợp hơn khi bình luận. Câu hỏi và câu trả lời ở đây phải được thực hiện với cài đặt Anaconda, không phải cơ bản về thiết bị đầu cuối. Khởi động lại thiết bị đầu cuối là một lời nhắc tốt, nhưng nó không phải là một câu trả lời cho câu hỏi này.
genorama

Ai quan tâm? Họ đã có một vấn đề mà họ đang cố gắng giải quyết và đối với một số người (bao gồm cả tôi) điều này đã khắc phục vấn đề. Vì vậy, nó là một "câu trả lời".
mjp

7

Cho cửa sổ:

Một Anaconda gần đây (phiên bản 4.4.0) đã thay đổi một số thư mục. Bạn có thể tìm thấy "conda" trong Anaconda3 / Scripts , thay vì Anaconda3 / bin.


6

Chủ yếu là vì khi chúng ta cài đặt Anaconda cuối cùng, nó sẽ thêm đường dẫn anaconda vào biến PATH trong tệp .bashrc. Vì vậy, chúng ta chỉ cần khởi động lại thiết bị đầu cuối hoặc chỉ cần làm

source ~/.bashrc

Nếu nó vẫn không hoạt động thì hãy làm theo lệnh này.

cat >> ~/.bashrc

dán lệnh dưới đây cho anaconda3

export PATH=~/anaconda3/bin:$PATH

nhấn Enter rồi ctrl + d

source ~/.bashrc

@johnktejik Bạn đang sử dụng bản phân phối Linux nào?
Devendra Bhat

3

Chạy

cat ~/.bash_profile

để kiểm tra xem Anaconda có ở đó không. Nếu không bạn nên thêm đường dẫn của nó ở đó. Nếu conda ở đó sao chép toàn bộ hàng mà bạn thấy Anaconda ở đó từ "xuất khẩu" đến cuối dòng. như thế này:

export PATH=~/anaconda3/bin:$PATH

Chạy này trong thiết bị đầu cuối của bạn. Sau đó chạy

conda --version

để xem nếu nó được xuất khẩu và chạy!


3

Hệ thống: macOS

Tôi đã cài đặt Anaconda trước, và mọi thứ đều hoạt động tốt. Sau đó, tôi đã cài đặt iTerm2 và khi tôi gõ PythoniTerm2, đưa cho tôi Python mặc định. Dưới đây là cách tìm lại Anaconda Python của bạn:

  1. Mở .zshrctập tin của bạn . Ví dụ,vim ~/.zshrc

  2. Sau đó thêm export PATH="/Users/yourusername/anaconda2/bin:$PATH"vào dòng cuối cùng của tập tin. Lưu ý rằng bạn cần thay thế yourusernametên người dùng của mình và đảm bảo rằng bạn có anaconda2. Một cách dễ dàng là sao chép dòng này từ~/.bash_profile

  3. Lưu tệp, đóng tệp, khởi chạy lại thiết bị đầu cuối và bây giờ Anaconda Python sẽ quay trở lại.


3

Nếu bạn đã cài đặt anaconda, nhưng nếu bạn không thể thực thi lệnh conda từ thiết bị đầu cuối, điều đó có nghĩa là đường dẫn có thể không được đặt, hãy thử:

export PATH=~/anaconda/bin:$PATH

Xem liên kết này .


3

Trả lời cho

  • Trình cài đặt Anaconda3 5.2.0
  • macOS HighSierra
  • ZSH

  1. Thật không may, trình cài đặt chỉ đặt định nghĩa PATH .bash_profilechứ không phải .zshrccấu hình.
  2. Trái ngược với những câu trả lời được đưa ra, nó không (nhất thiết) cài đặt trong ~/anaconda3/, nhưng thay vì/anaconda3/.

Các PATHdefintion ở .zshrcbắt buộc do đó là thế này:

...
# Anaconda3
export PATH="/anaconda3/bin:$PATH"
...

Cách đúng đắn để làm điều này là trước tiên chạy source <path to conda>/bin/activate, sau đó conda init zsh.
AMC

2

Nếu bạn vừa cài đặt MiniConda hoặc Anaconda, hãy đảm bảo bạn chạy lại thiết bị đầu cuối của mình.

Từ đây, tôi có nghĩa là đóng và mở thiết bị đầu cuối của bạn và sau đó thử danh sách conda để xác minh cài đặt của bạn

Đối với tôi, điều này đã làm việc !!


2

Tôi cũng đang đối mặt với cùng một vấn đề, đây có thể là giải pháp đơn giản nhất có thể

source anaconda/bin/activate

để sử dụng anaconda2

source anaconda2/bin/activate

tùy thuộc vào tên của thư mục, sau đó thực thi lệnh của bạn tức là conda --create


Nếu điều đó không có ích, hãy thử khởi động lại, sau đó thử "source ~ / .bashrc", sau đó thử lệnh ur. Hy vọng rằng sẽ giúp.
yunus

2

Mở terminal của bạn và gõ lệnh sau để thêm anaconda vào đường dẫn môi trường

cho Anaconda 2:

export PATH=~/anaconda2/bin:$PATH

cho Anaconda 3:

export PATH=~/anaconda3/bin:$PATH

Sau đó, để kiểm tra phiên bản conda chỉ cần gõ,

conda --version

Tạo một môi trường bằng cách sử dụng lệnh sau đây,

conda create --name myenv

Kích hoạt nguồn bằng cách sử dụng,

source activate myenv

Vậy thì IDE anaconda của bạn đã sẵn sàng !!!


1

Giải pháp tạm thời:

$anaconda/bin/conda create -n py33 python=3.3 anaconda

1

Tôi đang thiết lập một máy ảo chạy Ubuntu. Tôi đã cài đặt anaconda 3 trong thư mục "Home". Khi tôi gõ "conda" vào terminal, tôi cũng gặp lỗi "conda: lệnh không tìm thấy".

Nhập mã dưới đây vào thiết bị đầu cuối làm việc cho tôi ...

export PATH=$PATH:$HOME/anaconda3/bin

để kiểm tra nó hoạt động tôi gõ:

conda --version

trong đó trả lời với số phiên bản.


1

Bạn cần đặt Anaconda.sh cho / home / của bạn, sau đó chạy nó để cài đặt. Sau đó, bạn có thể chạy export PATH=~/anaconda3/bin:$PATH. Lưu ý: không chạy Anaconda.sh trong tải xuống / trực tiếp !!!!!


1

Trước tiên, hãy kiểm tra vị trí của anaconda, đối với tôi, tôi đã cài đặt anaconda3 tại / thư mục mà tôi truy cập cùng /anaconda3

Sau đó, trong thiết bị đầu cuối của bạn, đầu vào export PATH="<base location>/anaconda3/bin:$PATH"cho tôi nóexport PATH="/anaconda3/bin:$PATH" .

Cuối cùng, đầu vào source $/anaconda3/bin/activate . Đối với bạn, chỉ cần thay đổi vị trí của bạn.

Bây giờ, bạn có thể thử danh sách conda để kiểm tra.

Ngoài ra, hãy truy cập hướng dẫn giới thiệu


1

1. Kiểm tra nơi bạn đã cài đặt Anaconda . Trong trường hợp của tôi, nó trông giống như/home/nour/anaconda3/bin

  1. Mở .bashrctập tin của bạn . Ví dụ$ gedit .bashrc

3. Thêm export PATH = /home/nour/anaconda3/bin:$PATHdòng này vào cuối tập tin và lưu lại.

  1. Mở lại thiết bị đầu cuối. Kiểuconda --version

LƯU Ý: Đảm bảo đường dẫn trong dòng số. 1dòng số 3 phải giống nhau. Trong trường hợp của tôi /home/nour/anaconda3/bin.


1

Để chỉnh sửa bashrc trong Ubuntu

$ /usr/bin/vim ~/.bashrc

PATH=$PATH:$HOME/anaconda3/bin Nhấn Esc và :wqđể lưu tệp bashrc và thoát vim nhập mô tả hình ảnh ở đây

sau đó

$ export PATH=~/anaconda3/bin:$PATH

và gõ $ source ~/.bashrc Now để xác nhận cài đặt loại conda

$ conda --version

1

Nếu bạn đã cài đặt Anaconda với Visual Studio 2017 cho Windows, thì thực thi conda nằm trong đường dẫn này hoặc tương tự.

Trong trường hợp của tôi, đây là: C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64\Scripts

Các bước để thêm nó vào PATH của bạn:

  • Trên màn hình nền Windows, bấm chuột phải vào Máy tính của tôi.
  • Trong menu bật lên, bấm Thuộc tính.
  • Trong cửa sổ Thuộc tính hệ thống, bấm vào tab Nâng cao, rồi bấm Biến môi trường.
  • Trong cửa sổ Biến hệ thống, tô sáng Đường dẫn và bấm Chỉnh sửa.
  • Thêm đường dẫn của bạn và khởi động lại cmd của bạn.

Bạn sẽ có thể thực thi conda

Chúc mừng mã hóa!


1

Sử dụng export PATH=chiến lược với conda activatesẽ dẫn đến một thông báo cảnh báo cho conda> = 4.4.

Cách được đề xuất (xem ghi chú phát hành này và bài đăng này ) phải làm là xóa export PATH=...dòng và thay vào đó trong dòng .bashrc( .bash_profile) của bạn :

. ~/anaconda2/etc/profile.d/conda.sh

Hơn nữa, nếu bạn muốn conda được kích hoạt theo mặc định, hãy thêm:

conda activate

Làm thế nào để tôi thoát khỏi "(cơ sở)" trước dòng lệnh?
Homero Esmeraldo


0

Trong trường hợp của tôi, đường dẫn conda đã được đặt đúng (trong .bashrc) bởi bash cài đặt conda. Nhưng để làm cho nó hoạt động, tôi đã phải cấp quyền tập tin thực thi cho các tập tin trong thư mục phụ bin vớichmod +x * .

Thông tin hệ thống của tôi:

bao cao su 4.2.9

Hệ điều hành: Debian GNU / Linux 8 (jessie)

Hạt nhân: Linux 3.16.0-4-amd64

Kiến trúc: x86-64


0

Tôi đã có vấn đề tương tự. Những gì tôi đã làm, xóa thư mục anaconda khỏi vị trí cài đặt và cài đặt lại sau đó nó hoạt động như tôi dự đoán

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.