Bug 7971 - python-flask, python-werkzeug. No module named zlib
Summary: python-flask, python-werkzeug. No module named zlib
Status: RESOLVED FIXED
Alias: None
Product: buildroot
Classification: Unclassified
Component: Other (show other bugs)
Version: 2015.02
Hardware: PC Linux
: P2 major
Target Milestone: ---
Assignee: unassigned
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-03-24 20:43 UTC by Nikita
Modified: 2015-06-03 01:09 UTC (History)
1 user (show)

See Also:
Host:
Target:
Build:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Nikita 2015-03-24 20:43:41 UTC
Target: raspberry pi 1
Host: Linux Mint 17.1

I'm trying to run a web-server using python-flask. A similar problem with http://git.buildroot.net/buildroot/commit/?id=82e23f15a11c2cd66d0f6c6397906663c9c9e1d7

My steps:
1. cd /home/n1/test
2. download buildroot
3. cd buildroot
4. make nconfig # add nano, python (2.*), python-flask (zlib added auto) ,wchar, etc (for rpi)
6. make
7. upload to sd card

When I run the project (python-flask) on rpi:

from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
  return "Hello World!"
  app.run()

I get an error:
 traceback (most recent call last):
   File "test.py", line 1 in, in <module>
     from flask import Flask
      File "home/n1/test/buildroot/output/target/usr/lib/python2.7/site-packeges/flask/__init__.py, line 17, in <module>
      File "home/n1/test/buildroot/output/target/usr/lib/python2.7/site-packeges/werkzeug/__init__.py, line 154, in <module>
...
   ImportError: No module named zlib

I tried to compile with the help of https://github.com/gamaral/rpi-buildroot , but got the same error. My bug report: https://github.com/gamaral/rpi-buildroot/issues/34
Comment 1 Peter Korsgaard 2015-04-10 21:16:09 UTC
Are you sure you have done a clean rebuild after adding flask? The symptoms sounds as if you have first built python (without zlib support) and then afterwards added flask.

I did a test here, and it works:

# python
Python 2.7.9 (default, Apr 10 2015, 23:10:24) 
[GCC 4.8.3 20140320 (prerelease)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from flask import Flask
>>>
Comment 2 Nikita 2015-04-19 12:53:42 UTC
(In reply to comment #1)
> Are you sure you have done a clean rebuild after adding flask? The symptoms
> sounds as if you have first built python (without zlib support) and then
> afterwards added flask.
> 
> I did a test here, and it works:
> 
> # python
> Python 2.7.9 (default, Apr 10 2015, 23:10:24) 
> [GCC 4.8.3 20140320 (prerelease)] on linux2
> Type "help", "copyright", "credits" or "license" for more information.
> >>> from flask import Flask
> >>>

Yes. The problem occurs when the language is not en_US. When I do 
>export LC_ALL=en_US.UTF-8
>export LANG=en_US.UTF-8
>export LANGUAGE=en_US.UTF-8

all is well. My var is LANG=ru_RU.UTF-8
Comment 3 Thomas Petazzoni 2015-04-20 22:00:15 UTC
I am using a fr_FR.UTF-8 system. I've built the following defconfig:

BR2_arm=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-arm-full-2015.02.tar.bz2"
BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_18=y
BR2_TOOLCHAIN_EXTERNAL_INET_IPV6=y
BR2_TOOLCHAIN_EXTERNAL_LOCALE=y
# BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set
BR2_TOOLCHAIN_EXTERNAL_INET_RPC=y
BR2_TOOLCHAIN_EXTERNAL_CXX=y
BR2_PACKAGE_PYTHON=y
BR2_PACKAGE_PYTHON_FLASK=y

And Flask can be imported just fine:

Welcome to Buildroot
buildroot login: root
# python
>>> from flask import Flask
>>> 

So I cannot reproduce the bug reported by Nikita.