Code Monkey home page Code Monkey logo

scroll-phat's Introduction

Scroll pHAT https://shop.pimoroni.com/products/scroll-phat

11x5 pixels of single-colour, message scrolling goodness!

Installing

Full install (recommended):

We've created an easy installation script that will install all pre-requisites and get your Scroll pHAT up and running with minimal efforts. To run it, fire up Terminal which you'll find in Menu -> Accessories -> Terminal on your Raspberry Pi desktop, as illustrated below:

Finding the terminal

In the new terminal window type the command exactly as it appears below (check for typos) and follow the on-screen instructions:

curl https://get.pimoroni.com/scrollphat | bash

Alternatively, on Raspbian, you can download the pimoroni-dashboard and install your product by browsing to the relevant entry:

sudo apt-get install pimoroni

(you will find the Dashboard under 'Accessories' too, in the Pi menu - or just run pimoroni-dashboard at the command line)

If you choose to download examples you'll find them in /home/pi/Pimoroni/scrollphat/.

Manual install:

Library install for Python 3:

on Raspbian:

sudo apt-get install python3-scrollphat

other environments:

sudo pip3 install scrollphat

Library install for Python 2:

on Raspbian:

sudo apt-get install python-scrollphat

other environments:

sudo pip2 install scrollphat

Development:

If you want to contribute, or like living on the edge of your seat by having the latest code, you should clone this repository, cd to the library directory, and run:

sudo python3 setup.py install

(or sudo python setup.py install whichever your primary Python environment may be)

In all cases you will have to enable the i2c bus.

Alternative Libraries

Documentation & Support

Docker image

For those who are curious and interested in learning about Docker on the Pi, this repository includes a fully tested Dockerfile for using the scrollphat library without needing to install it on the base system.

To build, cd into the docker directory and run:

$ ./build_docker.sh

For complete instructions, see DOCKER.md in the same directory.

scroll-phat's People

Contributors

alexellis avatar campag avatar dependabot[bot] avatar dw-42 avatar fejao avatar gadgetoid avatar john-root avatar joosteto avatar kisty avatar lowfatcode avatar martinohanlon avatar petehalverson avatar roguem avatar sandyjmacdonald avatar snorecore avatar stuphi avatar teknolog2000 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

scroll-phat's Issues

Change Font

Hey guys,

Great little display! I was trying to figure out how to change the font. I can see there is a font.png in the repo, and i have changed this, but can't figure out where it is stored in the pi system, and have done a find to look for it, and still no luck. Does this PNG get converted into something else?

Cheers
Rob

Updates for Docker integration.

I'm looking at the following (work in progress):

  • Remove all comments from Dockerfile (the docker.md file is enough, will be renamed readme.md)
  • Refactor the Dockerfile to make it a single layer and easier to pull/extract on the Zero.
  • Make mention of i2c on host in readme.md

Re comment by @dfranssen to include all dependencies for examples in Dockerfile I don't think this approach is ideal. The Dockerfile should be lean and these can be added separately later. The examples already have good checking for libraries present.

Adding a library is normally as simple as something like:

FROM alexellis2/scroll-phat
RUN pip install numpy

I would still like to promote the Dockerfile to the top level of the repo to make it easier to use and less surprising. Check out a few open source projects (you'll see that's where the file sits)

@RogueM @Gadgetoid anything else?

Flip font

I was going to have a look at optionally flipping the font because the HAT + PI would probably self-balance better if upside down with cables etc coming out the top. Where you would suggest starting?

Would an image rotate and flip transform work in the load_font method?

Font.img not found

so when i run the example files from idle 2.7 it comes back with 2 errors here is a screen shot please could someone tell me how to fix it.
screen shot 2015-12-16 at 21 31 01

A little documentation would be nice.

Just trying to get me scroll pHat working and getting the following error.
pi@raspberrypi:~/dev/scroll-phat $ python test-all.py
Traceback (most recent call last):
File "test-all.py", line 3, in
import scrollphat
File "/home/pi/dev/scroll-phat/scrollphat.py", line 6, in
bus = smbus.SMBus(1)
IOError: [Errno 2] No such file or directory

I will continue poking around, but it would be nice if it was not quite so dark in this corner :-)

space-invader.py and pacman.py fail on Python3 on debian 9.1

Works under python[2].

Here are the error logs.

$ python3 space-invader.py
  File "space-invader.py", line 461
    '''Runs funcations from the other classes from parsed function name'''
                                                                         ^
TabError: inconsistent use of tabs and spaces in indentation

$ python3 pacman.py
  File "pacman.py", line 587
    '''Runs functions from the pacman classe from parsed function name'''
                                                                        ^
TabError: inconsistent use of tabs and spaces in indentation

Docker example fails

Followed the example defined in https://github.com/pimoroni/scroll-phat/tree/master/docker

$ docker run -ti --privileged scroll-phat

Python 2.7.9 (default, Sep 17 2016, 20:26:04) 
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import scrollphat
>>> scrollphat.set_pixel(1,1,True)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "build/bdist.linux-armv7l/egg/scrollphat/__init__.py", line 145, in set_pixel
  File "build/bdist.linux-armv7l/egg/scrollphat/__init__.py", line 26, in _get_controller
  File "build/bdist.linux-armv7l/egg/scrollphat/IS31FL3730.py", line 17, in __init__
IOError: [Errno 2] No such file or directory

auto scroll request

Plz consider adding a auto_scroll variable or a .scroll_string function that pass the message for one time automatically.

Python3 Support

Trying to get scrollphat up and running (on the AIY image) using both the Pimoroni dashboard and the Bash script, but whilst both work in Python2, when attempting to run in Python3 I received, ImportError: No module named 'scrollphat'. To get it working under Python3, I had to clone the repo and do, sudo python3 setup.py install. Not sure if this is a weird issue with the AIY image, or a general issue.

Metic in “localweather.py"

I have no idea how Fahrenheit works. The localweather.py however, display temperatures in the unit almost only used in US.

pi@raspberrypi:~/Pimoroni/scrollphat/examples $ python3 localweather.py 
Location: Vienna, AT
 Sat: Showers - L: 35F - H: 57F Sun: Rain - L: 41F - H: 51F

Some wait to get Centigrade by default or change with local settings?

Error during install (python3-pip)

Just installed the latest jessie lite, did update and upgrade and on install (curl -sSL get.pimoroni.com/scrollphat | bash) I found myself stuck after:

Sorry, Apt failed to install python3-pip, I can't continue!

sudo apt-get -f install seemed to fix it by installing libpython3.4-dev

scrollphat.set_buffer()

In general and in the sine.py example am getting AttributeError: 'module' object has no attribute 'set_buffer'

New to this so might be me - otherwise scrollphat is superb and all other examples working - including the excellent weather parser

Cheers

Adam

"apt upgrade" fails, conflicts with python3-scrollphatd_1.1.0

Hello

I am trying to upgrade my Raspberry Pi 3 B but I got stuck with the following error message:

pi@raspberrypi:~ $ sudo apt upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages will be upgraded:
python3-scrollphathd
1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
38 not fully installed or removed.
Need to get 0 B/18.0 kB of archives.
After this operation, 14.3 kB of additional disk space will be used.
Do you want to continue? [Y/n]
Reading changelogs... Done
(Reading database ... 122984 files and directories currently installed.)
Preparing to unpack .../python3-scrollphathd_1.1.0_all.deb ...
Unpacking python3-scrollphathd (1.1.0) over (1.0.1) ...
dpkg: error processing archive /var/cache/apt/archives/python3-scrollphathd_1.1.0_all.deb (--unpack):
trying to overwrite '/usr/bin/scrollphathd_api', which is also in package python-scrollphathd 1.1.0
Errors were encountered while processing:
/var/cache/apt/archives/python3-scrollphathd_1.1.0_all.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

My version:
pi@raspberrypi:~ $ uname -a
Linux raspberrypi 4.9.59-v7+ #1047 SMP Sun Oct 29 12:19:23 GMT 2017 armv7l GNU/Linux

simple-text-scroll-(rotated).py

Hi there, newbie here, so apologies upfront!
I can successfully run most of the scroll-phat examples, but not the text scroll ones. When I run them, i get no output on the scroll-phat - are they waiting for me to enter some text?

If so, if I enter (eg) Hello World, I get the following error:-
usage: python simple-text-scroll-rotated.py "message"
press CTRL-C to exit

hello world
SyntaxError: invalid syntax
hello
Traceback (most recent call last):
File "<pyshell#2>", line 1, in
hello
NameError: name 'hello' is not defined

KeyboardInterrupt

If I then enter "Hello World" ie with quotation marks I get:-

================================ RESTART ================================

usage: python simple-text-scroll-rotated.py "message"
press CTRL-C to exit

"hello world"
'hello world'

But still no output on the Scroll-Phat itself...

Can anyone suggest what I'm doing wrong?

Thanks

Unable to install

When I use the command "sudo apt-get install pimoroni" it just says "E: Unable to locate package pimoroni-dashboard"?
When I try the manual version its installing but when i try to execute one example it has a lot of errors

import scrollphat error

I am getting an error for both python3 and python2 with raspberry pi 0 and 3

I have tried installing from the git repo and enabled i2c.

i2c doesnt put out anything that is out of the ordinary

I am on retropie. I have tried it on multiple versions of retropie.

the one liner bash script doesnt work. I tried that first.

I am trying to use a scrollphat.

Here is the error:

Traceback (most recent call last):
  File "test-graph.py", line 5, in <module>
    import scrollphat
  File "/usr/lib/python3/dist-packages/scrollphat/__init__.py", line 20, in <module>
    controller = IS31FL3730(smbus, font)
  File "/usr/lib/python3/dist-packages/scrollphat/IS31FL3730.py", line 21, in __init__
    self.set_mode(self.i2cConstants.MODE_5X11)
  File "/usr/lib/python3/dist-packages/scrollphat/IS31FL3730.py", line 62, in set_mode
    self.bus.write_i2c_block_data(self.i2cConstants.I2C_ADDR, self.i2cConstants.CMD_SET_MODE, [self.i2cConstants.MODE_5X11])
OSError: [Errno 5] Input/output error

Needs re-boot after install to work.

Just got this up and running. I've suggest tweaking the instructions to include that a Reboot is required.
I guess this may not be needed if I2C was previously enabled, but on a new Pi Zero (fresh, updated image) I did need to re-boot. Some users may need a hand.

Also it may help newbies to know they need to navigate to the python scripts and how to run them;

cd Pimorino/scrollphat/
python ip.py

(etc).

A nice big of work - well done :-)

Weirdness with scrollphat.graph()

I'm seeing odd behaviour when passing a list of integer values rather than floats. With ints, all of the columns seem to scale to the max. If you convert the ints to floats, it behaves as expected.

sine example split request

the sine.py shows IP address and CPU usage, because the second WHILE loop won’t be run.
I suggest to rename the example and spilt it to two example files.

Font file into examples folder

A minor thing. When running the examples, it throws an error about not being able to find the font file.

Moving library/font.png to the examples folder fixes this.

Great module though, I love it!

Please provide a more secure way to download / install!

The current installation works by downloading and running several shell scripts over a completely unauthenticated connection which makes it very easy for an attacker to serve malicious scripts instead. This poses a huge security and privacy risk to your users, especially considering some of the scripts are expected to be ran with sudo!

Please fix this by adding certificate(s) to your server(s), updating your scripts to authenticate the server connection and updating your installation instructions (e.g. tell users to use curl with the --cacert option or tell them to check the first script they download and use the option in there).

localweather.py : discontinued yahooapis & error message

Hello,

I am trying to use localweather.py but I have an error message.

Location: Le Vésinet, FR Traceback (most recent call last): File "localweather.py", line 68, in <module> weather = get_weather(location_string) File "localweather.py", line 41, in get_weather uri = base + encode(qs) File "localweather.py", line 33, in encode val = urllib.parse.urlencode(qs).replace("+", "%20") AttributeError: 'module' object has no attribute 'parse'

At first I was thinking the issue could come from the city name that has an "é" but then I had a look at the code and saw that it was using yahooapis.com which has been killed in 2017 apparently.

I'm very new to python so I can barely read what the script does. Is there a possibility to set the location manually ? Or to use something like openweathermap ? With possibly manual input to improve accuracy when using a pi that doesn't travel much.

Thank you very much for the examples provided with the pHAT and also for your time

Error when importing scrollphat

I just received my Raspberry Pi Zero W Scroll Bot project and got everything setup, however, I'm getting a problem when trying to run any of the examples or simply the scrollphat module at all:

pi@raspberrypi:~/Pimoroni/scrollphat $ python -c "import scrollphat"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/usr/lib/python2.7/dist-packages/scrollphat/__init__.py", line 20, in <module>
    controller = IS31FL3730(smbus, font)
  File "/usr/lib/python2.7/dist-packages/scrollphat/IS31FL3730.py", line 21, in __init__
    self.set_mode(self.i2cConstants.MODE_5X11)
  File "/usr/lib/python2.7/dist-packages/scrollphat/IS31FL3730.py", line 62, in set_mode
    self.bus.write_i2c_block_data(self.i2cConstants.I2C_ADDR, self.i2cConstants.CMD_SET_MODE, [self.i2cConstants.MODE_5X11])
IOError: [Errno 5] Input/output error
pi@raspberrypi:~/Pimoroni/scrollphat $ python3 -c "import scrollphat"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/usr/lib/python3/dist-packages/scrollphat/__init__.py", line 20, in <module>
    controller = IS31FL3730(smbus, font)
  File "/usr/lib/python3/dist-packages/scrollphat/IS31FL3730.py", line 21, in __init__
    self.set_mode(self.i2cConstants.MODE_5X11)
  File "/usr/lib/python3/dist-packages/scrollphat/IS31FL3730.py", line 62, in set_mode
    self.bus.write_i2c_block_data(self.i2cConstants.I2C_ADDR, self.i2cConstants.CMD_SET_MODE, [self.i2cConstants.MODE_5X11])
OSError: [Errno 5] Input/output error

I've checked and I2C is enabled but, I'll admit, this was the first time that I've soldered on a circuit, so I'm not sure if it's gone wrong there. The solder joints look good to me though. Any input on this error or advice as to whether it could be related to bad soldering would be greatly appreciated. Is it possible to diagnose the GPIO connection to test that it's all good or, even better, detect any errors on individual connections?


Again, I'll admit this is my first time really working with GPIO so please excuse my ignorance, but here's the output of running i2cdetect in case it helps at all:

pi@raspberrypi:~/Pimoroni/scrollphat $ i2cdetect -y 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- 74 -- -- --

'turn-leds-off.py' not working.

Just got my Pi Zero with the Scroll PHat, everything installed fine and I ran a few of the example scripts. But when I execute the 'turn-leds-off.py' script nothing happens. With Some of the examples the LEDs turn off for a fraction of a second, but they turn back on and the example carries on running, just flashing the LEDs off and on in effect.

Please help, I have to reboot every time I want to turn the LEDs off.

Cheers.

Cannot install ValueError: --enable-jpeg requested but jpeg not found, aborting.

Hi... I bought this item from you at PiWars and you said to let you know if there were any issues. It's all soldered up now and connected but the software would not install for me. Please advise.

Alex

[x@zero library]$ sudo python2 ./setup.py  install
running install
running bdist_egg
running egg_info
writing requirements to scrollphat.egg-info/requires.txt
writing scrollphat.egg-info/PKG-INFO
writing top-level names to scrollphat.egg-info/top_level.txt
writing dependency_links to scrollphat.egg-info/dependency_links.txt
reading manifest file 'scrollphat.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'scrollphat.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-armv6l/egg
running install_lib
running build_py
creating build/bdist.linux-armv6l/egg
copying build/lib/scrollphat.py -> build/bdist.linux-armv6l/egg
byte-compiling build/bdist.linux-armv6l/egg/scrollphat.py to scrollphat.pyc
installing package data to build/bdist.linux-armv6l/egg
running install_data
copying font.png -> build/bdist.linux-armv6l/egg/.
creating build/bdist.linux-armv6l/egg/EGG-INFO
copying scrollphat.egg-info/PKG-INFO -> build/bdist.linux-armv6l/egg/EGG-INFO
copying scrollphat.egg-info/SOURCES.txt -> build/bdist.linux-armv6l/egg/EGG-INFO
copying scrollphat.egg-info/dependency_links.txt -> build/bdist.linux-armv6l/egg/EGG-INFO
copying scrollphat.egg-info/requires.txt -> build/bdist.linux-armv6l/egg/EGG-INFO
copying scrollphat.egg-info/top_level.txt -> build/bdist.linux-armv6l/egg/EGG-INFO
zip_safe flag not set; analyzing archive contents...
scrollphat: module references __file__
creating 'dist/scrollphat-0.0.2-py2.7.egg' and adding 'build/bdist.linux-armv6l/egg' to it
removing 'build/bdist.linux-armv6l/egg' (and everything under it)
Processing scrollphat-0.0.2-py2.7.egg
removing '/usr/lib/python2.7/site-packages/scrollphat-0.0.2-py2.7.egg' (and everything under it)
creating /usr/lib/python2.7/site-packages/scrollphat-0.0.2-py2.7.egg
Extracting scrollphat-0.0.2-py2.7.egg to /usr/lib/python2.7/site-packages
scrollphat 0.0.2 is already the active version in easy-install.pth

