Comments (3)
I've had the same issue, and it was because i used the default python from MacOS X ( /usr/bin/python ) if i use the one from ( /usr/local/bin/python ) it works
from esky.
The solution from loopingz didn't work in my case, there is no /usr/local/bin/python on my operating system.
But I found a workaround. I already had the same kind of issue with py2app alone and it seems to be the same issue with esky when using py2app.
For an unknown reason, py2app does not look for python modules on the host computer, it only looks in the ####.app directories. And guess what ? Because fcntl is a standard python package, it is not packaged with in the ####.app.
The solution consists to indicate to py2app to look after python modules in the host directories. Here is the solution:
In the setup.py file
setup_kwargs['options'] = {
'py2app': {
'plist': {
'PyResourcePackages': [
'/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/'
'/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload/'
]
}
},
'bdist_esky': {
'freezer_module': 'py2app',
'freezer_options': {
'plist': {
'PyResourcePackages': [
'/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/'
'/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload/'
]
}
}
}
}
This solution is verbose on purpose and can be easily improved/simplified. Notice the fact that the plist
informations are duplicated in py2app
and in freezer_options
. Esky does not retrieve information from py2app
field and py2app does not retrieve information from bdist_esky
field... So if you want to have a generic setup.py able to build app with py2app or with esky+py2app, the information needs to be duplicated.
For a basic application, only these two directories need to be added in PyResourcePackages
, but if you use advanced application, for example with a graphical interface, maybe more directories need to be added. In my case, the app uses wxPython, and the following directory was needed:
/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/
from esky.
Thanks for reaching out. Unfortunately this project is no longer actively maintained, so I'm going to move it into archive mode:
https://rfk.id.au/blog/entry/archiving-open-source-projects/
from esky.
Related Issues (20)
- Unable to get admin rights HOT 5
- Import error with pythonnet HOT 12
- cxfreeze windows digest not euqal HOT 1
- continous integration appveyor HOT 4
- Esky falls over using 64bit python on windows HOT 1
- Esky falls over using 64bit linux HOT 1
- py2exe on windows HOT 1
- py2app on mac HOT 1
- OSX: unorderable types: str() > NoneType() while creating patch HOT 5
- unable to run bootrap file using py2exe and python3.4 HOT 4
- py2exe py2.7, failing on py3k_master branch
- Esky differential patches not working HOT 6
- extract overwritting case sensitive files
- Error for running the tutorial esky-master\tutorial\stage0\ on my Windows10 HOT 2
- Error for running python setup.py bdist_esky HOT 9
- Windows system error with auto update HOT 3
- esky in windows enviornment HOT 6
- Error running bootstrap executable created by py2exe with Python 3.4 HOT 2
- tutorials fail HOT 1
- locale.getdefaultlocale() returns None HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from esky.