Merge pull request #9711
Some checks are pending
ci/gh-actions/cli / macOS (brew) (push) Waiting to run
ci/gh-actions/cli / Windows (MSYS2) (push) Waiting to run
ci/gh-actions/cli / Arch Linux (push) Waiting to run
ci/gh-actions/cli / Debian 10 (push) Waiting to run
ci/gh-actions/cli / ${{ matrix.name }} (ubuntu:22.04, Ubuntu 22.04) (push) Waiting to run
ci/gh-actions/cli / ${{ matrix.name }} (tests) (ubuntu:20.04, Ubuntu 20.04) (push) Waiting to run
ci/gh-actions/cli / source archive (push) Waiting to run
ci/gh-actions/depends / ${{ matrix.toolchain.name }} (map[host:aarch64-apple-darwin name:Cross-Mac aarch64]) (push) Waiting to run
ci/gh-actions/depends / ${{ matrix.toolchain.name }} (map[host:aarch64-linux-android name:ARMv8 Android]) (push) Waiting to run
ci/gh-actions/depends / ${{ matrix.toolchain.name }} (map[host:aarch64-linux-gnu name:ARM v8 packages:g++-aarch64-linux-gnu]) (push) Waiting to run
ci/gh-actions/depends / ${{ matrix.toolchain.name }} (map[host:arm-linux-android name:ARMv7 Android]) (push) Waiting to run
ci/gh-actions/depends / ${{ matrix.toolchain.name }} (map[host:arm-linux-gnueabihf name:ARM v7 packages:g++-arm-linux-gnueabihf]) (push) Waiting to run
ci/gh-actions/depends / ${{ matrix.toolchain.name }} (map[host:i686-pc-linux-gnu name:i686 Linux packages:g++-multilib]) (push) Waiting to run
ci/gh-actions/depends / ${{ matrix.toolchain.name }} (map[host:riscv64-linux-gnu name:RISCV 64bit packages:g++-riscv64-linux-gnu]) (push) Waiting to run
ci/gh-actions/depends / ${{ matrix.toolchain.name }} (map[host:x86_64-apple-darwin name:Cross-Mac x86_64]) (push) Waiting to run
ci/gh-actions/depends / ${{ matrix.toolchain.name }} (map[host:x86_64-unknown-freebsd name:x86_64 Freebsd packages:clang-8]) (push) Waiting to run
ci/gh-actions/depends / ${{ matrix.toolchain.name }} (map[host:x86_64-unknown-linux-gnu name:x86_64 Linux]) (push) Waiting to run
ci/gh-actions/depends / ${{ matrix.toolchain.name }} (map[host:x86_64-w64-mingw32 name:Win64 packages:g++-mingw-w64-x86-64]) (push) Waiting to run
ci/gh-actions/guix / cache-sources (push) Waiting to run
ci/gh-actions/guix / ${{ matrix.toolchain.target }} (map[target:aarch64-apple-darwin]) (push) Blocked by required conditions
ci/gh-actions/guix / ${{ matrix.toolchain.target }} (map[target:aarch64-linux-android]) (push) Blocked by required conditions
ci/gh-actions/guix / ${{ matrix.toolchain.target }} (map[target:aarch64-linux-gnu]) (push) Blocked by required conditions
ci/gh-actions/guix / ${{ matrix.toolchain.target }} (map[target:arm-linux-gnueabihf]) (push) Blocked by required conditions
ci/gh-actions/guix / ${{ matrix.toolchain.target }} (map[target:i686-linux-gnu]) (push) Blocked by required conditions
ci/gh-actions/guix / ${{ matrix.toolchain.target }} (map[target:riscv64-linux-gnu]) (push) Blocked by required conditions
ci/gh-actions/guix / ${{ matrix.toolchain.target }} (map[target:x86_64-apple-darwin]) (push) Blocked by required conditions
ci/gh-actions/guix / ${{ matrix.toolchain.target }} (map[target:x86_64-linux-gnu]) (push) Blocked by required conditions
ci/gh-actions/guix / ${{ matrix.toolchain.target }} (map[target:x86_64-unknown-freebsd]) (push) Blocked by required conditions
ci/gh-actions/guix / ${{ matrix.toolchain.target }} (map[target:x86_64-w64-mingw32]) (push) Blocked by required conditions
ci/gh-actions/guix / bundle-logs (push) Blocked by required conditions