Installed /usr/lib/python2.7/site-packages/scrollphat-0.0.2-py2.7.egg
Processing dependencies for scrollphat==0.0.2
Searching for pillow
Reading https://pypi.python.org/simple/pillow/
Best match: Pillow 3.0.0
Downloading https://pypi.python.org/packages/source/P/Pillow/Pillow-3.0.0.zip#md5=dd81f6cc3f3a5e5fe72f0f1d936339c3
Processing Pillow-3.0.0.zip
Writing /tmp/easy_install-5exqdt/Pillow-3.0.0/setup.cfg
Running Pillow-3.0.0/setup.py -q bdist_egg --dist-dir /tmp/easy_install-5exqdt/Pillow-3.0.0/egg-dist-tmp-ooV7sO
Single threaded build, not installing mp_compile:1 processes
Traceback (most recent call last):
  File "./setup.py", line 56, in <module>
    'smbus'
  File "/usr/lib/python2.7/distutils/core.py", line 151, in setup
    dist.run_commands()
  File "/usr/lib/python2.7/distutils/dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "/usr/lib/python2.7/site-packages/setuptools/command/install.py", line 67, in run
    self.do_egg_install()
  File "/usr/lib/python2.7/site-packages/setuptools/command/install.py", line 117, in do_egg_install
    cmd.run()
  File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 390, in run
    self.easy_install(spec, not self.no_deps)
  File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 620, in easy_install
    return self.install_item(None, spec, tmpdir, deps, True)
  File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 671, in install_item
    self.process_distribution(spec, dist, deps)
  File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 719, in process_distribution
    [requirement], self.local_index, self.easy_install
  File "/usr/lib/python2.7/site-packages/pkg_resources/__init__.py", line 846, in resolve
    dist = best[req.key] = env.best_match(req, ws, installer)
  File "/usr/lib/python2.7/site-packages/pkg_resources/__init__.py", line 1091, in best_match
    return self.obtain(req, installer)
  File "/usr/lib/python2.7/site-packages/pkg_resources/__init__.py", line 1103, in obtain
    return installer(requirement)
  File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 639, in easy_install
    return self.install_item(spec, dist.location, tmpdir, deps)
  File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 669, in install_item
    dists = self.install_eggs(spec, download, tmpdir)
  File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 853, in install_eggs
    return self.build_and_install(setup_script, setup_base)
  File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 1081, in build_and_install
    self.run_setup(setup_script, setup_base, args)
  File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 1067, in run_setup
    run_setup(setup_script, args)
  File "/usr/lib/python2.7/site-packages/setuptools/sandbox.py", line 240, in run_setup
    raise
  File "/usr/lib/python2.7/contextlib.py", line 35, in __exit__
    self.gen.throw(type, value, traceback)
  File "/usr/lib/python2.7/site-packages/setuptools/sandbox.py", line 193, in setup_context
    yield
  File "/usr/lib/python2.7/contextlib.py", line 35, in __exit__
    self.gen.throw(type, value, traceback)
  File "/usr/lib/python2.7/site-packages/setuptools/sandbox.py", line 164, in save_modules
    saved_exc.resume()
  File "/usr/lib/python2.7/site-packages/setuptools/sandbox.py", line 139, in resume
    compat.reraise(type, exc, self._tb)
  File "/usr/lib/python2.7/site-packages/setuptools/sandbox.py", line 152, in save_modules
    yield saved
  File "/usr/lib/python2.7/site-packages/setuptools/sandbox.py", line 193, in setup_context
    yield
  File "/usr/lib/python2.7/site-packages/setuptools/sandbox.py", line 237, in run_setup
    DirectorySandbox(setup_dir).run(runner)
  File "/usr/lib/python2.7/site-packages/setuptools/sandbox.py", line 267, in run
    return func()
  File "/usr/lib/python2.7/site-packages/setuptools/sandbox.py", line 236, in runner
    _execfile(setup_script, ns)
  File "/usr/lib/python2.7/site-packages/setuptools/sandbox.py", line 46, in _execfile
    exec(code, globals, locals)
  File "/tmp/easy_install-5exqdt/Pillow-3.0.0/setup.py", line 767, in <module>

  File "/usr/lib/python2.7/distutils/core.py", line 151, in setup
    dist.run_commands()
  File "/usr/lib/python2.7/distutils/dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "/usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.py", line 160, in run
    cmd = self.call_command('install_lib', warn_dir=0)
  File "/usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.py", line 146, in call_command
    self.run_command(cmdname)
  File "/usr/lib/python2.7/distutils/cmd.py", line 326, in run_command
    self.distribution.run_command(command)
  File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "/usr/lib/python2.7/site-packages/setuptools/command/install_lib.py", line 10, in run
    self.build()
  File "/usr/lib/python2.7/distutils/command/install_lib.py", line 111, in build
    self.run_command('build_ext')
  File "/usr/lib/python2.7/distutils/cmd.py", line 326, in run_command
    self.distribution.run_command(command)
  File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "/usr/lib/python2.7/distutils/command/build_ext.py", line 337, in run
    self.build_extensions()
  File "/tmp/easy_install-5exqdt/Pillow-3.0.0/setup.py", line 515, in build_extensions

ValueError: --enable-jpeg requested but jpeg not found, aborting.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.