Failing Mac Build
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 54/100
Research direction
Start with the failing Intel macOS job linked in the issue, then inspect .github/workflows/build.yaml around the Mac dependency installation step (lines 51–55). Confirm the failure from the job logs before changing the workflow; done means the Intel Mac build passes without disrupting the latest-version Mac build.
Written by the indexing model from the issue text.
Description
The latest version Mac build is passing, but we see the Intel version Mac build failing here:
https://github.com/google/sbsim/actions/runs/34853141529/job/111936919192?pr=187
AI suggestions for a fix, below:
I'll retrieve the job logs to identify the failure and help you find a solution.Now let me get the workflow file to understand the full context:## Solution for Failing Job
The job is failing during the macOS dependency installation step. The issue is a Homebrew symlink conflict when installing ffmpeg and its dependency openssl@3.
Root Cause
When Homebrew installs openssl@3, it attempts to symlink /usr/local/bin/openssl but this fails because the target already exists or there's a permission/conflict issue. This causes the brew install command to exit with code 1, stopping the entire workflow.
Recommended Fix
The most reliable solution is to use --force when installing the conflicting packages, or to unlink existing packages first. Modify the macOS dependency installation step in .github/workflows/build.yaml (lines 51-55):
Option 1: Force reinstall (Recommended)
- name: Install system dependencies (on Mac)
if: runner.os == 'macOS'
run: |
brew update
brew install --force protobuf@21 ffmpeg
Option 2: Unlink conflicting packages first
- name: Install system dependencies (on Mac)
if: runner.os == 'macOS'
run: |
brew update
brew unlink openssl@3 2>/dev/null || true
brew install protobuf@21 ffmpeg
Option 3: Skip the symlink step entirely
- name: Install system dependencies (on Mac)
if: runner.os == 'macOS'
run: |
brew update
brew install --overwrite protobuf@21 ffmpeg
Option 1 is the simplest and most straightforward approach. The --force flag tells Homebrew to proceed even if there are symlink conflicts, allowing the installation to complete successfully.
- Dominant language
- Python
- Stars
- 132
- Forks
- 64
- PR merge metrics
- No merged PRs in 30d
Getting set up
- Ships a Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from google/sbsim
-
Fix Ubuntu Latest BuildPossibly taken @hamid-digitalmarketer claimed this 7 days ago. Opengood first issue help wanted
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Baseline schedule policy emits actions in the wrong order for SB1Possibly taken @Sidharth1743 claimed this 26 days ago. Open
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
SAC actor crashes in training (train.py) : TanhNormalProjectionNetwork.call() got unexpected network_statePossibly taken @Sidharth1743 claimed this 26 days ago. Open
Difficulty 1/5 Under an hour Newbie friendliness 85/100
-
Convert `WeatherController.seconds_to_rads` to a Static MethodPossibly taken @Mustaphayinka claimed this 75 days ago. Open
Difficulty 1/5 Under an hour Newbie friendliness 85/100
-
Baseline SchedulePolicy day/night switches early vs SB1 local comfort window (UTC hod + utcoffset)Possibly taken @burgulvedant claimed this 9 days ago. Open
Difficulty 3/5 1-2 days Newbie friendliness 55/100
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
autowarefoundation/autoware_carla_scenario#1485 ·
Maintainers usually reply within 1 day
-
needs-area-label
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
Maintainers usually reply within 2 days
-
enhancement good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Official-Space-AI/OpenPhysGraspGen#114 ·
Maintainers usually reply within 2 days
-
changelog investigate
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
ramnes/notion-sdk-py#441 ·
-
copy_tree splits same-file errors into charactersPossibly taken @Gambit-Checkmate claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Maintainers usually reply within 14 days