tcgoetz/GarminDB

"make setup" do not find bash on newer mac OSX

thebigredorb opened this issue · 2 comments

Describe the bug
'make setup' fails on OSX when bash is located in /bin/bash

The reason may be that SHELL is defined as "/usr/local/bin/bash" in the submodule defines.mk files
I have succeessfully worked around error by correcting this, for example in Fit/defines.mk, I did


# SHELL=/usr/local/bin/bash
SHELL := $(shell which bash)

This fixed the problem for me. I will happily submit a pull request if wanted.

Thank you for this project, it is great!

To Reproduce
Steps to reproduce the behavior:

  1. Clone project on Mac with bash located in /bin/bash. As it is on my OSX Sonoma 14.2.1
  2. run 'make setup' from terminal
  3. You get error:

make[1]: /usr/local/bin/bash: Command not found
make[1]: /usr/local/bin/bash: No such file or directory
make[1]: *** [deps] Error 1
make: *** [Fit-deps] Error 2

Expected behavior
'make setup' completes without error

Logs
(venv-3.11) MacBook-Pro-7:GarminDB harste$ make setup
$PROJECT_BASE is [/Users/harste/dev/GarminDB]
$PLATFORM is [Darwin]
$SHELL is [/bin/sh]
$PIP_PATH is [/Users/harste/dev/GarminDB/venv-3.11/bin/pip3]
python3 -m venv --upgrade-deps /Users/harste/dev/GarminDB/.venv
git submodule init
Submodule 'Fit' (https://github.com/tcgoetz/Fit.git) registered for path 'Fit'
Submodule 'Plugins' (https://github.com/tcgoetz/GarminDbPlugins.git) registered for path 'Plugins'
Submodule 'Tcx' (https://github.com/tcgoetz/Tcx.git) registered for path 'Tcx'
Submodule 'utilities' (https://github.com/tcgoetz/utilities.git) registered for path 'utilities'
git submodule update
Cloning into '/Users/harste/dev/GarminDB/Fit'...
Cloning into '/Users/harste/dev/GarminDB/Plugins'...
Cloning into '/Users/harste/dev/GarminDB/Tcx'...
Cloning into '/Users/harste/dev/GarminDB/utilities'...
Submodule path 'Fit': checked out 'b285a1bd207da05ff57022c90ca95acde4f31055'
Submodule path 'Plugins': checked out '6d9cd8bb624ada981bc7c91fdf5d8fdb54311ff7'
Submodule path 'Tcx': checked out '0608077ca6c8f9d44a88e51e39c6e24cdf4c6086'
Submodule path 'utilities': checked out '73ffce12ddd360328e86aeae751fa94513063ea1'
/Library/Developer/CommandLineTools/usr/bin/make -C Fit deps
pip3 install --upgrade --requirement requirements.txt
make[1]: /usr/local/bin/bash: Command not found
make[1]: /usr/local/bin/bash: No such file or directory
make[1]: *** [deps] Error 1
make: *** [Fit-deps] Error 2

garmin.log: (I did not find this file)
Please run bugreport.sh and attach bugreport.zip.
I do not find "bugreport.sh"

Additional context
Add any other context about the problem here.

MacOS Sonoma 14.2.1 - I had to modify the bash path to /bin/bash in each of:

./defines.mk
./Fit/defines.mk
./utilities/defines.mk
./Tcx/defines.mk

Fix in the develop branch.