2511f8579 brew: use latest protobuf (tobtoht)
This commit is contained in:
tobtoht 2025-02-13 17:40:24 +00:00
commit ca16c290ab
No known key found for this signature in database
GPG Key ID: E45B10DD027D2472
3 changed files with 8 additions and 30 deletions

View File

@ -45,8 +45,7 @@ jobs:
- uses: ./.github/actions/set-make-job-count
- name: install dependencies
run: |
HOMEBREW_NO_AUTO_UPDATE=1 brew install boost hidapi openssl zmq miniupnpc expat libunwind-headers protobuf@21 ccache
brew link protobuf@21 boost
HOMEBREW_NO_AUTO_UPDATE=1 brew install boost hidapi openssl zmq miniupnpc expat libunwind-headers protobuf ccache
- name: build
run: |
${{env.CCACHE_SETTINGS}}

View File

@ -28,5 +28,5 @@ brew "doxygen"
brew "graphviz"
brew "libunwind-headers"
brew "xz"
brew "protobuf@21", link: true
brew "protobuf"
brew "libusb"

View File

@ -15,10 +15,9 @@ Please, refer to [monero readme](https://github.com/trezor/trezor-firmware/blob/
## Dependencies
Trezor uses [Protobuf](https://protobuf.dev/) library. Monero is now compiled with C++ 17 by default.
Protobuf v21 is tested, older versions are not guaranteed to work. Note that Protobuf v23+ requires C++ 17.
Trezor uses [Protobuf](https://protobuf.dev/) library.
If you are getting Trezor compilation errors, it may be caused by abseil (protobuf dependency) not being compiled with C++17.
Monero is now compiled with C++17 by default. If you are getting Trezor compilation errors, it may be caused by abseil (protobuf dependency) not being compiled with C++17.
To fix this try installing protobuf from sources:
```shell
@ -29,42 +28,22 @@ cmake --build .
sudo make install
```
If Monero is compiled with C++14, Protobuf v21 is the latest compatible protobuf version for C++ 14.
If you want to compile Monero with Trezor support with C++14, please make sure the Protobuf v21 is installed.
More about this limitation: [PR #8752](https://github.com/monero-project/monero/pull/8752),
[1](https://github.com/monero-project/monero/pull/8752#discussion_r1246174755), [2](https://github.com/monero-project/monero/pull/8752#discussion_r1246480393)
### OSX
To build with installed, but not linked Protobuf v21:
### macOS
```bash
CMAKE_PREFIX_PATH=$(find /opt/homebrew/Cellar/protobuf@21 -maxdepth 1 -type d -name "21.*" -print -quit) \
make release
```
or to install and link as a default protobuf version:
```bash
# Either install all requirements as
brew update && brew bundle --file=contrib/brew/Brewfile
# or install protobufv21 specifically
brew install protobuf@21 && brew link protobuf@21
```
### MSYS32
```bash
curl -O https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-protobuf-c-1.4.1-1-any.pkg.tar.zst
curl -O https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-protobuf-21.9-1-any.pkg.tar.zst
pacman --noconfirm -U mingw-w64-x86_64-protobuf-c-1.4.1-1-any.pkg.tar.zst mingw-w64-x86_64-protobuf-21.9-1-any.pkg.tar.zst
pacman -S mingw-w64-x86_64-protobuf
```
### Other systems
- install Protobuf v21
- point `CMAKE_PREFIX_PATH` environment variable to Protobuf v21 installation.
- install Protobuf
- point `CMAKE_PREFIX_PATH` environment variable to Protobuf installation.
## Troubleshooting