Versions
Describe the bug
I want to develop an application with Kivy for iOS devices.
But when I run my application with toolchain created Xcode project, "ModuleNotFoundError: No module named 'numpy'" error pops up in Xcode project
To Reproduce
1-install Numpy:
python3.7 -m pip install Numpy
2-Create Xcode project with a dummy python code which includes Numpy import:
sudo python3.7 /Users/emre/Documents/kivy-ios-master/kivy_ios/toolchain.py create wsb /Users/emre/Documents/Temp/WSB
(please see dummy python file below which will be converted into Xcode file)
main.txt
3-open project:
Modify team field ->your account
Modify build phases:run script:shell /bin/bash->rsync -av -O --no-perms --delete "/Users/emre/Documents/Temp/WSB"/ "$PROJECT_DIR"/YourApp
4-run project:
run project on any ios iPhoneSimulator or device and see the xcode error log below "ModuleNotFoundError: No module named 'numpy'"
Expected behavior
Loading project on iOS without any error
Logs
Xcode error log:
2021-03-31 22:47:54.965840+0200 wsb[68196:289893] Available orientation: KIVY_ORIENTATION=LandscapeLeft LandscapeRight Portrait PortraitUpsideDown
2021-03-31 22:47:54.966025+0200 wsb[68196:289893] Initializing python
2021-03-31 22:47:55.216308+0200 wsb[68196:289893] Running main.py: /Users/emre/Library/Developer/CoreSimulator/Devices/91B8D870-307A-4B75-A778-FD3C42FB941C/data/Containers/Bundle/Application/29898B5A-D5B1-43A7-B198-C25A0CE3530B/wsb.app/YourApp/main.pyc
Traceback (most recent call last):
File "/Users/emre/Documents/kivy-ios-master/wsb-ios/YourApp/main.py", line 1, in
File "/Users/emre/Library/Developer/CoreSimulator/Devices/91B8D870-307A-4B75-A778-FD3C42FB941C/data/Containers/Bundle/Application/29898B5A-D5B1-43A7-B198-C25A0CE3530B/wsb.app/lib/python3.9/site-packages/imutils/init.py", line 8, in
from .convenience import translate
File "/Users/emre/Library/Developer/CoreSimulator/Devices/91B8D870-307A-4B75-A778-FD3C42FB941C/data/Containers/Bundle/Application/29898B5A-D5B1-43A7-B198-C25A0CE3530B/wsb.app/lib/python3.9/site-packages/imutils/convenience.py", line 5, in
import numpy as np
ModuleNotFoundError: No module named 'numpy'
2021-03-31 22:47:55.224631+0200 wsb[68196:289893] Application quit abnormally!
2021-03-31 22:47:55.234595+0200 wsb[68196:289893] Leaving
Toolchain error log 1:
sudo python3.7 toolchain.py build python3 numpy
Toolchain_error_log.txt
Toolchain error log 2:
sudo python3.7 toolchain.py pip install numpy
toolchain_pip_install.txt
Additional context
As you can see above logs, i have tried "sudo python3.7 toolchain.py build python3 numpy" and "sudo python3.7 toolchain.py pip install numpy" commands either, none of them worked.
2 Additional points I have to mention which could be reason of build problems:
1- Python3.9 is used in toolchain:
Somehow toolchain is using Python3.9(Please see my log files to see if python3.9 is used),
although python3.7 command is sent for toolchain methods "sudo python3.7 toolchain.py build python3 numpy".
If it is the problem than could anyone please inform me what i have to do to switch python3.7?
Note: I have also tried following steps to see if python3.9 would work fine or not
A-
B-
2-when i tried to create my xcode project, i got following error about cython at the beginning :
sudo python3.7 /Users/emre/Documents/kivy-ios-master/kivy_ios/toolchain.py create wsb /Users/emre/Documents/Temp/WSB
/Users/emre/Documents/kivy-ios-master/kivy_ios/toolchain.py:94: DeprecationWarning: ChromeDownloader style of invoking requests is deprecated. Use newer urlopen functions/methods
urlretrieve = ChromeDownloader().retrieve
[ERROR ] Missing requirement: cython is not installed
than i debugged the code and recognized that toolchain was trying to execute cython exec from /usr/local/bin/cython directory
but there was no cython.exec there. Therefore i copied my cython exec from my Python3.7 folder into /usr/local/bin
and than I could create my xcode project.
Note:I have tried also to copy my cython file to /usr/local/bin from python3.9, after creating Xcode project with python3.9 and executing, I got the same "Numpy module not found" error.
My Python Pip installation versions:
emres-MacBook-Air:kivy-ios-master emre$ python3.7 -m pip list
Package Version
absl-py 0.11.0
appnope 0.1.2
appscript 1.1.1
argon2-cffi 20.1.0
arrow 1.0.3
astor 0.8.1
async-generator 1.10
attrs 20.3.0
backcall 0.2.0
binaryornot 0.4.4
bleach 3.3.0
cached-property 1.5.2
cachetools 4.2.1
certifi 2020.12.5
cffi 1.14.5
chardet 4.0.0
click 7.1.2
colorama 0.4.4
contextlib2 0.6.0.post1
cookiecutter 1.7.2
cryptography 2.9.2
cycler 0.10.0
Cython 0.27.3
decorator 4.4.2
defusedxml 0.6.0
docopt 0.6.2
docutils 0.16
entrypoints 0.3
flatbuffers 1.12
future 0.18.2
gast 0.2.2
google-api-core 1.26.1
google-api-python-client 1.8.0
google-auth 1.27.1
google-auth-httplib2 0.1.0
google-pasta 0.2.0
googleapis-common-protos 1.53.0
grpcio 1.35.0
h5py 3.1.0
httplib2 0.19.0
idna 2.10
importlib-metadata 3.7.2
imutils 0.5.4
ipykernel 5.4.3
ipython 7.20.0
ipython-genutils 0.2.0
ipywidgets 7.6.3
jedi 0.18.0
Jinja2 2.11.3
jinja2-time 0.2.0
jsonschema 3.2.0
jupyter 1.0.0
jupyter-client 6.1.11
jupyter-console 6.2.0
jupyter-core 4.7.1
jupyterlab-pygments 0.1.2
jupyterlab-widgets 1.0.0
Keras-Applications 1.0.8
Keras-Preprocessing 1.1.2
keyring 23.0.0
Kivy 2.0.0
Kivy-Garden 0.1.4
kivy-ios 1.2.1
kiwisolver 1.3.1
lvis 0.5.3
lxml 4.6.2
Markdown 3.3.3
MarkupSafe 1.1.1
matplotlib 3.3.4
mistune 0.8.4
mock 4.0.3
MouseInfo 0.1.3
nbclient 0.5.2
nbconvert 6.0.7
nbformat 5.1.2
nest-asyncio 1.5.1
notebook 6.2.0
numpy 1.16.5
opencv-python 4.5.1.48
openstep-parser 1.5.3
opt-einsum 3.3.0
packaging 20.9
pandas 1.2.2
pandocfilters 1.4.3
parso 0.8.1
pbxproj 2.5.1
pexpect 4.8.0
pickleshare 0.7.5
Pillow 8.1.0
pip 21.0.1
pkginfo 1.7.0
poyo 0.5.0
prometheus-client 0.9.0
prompt-toolkit 3.0.16
protobuf 3.14.0
ptyprocess 0.7.0
pyasn1 0.4.8
pyasn1-modules 0.2.8
PyAutoGUI 0.9.50
pycocotools 2.0.2
pycparser 2.20
PyGetWindow 0.0.9
Pygments 2.7.4
PyJWT 2.0.1
PyMsgBox 1.0.9
pyobjc 6.2.1
pyobjc-core 6.2.1
pyobjc-framework-Accounts 6.2.1
pyobjc-framework-AddressBook 6.2.1
pyobjc-framework-AdSupport 6.2.1
pyobjc-framework-AppleScriptKit 6.2.1
pyobjc-framework-AppleScriptObjC 6.2.1
pyobjc-framework-ApplicationServices 6.2.1
pyobjc-framework-AuthenticationServices 6.2.1
pyobjc-framework-AutomaticAssessmentConfiguration 6.2.1
pyobjc-framework-Automator 6.2.1
pyobjc-framework-AVFoundation 6.2.1
pyobjc-framework-AVKit 6.2.1
pyobjc-framework-BusinessChat 6.2.1
pyobjc-framework-CalendarStore 6.2.1
pyobjc-framework-CFNetwork 6.2.1
pyobjc-framework-CloudKit 6.2.1
pyobjc-framework-Cocoa 6.2.1
pyobjc-framework-Collaboration 6.2.1
pyobjc-framework-ColorSync 6.2.1
pyobjc-framework-Contacts 6.2.1
pyobjc-framework-ContactsUI 6.2.1
pyobjc-framework-CoreAudio 6.2.1
pyobjc-framework-CoreAudioKit 6.2.1
pyobjc-framework-CoreBluetooth 6.2.1
pyobjc-framework-CoreData 6.2.1
pyobjc-framework-CoreHaptics 6.2.1
pyobjc-framework-CoreLocation 6.2.1
pyobjc-framework-CoreMedia 6.2.1
pyobjc-framework-CoreMediaIO 6.2.1
pyobjc-framework-CoreML 6.2.1
pyobjc-framework-CoreMotion 6.2.1
pyobjc-framework-CoreServices 6.2.1
pyobjc-framework-CoreSpotlight 6.2.1
pyobjc-framework-CoreText 6.2.1
pyobjc-framework-CoreWLAN 6.2.1
pyobjc-framework-CryptoTokenKit 6.2.1
pyobjc-framework-DeviceCheck 6.2.1
pyobjc-framework-DictionaryServices 6.2.1
pyobjc-framework-DiscRecording 6.2.1
pyobjc-framework-DiscRecordingUI 6.2.1
pyobjc-framework-DiskArbitration 6.2.1
pyobjc-framework-DVDPlayback 6.2.1
pyobjc-framework-EventKit 6.2.1
pyobjc-framework-ExceptionHandling 6.2.1
pyobjc-framework-ExecutionPolicy 6.2.1
pyobjc-framework-ExternalAccessory 6.2.1
pyobjc-framework-FileProvider 6.2.1
pyobjc-framework-FileProviderUI 6.2.1
pyobjc-framework-FinderSync 6.2.1
pyobjc-framework-FSEvents 6.2.1
pyobjc-framework-GameCenter 6.2.1
pyobjc-framework-GameController 6.2.1
pyobjc-framework-GameKit 6.2.1
pyobjc-framework-GameplayKit 6.2.1
pyobjc-framework-ImageCaptureCore 6.2.1
pyobjc-framework-IMServicePlugIn 6.2.1
pyobjc-framework-InputMethodKit 6.2.1
pyobjc-framework-InstallerPlugins 6.2.1
pyobjc-framework-InstantMessage 6.2.1
pyobjc-framework-Intents 6.2.1
pyobjc-framework-IOSurface 6.2.1
pyobjc-framework-iTunesLibrary 6.2.1
pyobjc-framework-LatentSemanticMapping 6.2.1
pyobjc-framework-LaunchServices 6.2.1
pyobjc-framework-libdispatch 6.2.1
pyobjc-framework-LinkPresentation 6.2.1
pyobjc-framework-LocalAuthentication 6.2.1
pyobjc-framework-MapKit 6.2.1
pyobjc-framework-MediaAccessibility 6.2.1
pyobjc-framework-MediaLibrary 6.2.1
pyobjc-framework-MediaPlayer 6.2.1
pyobjc-framework-MediaToolbox 6.2.1
pyobjc-framework-Metal 6.2.1
pyobjc-framework-MetalKit 6.2.1
pyobjc-framework-ModelIO 6.2.1
pyobjc-framework-MultipeerConnectivity 6.2.1
pyobjc-framework-NaturalLanguage 6.2.1
pyobjc-framework-NetFS 6.2.1
pyobjc-framework-Network 6.2.1
pyobjc-framework-NetworkExtension 6.2.1
pyobjc-framework-NotificationCenter 6.2.1
pyobjc-framework-OpenDirectory 6.2.1
pyobjc-framework-OSAKit 6.2.1
pyobjc-framework-OSLog 6.2.1
pyobjc-framework-PencilKit 6.2.1
pyobjc-framework-Photos 6.2.1
pyobjc-framework-PhotosUI 6.2.1
pyobjc-framework-PreferencePanes 6.2.1
pyobjc-framework-PushKit 6.2.1
pyobjc-framework-Quartz 6.2.1
pyobjc-framework-QuickLookThumbnailing 6.2.1
pyobjc-framework-SafariServices 6.2.1
pyobjc-framework-SceneKit 6.2.1
pyobjc-framework-ScreenSaver 6.2.1
pyobjc-framework-ScriptingBridge 6.2.1
pyobjc-framework-SearchKit 6.2.1
pyobjc-framework-Security 6.2.1
pyobjc-framework-SecurityFoundation 6.2.1
pyobjc-framework-SecurityInterface 6.2.1
pyobjc-framework-ServiceManagement 6.2.1
pyobjc-framework-Social 6.2.1
pyobjc-framework-SoundAnalysis 6.2.1
pyobjc-framework-Speech 6.2.1
pyobjc-framework-SpriteKit 6.2.1
pyobjc-framework-StoreKit 6.2.1
pyobjc-framework-SyncServices 6.2.1
pyobjc-framework-SystemConfiguration 6.2.1
pyobjc-framework-SystemExtensions 6.2.1
pyobjc-framework-UserNotifications 6.2.1
pyobjc-framework-VideoSubscriberAccount 6.2.1
pyobjc-framework-VideoToolbox 6.2.1
pyobjc-framework-Vision 6.2.1
pyobjc-framework-WebKit 6.2.1
pyparsing 2.4.7
pyperclip 1.8.2
PyQt5 5.12
PyQt5-sip 4.19.19
PyRect 0.1.4
pyrsistent 0.17.3
PyScreeze 0.1.26
python-dateutil 2.8.1
python-slugify 4.0.1
PyTweening 1.0.3
pytz 2021.1
pyzmq 22.0.3
qtconsole 5.0.2
QtPy 1.9.0
readme-renderer 29.0
requests 2.25.1
requests-toolbelt 0.9.1
rfc3986 1.4.0
rsa 4.7.2
rubicon-objc 0.4.0
scipy 1.6.0
Send2Trash 1.5.0
setuptools 53.0.0
sh 1.12.14
six 1.15.0
tensorboard 1.14.0
tensorflow 1.14.1
tensorflow-estimator 1.14.0
termcolor 1.1.0
terminado 0.9.2
testpath 0.4.4
text-unidecode 1.3
tf-slim 1.1.0
tflite-runtime 2.5.0
tinydb 4.4.0
tornado 6.1
tqdm 4.59.0
traitlets 5.0.5
twilio 6.46.0
twine 3.3.0
typing-extensions 3.7.4.3
uritemplate 3.0.1
urllib3 1.26.3
wcwidth 0.2.5
webencodings 0.5.1
Werkzeug 1.0.1
wheel 0.36.2
widgetsnbextension 3.5.1
wrapt 1.12.1
zipp 3.4.0
python3.7 toolchain.py recipes
audiostream master
click 7.1.2
curly master
cymunk master
ffmpeg n4.3.1
ffpyplayer 4.2.0
flask 1.1.2
freetype 2.5.5
host_setuptools3 54.1.2
hostlibffi 3.2.1
hostopenssl 1.1.1g
hostpython3 3.9.2
ios master
itsdangerous 1.1.0
jinja2 2.11.2
kivent_core master
kivy b5ec51ed2315a9a890f264b0df6d23c8e6341d42
libcurl 7.65.3
libffi 3.2.1
libjpeg v9a
libpng 1.6.26
libzbar 0.10
markupsafe 1.1.1
netifaces 0.10.9
numpy 1.16.4
openssl 1.1.1g
photolibrary master
pillow 6.1.0
plyer master
pycrypto 2.6.1
pykka 1.2.1
pyobjus master
python3 3.9.2
pyyaml 3.11
sdl2 7cc4fc886d9e
sdl2_image 2.0.4
sdl2_mixer 2.0.4
sdl2_ttf 2.0.14
werkzeug 1.0.1
zbarlight 1.2
emres-MacBook-Air:kivy-ios-master emre$ python3.7 toolchain.py status
audiostream - Not built
click - Not built
curly - Not built
cymunk - Not built
ffmpeg - Not built
ffpyplayer - Not built
flask - Not built
freetype - Build OK (built at 2021-03-29 19:16:13.139727)
host_setuptools - Not built
host_setuptools3 - Build OK (built at 2021-03-29 19:37:22.434551)
hostlibffi - Build OK (built at 2021-03-31 20:53:58.024916)
hostopenssl - Build OK (built at 2021-03-29 19:18:18.673672)
hostpython3 - Build OK (built at 2021-03-29 19:28:20.452712)
ios - Build OK (built at 2021-03-29 19:37:39.674279)
itsdangerous - Not built
jinja2 - Not built
kivent_core - Not built
kivy - Build OK (built at 2021-03-29 19:43:53.376505)
libcurl - Not built
libffi - Build OK (built at 2021-03-29 19:20:55.490678)
libjpeg - Not built
libpng - Not built
libzbar - Not built
markupsafe - Not built
netifaces - Not built
numpy - Not built
openssl - Build OK (built at 2021-03-29 19:23:26.620631)
photolibrary - Not built
pillow - Not built
plyer - Not built
pycrypto - Not built
pykka - Not built
pyobjus - Build OK (built at 2021-03-29 19:38:51.183926)
python3 - Build OK (built at 2021-03-29 19:37:13.653062)
pyyaml - Not built
sdl2 - Build OK (built at 2021-03-29 19:24:26.298797)
sdl2_image - Build OK (built at 2021-03-29 19:28:43.417565)
sdl2_mixer - Build OK (built at 2021-03-29 19:29:25.476809)
sdl2_ttf - Build OK (built at 2021-03-29 19:29:28.870168)
werkzeug - Not built
zbarlight - Not built
emres-Air:kivy-ios-master emre$ python3.7 -m pip list
Package Version
------------------------------------------------- -----------
absl-py 0.11.0
appnope 0.1.2
appscript 1.1.1
argon2-cffi 20.1.0
arrow 1.0.3
astor 0.8.1
async-generator 1.10
attrs 20.3.0
backcall 0.2.0
binaryornot 0.4.4
bleach 3.3.0
cached-property 1.5.2
cachetools 4.2.1
certifi 2020.12.5
cffi 1.14.5
chardet 4.0.0
click 7.1.2
colorama 0.4.4
contextlib2 0.6.0.post1
cookiecutter 1.7.2
cryptography 2.9.2
cycler 0.10.0
Cython 0.29.17
numpy 1.18.2
emres-Air:kivy-ios-master emre$