I know that Bash (Ubuntu) on Windows is still in beta, but I would like to help make it better overall and for my use and to help the devs narrow down the issue:
When I try and install packages like Flask or Hug when using pip for Python 3, I get errors for almost every package, while pip for Python 2 works just fine. Note that I use virtualenv for both. Also even though it's using cached packages, the issue persists when they are freshly downloaded. Here is an example for Jinja2 for Python 3:
(test) adam@WORKSTATION:~$ pip install Jinja2
Collecting Jinja2
Using cached Jinja2-2.8-py2.py3-none-any.whl
Collecting MarkupSafe (from Jinja2)
Using cached MarkupSafe-0.23.tar.gz
Building wheels for collected packages: MarkupSafe
Running setup.py bdist_wheel for MarkupSafe ... error
Complete output from command /home/adam/test/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-_fpuv22h/MarkupSafe/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /tmp/tmpff6o7wfcpip-wheel- --python-tag cp34:
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-x86_64-3.4
creating build/lib.linux-x86_64-3.4/markupsafe
copying markupsafe/__init__.py -> build/lib.linux-x86_64-3.4/markupsafe
copying markupsafe/_compat.py -> build/lib.linux-x86_64-3.4/markupsafe
copying markupsafe/_constants.py -> build/lib.linux-x86_64-3.4/markupsafe
copying markupsafe/_native.py -> build/lib.linux-x86_64-3.4/markupsafe
copying markupsafe/tests.py -> build/lib.linux-x86_64-3.4/markupsafe
running egg_info
writing MarkupSafe.egg-info/PKG-INFO
writing dependency_links to MarkupSafe.egg-info/dependency_links.txt
writing top-level names to MarkupSafe.egg-info/top_level.txt
warning: manifest_maker: standard file '-c' not found
reading manifest file 'MarkupSafe.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'MarkupSafe.egg-info/SOURCES.txt'
copying markupsafe/_speedups.c -> build/lib.linux-x86_64-3.4/markupsafe
running build_ext
building 'markupsafe._speedups' extension
creating build/temp.linux-x86_64-3.4
creating build/temp.linux-x86_64-3.4/markupsafe
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.4m -I/home/adam/test/include/python3.4m -c markupsafe/_speedups.c -o build/temp.linux-x86_64-3.4/markupsafe/_speedups.o
x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 build/temp.linux-x86_64-3.4/markupsafe/_speedups.o -o build/lib.linux-x86_64-3.4/markupsafe/_speedups.cpython-34m.so
installing to build/bdist.linux-x86_64/wheel
running install
running install_lib
creating build/bdist.linux-x86_64
creating build/bdist.linux-x86_64/wheel
creating build/bdist.linux-x86_64/wheel/markupsafe
copying build/lib.linux-x86_64-3.4/markupsafe/__init__.py -> build/bdist.linux-x86_64/wheel/markupsafe
copying build/lib.linux-x86_64-3.4/markupsafe/_compat.py -> build/bdist.linux-x86_64/wheel/markupsafe
copying build/lib.linux-x86_64-3.4/markupsafe/_constants.py -> build/bdist.linux-x86_64/wheel/markupsafe
copying build/lib.linux-x86_64-3.4/markupsafe/_native.py -> build/bdist.linux-x86_64/wheel/markupsafe
copying build/lib.linux-x86_64-3.4/markupsafe/_speedups.c -> build/bdist.linux-x86_64/wheel/markupsafe
copying build/lib.linux-x86_64-3.4/markupsafe/_speedups.cpython-34m.so -> build/bdist.linux-x86_64/wheel/markupsafe
copying build/lib.linux-x86_64-3.4/markupsafe/tests.py -> build/bdist.linux-x86_64/wheel/markupsafe
running install_egg_info
Copying MarkupSafe.egg-info to build/bdist.linux-x86_64/wheel/MarkupSafe-0.23-py3.4.egg-info
error: [Errno 22] Invalid argument: 'MarkupSafe.egg-info/PKG-INFO'
----------------------------------------
Failed building wheel for MarkupSafe
Running setup.py clean for MarkupSafe
Failed to build MarkupSafe
Installing collected packages: MarkupSafe, Jinja2
Running setup.py install for MarkupSafe ... error
Complete output from command /home/adam/test/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-_fpuv22h/MarkupSafe/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-or8krd05-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/adam/test/include/site/python3.4/MarkupSafe:
running install
running build
running build_py
creating build
creating build/lib.linux-x86_64-3.4
creating build/lib.linux-x86_64-3.4/markupsafe
copying markupsafe/__init__.py -> build/lib.linux-x86_64-3.4/markupsafe
copying markupsafe/_compat.py -> build/lib.linux-x86_64-3.4/markupsafe
copying markupsafe/_constants.py -> build/lib.linux-x86_64-3.4/markupsafe
copying markupsafe/_native.py -> build/lib.linux-x86_64-3.4/markupsafe
copying markupsafe/tests.py -> build/lib.linux-x86_64-3.4/markupsafe
running egg_info
writing top-level names to MarkupSafe.egg-info/top_level.txt
writing MarkupSafe.egg-info/PKG-INFO
writing dependency_links to MarkupSafe.egg-info/dependency_links.txt
warning: manifest_maker: standard file '-c' not found
reading manifest file 'MarkupSafe.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'MarkupSafe.egg-info/SOURCES.txt'
copying markupsafe/_speedups.c -> build/lib.linux-x86_64-3.4/markupsafe
running build_ext
building 'markupsafe._speedups' extension
creating build/temp.linux-x86_64-3.4
creating build/temp.linux-x86_64-3.4/markupsafe
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.4m -I/home/adam/test/include/python3.4m -c markupsafe/_speedups.c -o build/temp.linux-x86_64-3.4/markupsafe/_speedups.o
x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 build/temp.linux-x86_64-3.4/markupsafe/_speedups.o -o build/lib.linux-x86_64-3.4/markupsafe/_speedups.cpython-34m.so
running install_lib
creating /home/adam/test/lib/python3.4/site-packages/markupsafe
copying build/lib.linux-x86_64-3.4/markupsafe/__init__.py -> /home/adam/test/lib/python3.4/site-packages/markupsafe
copying build/lib.linux-x86_64-3.4/markupsafe/_compat.py -> /home/adam/test/lib/python3.4/site-packages/markupsafe
copying build/lib.linux-x86_64-3.4/markupsafe/_constants.py -> /home/adam/test/lib/python3.4/site-packages/markupsafe
copying build/lib.linux-x86_64-3.4/markupsafe/_native.py -> /home/adam/test/lib/python3.4/site-packages/markupsafe
copying build/lib.linux-x86_64-3.4/markupsafe/_speedups.c -> /home/adam/test/lib/python3.4/site-packages/markupsafe
copying build/lib.linux-x86_64-3.4/markupsafe/_speedups.cpython-34m.so -> /home/adam/test/lib/python3.4/site-packages/markupsafe
copying build/lib.linux-x86_64-3.4/markupsafe/tests.py -> /home/adam/test/lib/python3.4/site-packages/markupsafe
byte-compiling /home/adam/test/lib/python3.4/site-packages/markupsafe/__init__.py to __init__.cpython-34.pyc
byte-compiling /home/adam/test/lib/python3.4/site-packages/markupsafe/_compat.py to _compat.cpython-34.pyc
byte-compiling /home/adam/test/lib/python3.4/site-packages/markupsafe/_constants.py to _constants.cpython-34.pyc
byte-compiling /home/adam/test/lib/python3.4/site-packages/markupsafe/_native.py to _native.cpython-34.pyc
byte-compiling /home/adam/test/lib/python3.4/site-packages/markupsafe/tests.py to tests.cpython-34.pyc
running install_egg_info
Copying MarkupSafe.egg-info to /home/adam/test/lib/python3.4/site-packages/MarkupSafe-0.23-py3.4.egg-info
error: [Errno 22] Invalid argument: 'MarkupSafe.egg-info/PKG-INFO'
----------------------------------------
Command "/home/adam/test/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-_fpuv22h/MarkupSafe/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-or8krd05-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/adam/test/include/site/python3.4/MarkupSafe" failed with error code 1 in /tmp/pip-build-_fpuv22h/MarkupSafe/
Here is the result for Python 2:
(test2) adam@WORKSTATION:~$ pip install Jinja2
Collecting Jinja2
Using cached Jinja2-2.8-py2.py3-none-any.whl
Collecting MarkupSafe (from Jinja2)
Installing collected packages: MarkupSafe, Jinja2
Successfully installed Jinja2-2.8 MarkupSafe-0.23
I tried:
- sudo apt-get update
- sudo apt-get upgrade
- sudo apt-get install python-virtualenv
- sudo pip install -U virtualenv
- sudo apt-get install python3-pip
- How do I use pip 3 with Python 3.4?
- pip install -U pip
- sudo apt-get install python3-setuptools
- sudo apt-get install python3-dev
If there is no solution, then that is understandable as Ubuntu on Windows is still in beta, but I would like to know what the root of the issue may be so that I can report it.