Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

delocate-wheel command not found #305

Closed
MrBitBucket opened this issue Feb 11, 2020 · 7 comments
Closed

delocate-wheel command not found #305

MrBitBucket opened this issue Feb 11, 2020 · 7 comments

Comments

@MrBitBucket
Copy link

MrBitBucket commented Feb 11, 2020

This OSX 2.7 build fails at the end of the build phase with delocate-wheel not found

https://travis-ci.org/MrBitBucket/pyRXP-mirror/jobs/648794627

all the parallel builds (linux & OSX) work. I am using devel/latest as of 20200211 ie

6b0ddb5

my normal goto would be a virtual environment built with the base python, but I don't know how to modify the osx scripts to achieve that. The pillow .travis.yml files have got rid of python 2.7; probably I should as well, but several projects still rely on it and my colleague has a mac :(

@jamadden
Copy link

That looks an awful lot like an issue with virtualenv 20: pypa/virtualenv#1555

@matthew-brett
Copy link
Collaborator

@jamadden - yes it does look like that ... The virtualenv maintainers have been very responsive so far ...

@wiktorn
Copy link

wiktorn commented Feb 12, 2020

Wouldn't following change workaround this issue:

diff --git a/osx_utils.sh b/osx_utils.sh
index 45db73d..b5355dc 100644
--- a/osx_utils.sh
+++ b/osx_utils.sh
@@ -433,7 +433,7 @@ function install_delocate {
 function repair_wheelhouse {
     local wheelhouse=$1
     install_delocate
-    delocate-wheel $wheelhouse/*.whl # copies library dependencies into wheel
+    $(dirname $PYTHON_EXE)/delocate-wheel $wheelhouse/*.whl # copies library dependencies into wheel
 }

@MrBitBucket
Copy link
Author

MrBitBucket commented Feb 16, 2020

I tried two solutions mentioned above. First switched to manylinux 2010; that did not improve for OSX Python 2.7.

Then tried the repair_wheelhouse from wiktorn solution proposed above; that fails with this

Installing collected packages: delocate
  WARNING: The scripts delocate-addplat, delocate-fuse, delocate-listdeps, delocate-patch, delocate-path and delocate-wheel are installed in '/Library/Frameworks/Python.framework/Versions/2.7/bin' which is not on PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed delocate-0.8.0
.travis-config.sh: line 19: /Users/travis/build/MrBitBucket/pyRXP-mirror/venv/bin/delocate-wheel: No such file or directory

The delocate scripts seem to be put into the framework python bin area not the venv/bin directory.

I tried this hack in my config.sh

if [ -n "$IS_OSX" ]; then
	function repair_wheelhouse {
		local wheelhouse=$1
		install_delocate
		if [ -x $(dirname $PYTHON_EXE)/delocate-wheel ]; then
			$(dirname $PYTHON_EXE)/delocate-wheel $wheelhouse/*.whl # copies library dependencies into wheel
		else
			/Library/Frameworks/Python.framework/Versions/2.7/bin/delocate-wheel $wheelhouse/*.whl # copies library dependencies into wheel
		fi
	}
fi

which does work for me. Seems a bit fragile though.

@matthew-brett
Copy link
Collaborator

Is this fixed? @gaborbernat's was very quick in finding / fixing the problem and making a new release of virtualenv, over at pypa/virtualenv#1641. Can you confirm this works for your build?

@wiktorn
Copy link

wiktorn commented Feb 21, 2020

Works for me. Thanks, that was quick!

@mattip
Copy link
Collaborator

mattip commented Mar 17, 2020

Closing, please reopen if more help is needed

@mattip mattip closed this as completed Mar 17, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants