1

I'm trying to install py3exiv2 on macOS Big Sur with

pip install py3exiv2

and

pip3 install py3exiv2

both of which yield

ERROR: No .egg-info directory found in/private/var/folders/gf/g7tsgb6x4l9gyms1jm5kmlsc0000gn/T/pip-pip-egg-info-__dllgi9

Are there any workarounds for this issue?

I already have pyexiv2, exiv2 and boost.python running on Python 3.7.0

The Singularity
  • 2,428
  • 3
  • 19
  • 48

2 Answers2

0

I found a similar issue listed by Robert here for macOS Catalina,

Installing dependencies using

brew install boost-python3 gexiv2 pygobject3

Then downloading the py3exiv2 package and installing using

pip install py3exiv2-{version_number}.tar.gz

Works like a Charm on macOS Big Sur too!

The Singularity
  • 2,428
  • 3
  • 19
  • 48
  • The 1st link is broken (it points to this question). Please fix. – phd Jan 28 '21 at 11:18
  • This solution is not working for me. I'm on an M1 MacBook Pro. I still get the following error: "ERROR: No .egg-info directory found in /private/var/folders/9m/k2j6pg_95k9__bhyxsygz2540000gp/T/pip-pip-egg-info-otvmfouy" – AmateurAardvark Aug 24 '21 at 15:35
  • @AmateurAardvark can you post the trace too – The Singularity Aug 25 '21 at 05:55
  • @Luke Sure - too long to post in comments & as I suspect this may be an issue specific to the M1, I've posted a new question here: https://stackoverflow.com/questions/68923219/installation-of-py3exiv2-fails-on-mbp-m1-macos-big-sur-installationerror-no – AmateurAardvark Aug 25 '21 at 12:47
  • For M1 Macs you need to edit the setup.py to make this work again. I posted an answer here: https://stackoverflow.com/questions/68923219/installation-of-py3exiv2-fails-on-mbp-m1-macos-big-sur-installationerror-no/72088586#72088586 – JasonTS May 02 '22 at 15:02
0

The answer which was marked correct no longer worked for me in MacOS catalina. pip3 is not looking for the headers files in correct places. Check my answer here: https://answers.launchpad.net/py3exiv2/+question/700064

This is what fixed it for me:

To get around this problem do the following:

brew install boost-python3 gexiv2 pygobject3

After installing the dependencies, you'll face more errors. To get around those, set the corrext include and linker path and then install the module using pip.

export CPLUS_INCLUDE_PATH=/usr/local/Cellar/exiv2/0.27.5_1/include/:/usr/local/opt/libssh/include/:/usr/local/Cellar/boost/1.76.0/include/
export LDFLAGS="-L/usr/local/Cellar/boost-python3/1.76.0/lib -L/usr/local/Cellar/exiv2/0.27.5_1/lib"

 pip install py3exiv2

or if you are using pipenv


 CPLUS_INCLUDE_PATH=/usr/local/Cellar/exiv2/0.27.5_1/include/:/usr/local/opt/libssh/include/:/usr/local/Cellar/boost/1.76.0/include/ LDFLAGS="-L/usr/local/Cellar/boost-python3/1.76.0/lib -L/usr/local/Cellar/exiv2/0.27.5_1/lib" pipenv install
Jay
  • 11
  • 4
  • This currently does not work for m1 macs which have exiv2 and other files in /opt/ instead of /usr/. See my answer here for help: https://stackoverflow.com/questions/68923219/installation-of-py3exiv2-fails-on-mbp-m1-macos-big-sur-installationerror-no/72088586#72088586 – JasonTS May 02 '22 at 15:03