skylarbpayne edited a comment on issue #8172: URL: https://github.com/apache/airflow/issues/8172#issuecomment-681227551
## Potential Fix Just see this to skip all the ugly details: So concretely, here's how to install with homebrew + get airflow to work (tried this from fresh install, so I _think_ it should work for all of you too): ``` # Note: these instructions are for python3.7 but can be loosely modified for other versions brew install [email protected] virtualenv -p /usr/local/opt/[email protected]/Frameworks/Python.framework/Versions/3.7/bin/python3 .toy-venv source .toy-venv/bin/activate pip install apache-airflow python >>> import setproctitle # Success! ``` ## Ugly Details Mercurial ran into a similar issue some time ago: https://bz.mercurial-scm.org/show_bug.cgi?id=5858 According to that ticket, the issue is that setproctitle uses a non-public Python API, and depending on how your python was compiled, it may not be discoverable by setproctitle. Versions of python installed to OS X with the standard python installer (i.e. downloaded from the python website) seem to always have a file like: ``` /Library/Frameworks/Python.framework/Versions/3.7/lib/libpython3.7.dylib ``` And if we use `nm` on this, we find that it contains the definition `setproctitle` relies on: ``` nm -gU /Library/Frameworks/Python.framework/Versions/3.7/lib/libpython3.7.dylib | grep -i argcargv 0000000000135630 T _Py_GetArgcArgv ``` By default, the "bin" directory used by homebrew is `/usr/local/opt/bin` -- libpython is not there. But there's also a `Frameworks` install (Note: I'm not smart enough to understand why this divide exists -- maybe someone knowledgeable about OS X, Python, and/or Homebrew can chime in :) ). If we check out the Frameworks install, it has the dylib and has the required method defined: ``` nm -gU /usr/local/opt/[email protected]/Frameworks/Python.framework/Versions/3.7/lib/libpython3.7.dylib | grep -i argcargv ``` ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected]
