2020-11-01 05:26:58 +01:00
|
|
|
# Mac
|
|
|
|
|
|
|
|
## Requirements
|
|
|
|
|
|
|
|
**Xcode**:
|
|
|
|
|
|
|
|
Install the latest XCode from the App Store. Open it at least once
|
|
|
|
so it installs the command line tools.
|
|
|
|
|
|
|
|
**Homebrew & Homebrew Deps**:
|
|
|
|
|
|
|
|
Install Homebrew from <https://brew.sh/>
|
|
|
|
|
|
|
|
Then install deps:
|
|
|
|
|
|
|
|
```
|
2020-11-18 04:22:51 +01:00
|
|
|
$ brew install rsync bazelisk
|
2020-11-01 05:26:58 +01:00
|
|
|
```
|
|
|
|
|
|
|
|
**Install Python 3.8**:
|
|
|
|
|
2021-01-31 11:54:43 +01:00
|
|
|
Install Python 3.8 from <https://python.org>. We have heard reports
|
|
|
|
of issues with pyenv and homebrew, so the package from python.org is
|
|
|
|
the only recommended approach.
|
2020-11-01 05:26:58 +01:00
|
|
|
|
2020-12-02 02:23:01 +01:00
|
|
|
Python 3.9 is not currently recommended, as pylint does not support it yet.
|
|
|
|
|
2020-11-01 05:26:58 +01:00
|
|
|
You do not need to set up a Python venv prior to building Anki.
|
|
|
|
|
|
|
|
When you run "python" in a shell, if it shows Python 2.x, you may get a
|
|
|
|
bunch of hashlib warnings during build. You can work around this by
|
|
|
|
pointing python to python3.8:
|
|
|
|
|
|
|
|
```
|
|
|
|
$ ln -sf /usr/local/bin/{python3.8,python}
|
|
|
|
```
|
|
|
|
|
2020-12-02 02:23:01 +01:00
|
|
|
This linking will not work if you're using the system Python from Big Sur,
|
|
|
|
which is one of the reasons why we recommend using Python from python.org.
|
|
|
|
|
2020-11-01 05:26:58 +01:00
|
|
|
## Running Anki during development
|
|
|
|
|
|
|
|
From the top level of Anki's source folder:
|
|
|
|
|
|
|
|
```
|
|
|
|
./run
|
|
|
|
```
|
|
|
|
|
|
|
|
This will build Anki and run it in place.
|
|
|
|
|
2020-12-02 02:23:01 +01:00
|
|
|
The first build will take a while, as it downloads and builds a bunch of
|
2020-11-01 05:26:58 +01:00
|
|
|
dependencies. When the build is complete, Anki will automatically start.
|
|
|
|
|
2020-12-16 10:09:45 +01:00
|
|
|
To play audio, use Homebrew to install mpv and lame.
|
2020-11-01 05:26:58 +01:00
|
|
|
|
2020-12-07 02:50:03 +01:00
|
|
|
## Optimized builds
|
|
|
|
|
|
|
|
The `./run` command will create a non-optimized build by default. This is faster
|
|
|
|
to compile, but will mean Anki will run considerably slower.
|
|
|
|
|
|
|
|
To run Anki in optimized mode, use:
|
|
|
|
|
|
|
|
```
|
|
|
|
./scripts/runopt
|
|
|
|
```
|
|
|
|
|
2020-11-04 05:01:14 +01:00
|
|
|
## More
|
2020-11-01 05:26:58 +01:00
|
|
|
|
2020-11-04 05:01:14 +01:00
|
|
|
For info on running tests, building wheels and so on, please see [Development](./development.md).
|