Merge pull request #27 from prichmp/master
Build instructions for Windows
This commit is contained in:
commit
dfe74508dc
2 changed files with 46 additions and 4 deletions
40
BUILDING.md
Normal file
40
BUILDING.md
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
|
||||
# Running on Windows using MSYS2
|
||||
|
||||
The following are instructions for building whisper-rs on Windows using the msys2 set of compilers.
|
||||
|
||||
1. install msys2/mingw by following [https://code.visualstudio.com/docs/cpp/config-mingw](`https://code.visualstudio.com/docs/cpp/config-mingw`)
|
||||
1. Install g++ and make within msys2 ucrt64
|
||||
- `pacman -S --needed base-devel mingw-w64-x86_64-toolchain`
|
||||
2. Add the msys2 ucrt64 bin folder to path `C:\msys64\ucrt64\bin`
|
||||
2. Install make by running `pacman -S make` in msys2 ucrt66
|
||||
3. Set rust to use msys2: by running `rustup toolchain install stable-x86_64-pc-windows-gnu` in Windows Powershell/Cmd
|
||||
4. Add `.cargo/config.toml` file in the project with the following contents:
|
||||
```
|
||||
[target.x86_64-pc-windows-gnu]
|
||||
linker = "C:\\msys64\\ucrt64\\bin\\gcc.exe"
|
||||
ar = "C:\\msys64\\ucrt64\\bin\\ar.exe"
|
||||
```
|
||||
5. Run `cargo run` in Windows Powershell/Cmd
|
||||
|
||||
# Running on Windows using Microsoft Visual Studio C++
|
||||
|
||||
It has been reported that it is also possible to build whisper-rs using Visual Studio C++.
|
||||
|
||||
Make sure you have installed and in the path:
|
||||
|
||||
- Visual Studio C++
|
||||
- cmake
|
||||
|
||||
You may need to clone the git repository instead of using the Cargo package.
|
||||
|
||||
# Running on M1 OSX
|
||||
|
||||
To build on a M1 Mac, make sure to add the following to your project's `.cargo/config.toml`:
|
||||
|
||||
```
|
||||
[target.aarch64-apple-darwin]
|
||||
rustflags = "-lc++ -l framework=Accelerate"
|
||||
```
|
||||
|
||||
See https://github.com/tazz4843/whisper-rs/pull/2 for more information.
|
||||
10
README.md
10
README.md
|
|
@ -37,23 +37,25 @@ See [examples/basic_use.rs](examples/basic_use.rs) for more details.
|
|||
Lower level bindings are exposed if needed, but the above should be enough for most use cases.
|
||||
See the docs: https://docs.rs/whisper-rs/ for more details.
|
||||
|
||||
## Building
|
||||
|
||||
See [BUILDING.md](BUILDING.md) for instructions for building whisper-rs on Windows and OSX M1.
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
* I get an error about a lot of undefined symbols at compile time!
|
||||
* These symbols might be part of the C++ standard library.
|
||||
* Try linking against it with the `-Clink-args=-lstdc++` compiler flag:
|
||||
* `RUSTFLAGS="-Clink-args=-lstdc++" cargo build`
|
||||
* Windows/macOS/Android aren't working!
|
||||
* macOS/Android aren't working!
|
||||
* I don't have a way to test these platforms, so I can't really help you.
|
||||
* If you can get it working, please open a PR!
|
||||
* If you can get it working, please open a PR with any changes to make it work and build instructions in BUILDING.md!
|
||||
* I get a panic during binding generation build!
|
||||
* You can attempt to fix it yourself, or you can set the `WHISPER_DONT_GENERATE_BINDINGS` environment variable.
|
||||
This skips attempting to build the bindings whatsoever and copies the existing ones. They may be out of date,
|
||||
but it's better than nothing.
|
||||
* `WHISPER_DONT_GENERATE_BINDINGS=1 cargo build`
|
||||
* If you can fix the issue, please open a PR!
|
||||
* M1 build info:
|
||||
* See [this issue](https://github.com/tazz4843/whisper-rs/pull/2) for more info.
|
||||
|
||||
## License
|
||||
[Unlicense](LICENSE)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue