Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Python Build a Social Network with Flask Making Strong Users Cryptographic Hashing with Flask-Bcrypt

Cotten Blackwell
Cotten Blackwell
10,425 Points

Can't install bcrypt on Mac OS X v10.10.5

When I run pip install flask-bcrypt on my Mac I get an error reading:

(venv)Mama-Runcible:S4V5 Cotten$ pip install flask-bcrypt
Collecting flask-bcrypt
Requirement already satisfied (use --upgrade to upgrade): Flask in /Users/Cotten/venv/lib/python3.5/site-packages (from flask-bcrypt)
Collecting bcrypt (from flask-bcrypt)
  Using cached bcrypt-2.0.0.tar.gz
Requirement already satisfied (use --upgrade to upgrade): itsdangerous>=0.21 in /Users/Cotten/venv/lib/python3.5/site-packages (from Flask->flask-bcrypt)
Requirement already satisfied (use --upgrade to upgrade): Jinja2>=2.4 in /Users/Cotten/venv/lib/python3.5/site-packages (from Flask->flask-bcrypt)
Requirement already satisfied (use --upgrade to upgrade): Werkzeug>=0.7 in /Users/Cotten/venv/lib/python3.5/site-packages (from Flask->flask-bcrypt)
Collecting cffi>=1.1 (from bcrypt->flask-bcrypt)
  Using cached cffi-1.2.1.tar.gz
Collecting six>=1.4.1 (from bcrypt->flask-bcrypt)
  Using cached six-1.10.0-py2.py3-none-any.whl
Requirement already satisfied (use --upgrade to upgrade): MarkupSafe in /Users/Cotten/venv/lib/python3.5/site-packages (from Jinja2>=2.4->Flask->flask-bcrypt)
Requirement already satisfied (use --upgrade to upgrade): pycparser in /Users/Cotten/venv/lib/python3.5/site-packages (from cffi>=1.1->bcrypt->flask-bcrypt)
Building wheels for collected packages: bcrypt, cffi
  Running setup.py bdist_wheel for bcrypt
  Complete output from command /Users/Cotten/venv/bin/python3.5 -c "import setuptools;__file__='/private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-1jwu6b2e/bcrypt/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/tmpyh3pocmipip-wheel-:
  _configtest.c:1:1: error: thread-local storage is not supported for the current target
  __thread int some_threadlocal_variable_42;
  ^
  1 error generated.
  c/_cffi_backend.c:13:10: fatal error: 'ffi.h' file not found
  #include <ffi.h>
           ^
  1 error generated.
  Note: will not use '__thread' in the C code
  The above error message can be safely ignored
  Traceback (most recent call last):
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/unixccompiler.py", line 116, in _compile
      extra_postargs)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/ccompiler.py", line 909, in spawn
      spawn(cmd, dry_run=self.dry_run)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/spawn.py", line 36, in spawn
      _spawn_posix(cmd, search_path, dry_run=dry_run)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/spawn.py", line 159, in _spawn_posix
      % (cmd, exit_status))
  distutils.errors.DistutilsExecError: command '/usr/bin/clang' failed with exit status 1

  During handling of the above exception, another exception occurred:

  Traceback (most recent call last):
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/core.py", line 148, in setup
      dist.run_commands()
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 955, in run_commands
      self.run_command(cmd)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/bdist_egg.py", line 160, in run
      cmd = self.call_command('install_lib', warn_dir=0)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/bdist_egg.py", line 146, in call_command
      self.run_command(cmdname)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/install_lib.py", line 10, in run
      self.build()
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/command/install_lib.py", line 107, in build
      self.run_command('build_ext')
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/build_ext.py", line 49, in run
      _build_ext.run(self)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/command/build_ext.py", line 338, in run
      self.build_extensions()
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/command/build_ext.py", line 447, in build_extensions
      self._build_extensions_serial()
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/command/build_ext.py", line 472, in _build_extensions_serial
      self.build_extension(ext)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/build_ext.py", line 174, in build_extension
      _build_ext.build_extension(self, ext)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/command/build_ext.py", line 532, in build_extension
      depends=ext.depends)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/ccompiler.py", line 574, in compile
      self._compile(obj, src, ext, cc_args, extra_postargs, pp_opts)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/unixccompiler.py", line 118, in _compile
      raise CompileError(msg)
  distutils.errors.CompileError: command '/usr/bin/clang' failed with exit status 1

  During handling of the above exception, another exception occurred:

  Traceback (most recent call last):
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 152, in save_modules
      yield saved
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 193, in setup_context
      yield
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 237, in run_setup
      DirectorySandbox(setup_dir).run(runner)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 267, in run
      return func()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 236, in runner
      _execfile(setup_script, ns)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 46, in _execfile
      exec(code, globals, locals)
    File "/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/easy_install-msy2ebfr/cffi-1.2.1/setup.py", line 191, in <module>
      author_email=__about__["__email__"],
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/core.py", line 163, in setup
      raise SystemExit("error: " + str(msg))
  SystemExit: error: command '/usr/bin/clang' failed with exit status 1

  During handling of the above exception, another exception occurred:

  Traceback (most recent call last):
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 1056, in run_setup
      run_setup(setup_script, args)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 240, in run_setup
      raise
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/contextlib.py", line 77, in __exit__
      self.gen.throw(type, value, traceback)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 193, in setup_context
      yield
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/contextlib.py", line 77, in __exit__
      self.gen.throw(type, value, traceback)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 164, in save_modules
      saved_exc.resume()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 139, in resume
      compat.reraise(type, exc, self._tb)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/compat.py", line 65, in reraise
      raise value.with_traceback(tb)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 152, in save_modules
      yield saved
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 193, in setup_context
      yield
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 237, in run_setup
      DirectorySandbox(setup_dir).run(runner)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 267, in run
      return func()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 236, in runner
      _execfile(setup_script, ns)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 46, in _execfile
      exec(code, globals, locals)
    File "/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/easy_install-msy2ebfr/cffi-1.2.1/setup.py", line 191, in <module>
      author_email=__about__["__email__"],
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/core.py", line 163, in setup
      raise SystemExit("error: " + str(msg))
  SystemExit: error: command '/usr/bin/clang' failed with exit status 1

  During handling of the above exception, another exception occurred:

  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-1jwu6b2e/bcrypt/setup.py", line 226, in <module>
      **keywords_with_side_effects(sys.argv)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/core.py", line 108, in setup
      _setup_distribution = dist = klass(attrs)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/dist.py", line 268, in __init__
      self.fetch_build_eggs(attrs['setup_requires'])
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/dist.py", line 313, in fetch_build_eggs
      replace_conflicting=True,
    File "/Users/Cotten/venv/lib/python3.5/site-packages/pkg_resources/__init__.py", line 836, in resolve
      dist = best[req.key] = env.best_match(req, ws, installer)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/pkg_resources/__init__.py", line 1081, in best_match
      return self.obtain(req, installer)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/pkg_resources/__init__.py", line 1093, in obtain
      return installer(requirement)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/dist.py", line 380, in fetch_build_egg
      return cmd.easy_install(req)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 629, in easy_install
      return self.install_item(spec, dist.location, tmpdir, deps)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 659, in install_item
      dists = self.install_eggs(spec, download, tmpdir)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 842, in install_eggs
      return self.build_and_install(setup_script, setup_base)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 1070, in build_and_install
      self.run_setup(setup_script, setup_base, args)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 1058, in run_setup
      raise DistutilsError("Setup script exited with %s" % (v.args[0],))
  distutils.errors.DistutilsError: Setup script exited with error: command '/usr/bin/clang' failed with exit status 1

  ----------------------------------------
  Failed building wheel for bcrypt
  Running setup.py bdist_wheel for cffi
  Complete output from command /Users/Cotten/venv/bin/python3.5 -c "import setuptools;__file__='/private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-1jwu6b2e/cffi/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/tmpcny41w8npip-wheel-:
  _configtest.c:1:1: error: thread-local storage is not supported for the current target
  __thread int some_threadlocal_variable_42;
  ^
  1 error generated.
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.macosx-10.6-intel-3.5
  creating build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/__init__.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/api.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/backend_ctypes.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/cffi_opcode.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/commontypes.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/cparser.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/ffiplatform.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/gc_weakref.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/lock.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/model.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/recompiler.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/setuptools_ext.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/vengine_cpy.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/vengine_gen.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/verifier.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/_cffi_include.h -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/parse_c_type.h -> build/lib.macosx-10.6-intel-3.5/cffi
  running build_ext
  building '_cffi_backend' extension
  creating build/temp.macosx-10.6-intel-3.5
  creating build/temp.macosx-10.6-intel-3.5/c
  /usr/bin/clang -fno-strict-aliasing -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch i386 -arch x86_64 -g -I/usr/include/ffi -I/usr/include/libffi -I/Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m -c c/_cffi_backend.c -o build/temp.macosx-10.6-intel-3.5/c/_cffi_backend.o
  c/_cffi_backend.c:13:10: fatal error: 'ffi.h' file not found
  #include <ffi.h>
           ^
  1 error generated.
  Note: will not use '__thread' in the C code
  The above error message can be safely ignored
  error: command '/usr/bin/clang' failed with exit status 1

  ----------------------------------------
  Failed building wheel for cffi
Failed to build bcrypt cffi
Installing collected packages: cffi, six, bcrypt, flask-bcrypt
  Running setup.py install for cffi
    Complete output from command /Users/Cotten/venv/bin/python3.5 -c "import setuptools, tokenize;__file__='/private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-1jwu6b2e/cffi/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-28cisdrq-record/install-record.txt --single-version-externally-managed --compile --install-headers /Users/Cotten/venv/bin/../include/site/python3.5/cffi:
    _configtest.c:1:1: error: thread-local storage is not supported for the current target
    __thread int some_threadlocal_variable_42;
    ^
    1 error generated.
    running install
    running build
    running build_py
    running build_ext
    building '_cffi_backend' extension
    /usr/bin/clang -fno-strict-aliasing -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch i386 -arch x86_64 -g -I/usr/include/ffi -I/usr/include/libffi -I/Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m -c c/_cffi_backend.c -o build/temp.macosx-10.6-intel-3.5/c/_cffi_backend.o
    c/_cffi_backend.c:13:10: fatal error: 'ffi.h' file not found
    #include <ffi.h>
             ^
    1 error generated.
    Note: will not use '__thread' in the C code
    The above error message can be safely ignored
    error: command '/usr/bin/clang' failed with exit status 1

    ----------------------------------------
Command "/Users/Cotten/venv/bin/python3.5 -c "import setuptools, tokenize;__file__='/private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-1jwu6b2e/cffi/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-28cisdrq-record/install-record.txt --single-version-externally-managed --compile --install-headers /Users/Cotten/venv/bin/../include/site/python3.5/cffi" failed with error code 1 in /private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-1jwu6b2e/cffi

[MOD: added ```bash formatting -cf]

10 Answers

Chris Freeman
MOD
Chris Freeman
Treehouse Moderator 68,457 Points

I've been there! The key is to install py-bcrypt (instead of plain bcrypt) then install flask-bcrypt.

See post on How to Run Flask Locally for a complete list of pip install commands.

Edit: Add explicit flow of getting "python app.py" to run

I don't have Python 3.5 on my machine so it's not clear if that is a actor. The flow below creates a fresh virtual environment. After each install I ran "python app.py" to see what was missing (not shown), I then installed just one module at a time until it all worked. I used "pip freeze" to display the currently installed modules at each step.

I suggest you try the Python 3.4 flow below (it won't affect your current venv) to see if it's a python3.5 issue.

# Create new virtual env using python 3.4
$ virtualenv -p /usr/bin/python3.4  venv3.4

# Activate new venv
$ . ./venv3.4/bin/activate

# check what is stalled
(venv3.4)s pip freeze

# Nothing installed, start with Flask
(venv3.4)s pip install Flask
(venv3.4)s pip freeze
Flask==0.10.1
Jinja2==2.8  # <-- new
MarkupSafe==0.23  # <-- new
Werkzeug==0.10.4  # <-- new
itsdangerous==0.24  # <-- new

# Install py-bcrypt
(venv3.4)s pip install py-bcrypt
(venv3.4)s pip freeze
Flask==0.10.1
Jinja2==2.8
MarkupSafe==0.23
Werkzeug==0.10.4
itsdangerous==0.24
py-bcrypt==0.4  # <-- new

# Install Flask-bcrypt
(venv3.4)s pip install Flask-bcrypt
(venv3.4)s pip freeze
Flask==0.10.1
Flask-Bcrypt==0.7.1  # <-- new
Jinja2==2.8
MarkupSafe==0.23
Werkzeug==0.10.4
bcrypt==2.0.0  # <-- new
cffi==1.3.0  # <-- new
itsdangerous==0.24
py-bcrypt==0.4
pycparser==2.14  # <-- new
six==1.10.0  # <-- new

# Install Flask-login
(venv3.4)s pip install Flask-login
(venv3.4)s pip freeze
Flask==0.10.1
Flask-Bcrypt==0.7.1
Flask-Login==0.3.2  # <-- new
Jinja2==2.8
MarkupSafe==0.23
Werkzeug==0.10.4
bcrypt==2.0.0
cffi==1.3.0
itsdangerous==0.24
py-bcrypt==0.4
pycparser==2.14
six==1.10.0

# Install Flask-WTF
(venv3.4)s pip install Flask-WTF
(venv3.4)s pip freeze
Flask==0.10.1
Flask-Bcrypt==0.7.1
Flask-Login==0.3.2
Flask-WTF==0.12  # <-- new
Jinja2==2.8
MarkupSafe==0.23
WTForms==2.0.2  # <-- new
Werkzeug==0.10.4
bcrypt==2.0.0
cffi==1.3.0
itsdangerous==0.24
py-bcrypt==0.4
pycparser==2.14
six==1.10.0

# Install peewee
(venv3.4)s pip install peewee
(venv3.4)s pip freeze
Flask==0.10.1
Flask-Bcrypt==0.7.1
Flask-Login==0.3.2
Flask-WTF==0.12
Jinja2==2.8
MarkupSafe==0.23
WTForms==2.0.2
Werkzeug==0.10.4
bcrypt==2.0.0
cffi==1.3.0
itsdangerous==0.24
peewee==2.6.4  # <-- new
py-bcrypt==0.4
pycparser==2.14
six==1.10.0

# Glory Time!
(venv3.4)s python app.py 
 * Running on http://0.0.0.0:8080/ (Press CTRL+C to quit)
 * Restarting with stat
Kenneth Love
STAFF
Kenneth Love
Treehouse Guest Teacher

Oh, wow, build errors are the best. Thanks for the quick answer, Chris Freeman

Cotten Blackwell
Cotten Blackwell
10,425 Points

Thanks, Chris -- I'll give that a try!

Cotten Blackwell
Cotten Blackwell
10,425 Points

Chris, I tried your suggestion but am still getting an error and blocked:

(venv)Mama-Runcible:FlaskReParse Cotten$ pip install py-bcrypt
Collecting py-bcrypt
  Downloading py-bcrypt-0.4.tar.gz
Building wheels for collected packages: py-bcrypt
  Running setup.py bdist_wheel for py-bcrypt
  Complete output from command /Users/Cotten/venv/bin/python3.5 -c "import setuptools;__file__='/private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-fic5kwn3/py-bcrypt/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/tmpshpm9xuppip-wheel-:
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.macosx-10.6-intel-3.5
  creating build/lib.macosx-10.6-intel-3.5/bcrypt
  copying bcrypt/__init__.py -> build/lib.macosx-10.6-intel-3.5/bcrypt
  running build_ext
  building 'bcrypt._bcrypt' extension
  creating build/temp.macosx-10.6-intel-3.5
  creating build/temp.macosx-10.6-intel-3.5/bcrypt
  /usr/bin/clang -fno-strict-aliasing -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch i386 -arch x86_64 -g -I/Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m -c bcrypt/bcrypt.c -o build/temp.macosx-10.6-intel-3.5/bcrypt/bcrypt.o
  /usr/bin/clang -fno-strict-aliasing -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch i386 -arch x86_64 -g -I/Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m -c bcrypt/bcrypt_pbkdf.c -o build/temp.macosx-10.6-intel-3.5/bcrypt/bcrypt_pbkdf.o
  /usr/bin/clang -fno-strict-aliasing -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch i386 -arch x86_64 -g -I/Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m -c bcrypt/bcrypt_python.c -o build/temp.macosx-10.6-intel-3.5/bcrypt/bcrypt_python.o
  bcrypt/bcrypt_python.c:208:17: warning: comparison of integers of different signs: 'Py_ssize_t' (aka 'long') and 'unsigned long' [-Wsign-compare]
          if (hashed_len == strlen(expected_copy))
              ~~~~~~~~~~ ^  ~~~~~~~~~~~~~~~~~~~~~
  1 warning generated.
  bcrypt/bcrypt_python.c:208:17: warning: comparison of integers of different signs: 'Py_ssize_t' (aka 'long') and 'unsigned long' [-Wsign-compare]
          if (hashed_len == strlen(expected_copy))
              ~~~~~~~~~~ ^  ~~~~~~~~~~~~~~~~~~~~~
  1 warning generated.
  /usr/bin/clang -fno-strict-aliasing -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch i386 -arch x86_64 -g -I/Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m -c bcrypt/blowfish.c -o build/temp.macosx-10.6-intel-3.5/bcrypt/blowfish.o
  /usr/bin/clang -fno-strict-aliasing -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch i386 -arch x86_64 -g -I/Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m -c bcrypt/sha2.c -o build/temp.macosx-10.6-intel-3.5/bcrypt/sha2.o
  /usr/bin/clang -fno-strict-aliasing -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch i386 -arch x86_64 -g -I/Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m -c bcrypt/timingsafe_bcmp.c -o build/temp.macosx-10.6-intel-3.5/bcrypt/timingsafe_bcmp.o
  /usr/bin/clang -bundle -undefined dynamic_lookup -arch i386 -arch x86_64 -g build/temp.macosx-10.6-intel-3.5/bcrypt/bcrypt.o build/temp.macosx-10.6-intel-3.5/bcrypt/bcrypt_pbkdf.o build/temp.macosx-10.6-intel-3.5/bcrypt/bcrypt_python.o build/temp.macosx-10.6-intel-3.5/bcrypt/blowfish.o build/temp.macosx-10.6-intel-3.5/bcrypt/sha2.o build/temp.macosx-10.6-intel-3.5/bcrypt/timingsafe_bcmp.o -o build/lib.macosx-10.6-intel-3.5/bcrypt/_bcrypt.cpython-35m-darwin.so
  installing to build/bdist.macosx-10.6-intel/wheel
  running install
  running install_lib
  creating build/bdist.macosx-10.6-intel
  creating build/bdist.macosx-10.6-intel/wheel
  creating build/bdist.macosx-10.6-intel/wheel/bcrypt
  copying build/lib.macosx-10.6-intel-3.5/bcrypt/__init__.py -> build/bdist.macosx-10.6-intel/wheel/bcrypt
  copying build/lib.macosx-10.6-intel-3.5/bcrypt/_bcrypt.cpython-35m-darwin.so -> build/bdist.macosx-10.6-intel/wheel/bcrypt
  running install_egg_info
  running egg_info
  creating py_bcrypt.egg-info
  writing py_bcrypt.egg-info/PKG-INFO
  writing dependency_links to py_bcrypt.egg-info/dependency_links.txt
  writing top-level names to py_bcrypt.egg-info/top_level.txt
  writing manifest file 'py_bcrypt.egg-info/SOURCES.txt'
  warning: manifest_maker: standard file '-c' not found

  reading manifest file 'py_bcrypt.egg-info/SOURCES.txt'
  writing manifest file 'py_bcrypt.egg-info/SOURCES.txt'
  Copying py_bcrypt.egg-info to build/bdist.macosx-10.6-intel/wheel/py_bcrypt-0.4-py3.5.egg-info
  running install_scripts
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-fic5kwn3/py-bcrypt/setup.py", line 61, in <module>
      ext_modules = [bcrypt]
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/core.py", line 148, in setup
      dist.run_commands()
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 955, in run_commands
      self.run_command(cmd)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/wheel/bdist_wheel.py", line 213, in run
      archive_basename = self.get_archive_basename()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/wheel/bdist_wheel.py", line 161, in get_archive_basename
      impl_tag, abi_tag, plat_tag = self.get_tag()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/wheel/bdist_wheel.py", line 155, in get_tag
      assert tag == supported_tags[0]
  AssertionError

  ----------------------------------------
  Failed building wheel for py-bcrypt
Failed to build py-bcrypt
Installing collected packages: py-bcrypt
  Running setup.py install for py-bcrypt
Successfully installed py-bcrypt-0.4
(venv)Mama-Runcible:FlaskReParse Cotten$ pip install flask-bcrypt
Collecting flask-bcrypt
Requirement already satisfied (use --upgrade to upgrade): Flask in /Users/Cotten/venv/lib/python3.5/site-packages (from flask-bcrypt)
Collecting bcrypt (from flask-bcrypt)
  Using cached bcrypt-2.0.0.tar.gz
Requirement already satisfied (use --upgrade to upgrade): itsdangerous>=0.21 in /Users/Cotten/venv/lib/python3.5/site-packages (from Flask->flask-bcrypt)
Requirement already satisfied (use --upgrade to upgrade): Werkzeug>=0.7 in /Users/Cotten/venv/lib/python3.5/site-packages (from Flask->flask-bcrypt)
Requirement already satisfied (use --upgrade to upgrade): Jinja2>=2.4 in /Users/Cotten/venv/lib/python3.5/site-packages (from Flask->flask-bcrypt)
Collecting cffi>=1.1 (from bcrypt->flask-bcrypt)
  Downloading cffi-1.3.0.tar.gz (347kB)
    100% |████████████████████████████████| 348kB 197kB/s 
Collecting six>=1.4.1 (from bcrypt->flask-bcrypt)
  Using cached six-1.10.0-py2.py3-none-any.whl
Requirement already satisfied (use --upgrade to upgrade): MarkupSafe in /Users/Cotten/venv/lib/python3.5/site-packages (from Jinja2>=2.4->Flask->flask-bcrypt)
Requirement already satisfied (use --upgrade to upgrade): pycparser in /Users/Cotten/venv/lib/python3.5/site-packages (from cffi>=1.1->bcrypt->flask-bcrypt)
Building wheels for collected packages: bcrypt, cffi
  Running setup.py bdist_wheel for bcrypt
  Complete output from command /Users/Cotten/venv/bin/python3.5 -c "import setuptools;__file__='/private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-87gopmff/bcrypt/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/tmptg29htz6pip-wheel-:
  _configtest.c:1:1: error: thread-local storage is not supported for the current target
  __thread int some_threadlocal_variable_42;
  ^
  1 error generated.
  c/_cffi_backend.c:13:10: fatal error: 'ffi.h' file not found
  #include <ffi.h>
           ^
  1 error generated.
  Note: will not use '__thread' in the C code
  The above error message can be safely ignored
  Traceback (most recent call last):
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/unixccompiler.py", line 116, in _compile
      extra_postargs)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/ccompiler.py", line 909, in spawn
      spawn(cmd, dry_run=self.dry_run)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/spawn.py", line 36, in spawn
      _spawn_posix(cmd, search_path, dry_run=dry_run)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/spawn.py", line 159, in _spawn_posix
      % (cmd, exit_status))
  distutils.errors.DistutilsExecError: command '/usr/bin/clang' failed with exit status 1

  During handling of the above exception, another exception occurred:

  Traceback (most recent call last):
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/core.py", line 148, in setup
      dist.run_commands()
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 955, in run_commands
      self.run_command(cmd)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/bdist_egg.py", line 160, in run
      cmd = self.call_command('install_lib', warn_dir=0)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/bdist_egg.py", line 146, in call_command
      self.run_command(cmdname)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/install_lib.py", line 10, in run
      self.build()
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/command/install_lib.py", line 107, in build
      self.run_command('build_ext')
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/build_ext.py", line 49, in run
      _build_ext.run(self)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/command/build_ext.py", line 338, in run
      self.build_extensions()
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/command/build_ext.py", line 447, in build_extensions
      self._build_extensions_serial()
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/command/build_ext.py", line 472, in _build_extensions_serial
      self.build_extension(ext)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/build_ext.py", line 174, in build_extension
      _build_ext.build_extension(self, ext)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/command/build_ext.py", line 532, in build_extension
      depends=ext.depends)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/ccompiler.py", line 574, in compile
      self._compile(obj, src, ext, cc_args, extra_postargs, pp_opts)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/unixccompiler.py", line 118, in _compile
      raise CompileError(msg)
  distutils.errors.CompileError: command '/usr/bin/clang' failed with exit status 1

  During handling of the above exception, another exception occurred:

  Traceback (most recent call last):
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 152, in save_modules
      yield saved
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 193, in setup_context
      yield
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 237, in run_setup
      DirectorySandbox(setup_dir).run(runner)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 267, in run
      return func()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 236, in runner
      _execfile(setup_script, ns)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 46, in _execfile
      exec(code, globals, locals)
    File "/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/easy_install-mxw7h2nl/cffi-1.3.0/setup.py", line 191, in <module>
      author_email=__about__["__email__"],
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/core.py", line 163, in setup
      raise SystemExit("error: " + str(msg))
  SystemExit: error: command '/usr/bin/clang' failed with exit status 1

  During handling of the above exception, another exception occurred:

  Traceback (most recent call last):
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 1056, in run_setup
      run_setup(setup_script, args)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 240, in run_setup
      raise
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/contextlib.py", line 77, in __exit__
      self.gen.throw(type, value, traceback)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 193, in setup_context
      yield
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/contextlib.py", line 77, in __exit__
      self.gen.throw(type, value, traceback)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 164, in save_modules
      saved_exc.resume()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 139, in resume
      compat.reraise(type, exc, self._tb)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/compat.py", line 65, in reraise
      raise value.with_traceback(tb)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 152, in save_modules
      yield saved
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 193, in setup_context
      yield
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 237, in run_setup
      DirectorySandbox(setup_dir).run(runner)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 267, in run
      return func()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 236, in runner
      _execfile(setup_script, ns)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 46, in _execfile
      exec(code, globals, locals)
    File "/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/easy_install-mxw7h2nl/cffi-1.3.0/setup.py", line 191, in <module>
      author_email=__about__["__email__"],
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/core.py", line 163, in setup
      raise SystemExit("error: " + str(msg))
  SystemExit: error: command '/usr/bin/clang' failed with exit status 1

  During handling of the above exception, another exception occurred:

  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-87gopmff/bcrypt/setup.py", line 226, in <module>
      **keywords_with_side_effects(sys.argv)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/core.py", line 108, in setup
      _setup_distribution = dist = klass(attrs)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/dist.py", line 268, in __init__
      self.fetch_build_eggs(attrs['setup_requires'])
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/dist.py", line 313, in fetch_build_eggs
      replace_conflicting=True,
    File "/Users/Cotten/venv/lib/python3.5/site-packages/pkg_resources/__init__.py", line 836, in resolve
      dist = best[req.key] = env.best_match(req, ws, installer)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/pkg_resources/__init__.py", line 1081, in best_match
      return self.obtain(req, installer)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/pkg_resources/__init__.py", line 1093, in obtain
      return installer(requirement)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/dist.py", line 380, in fetch_build_egg
      return cmd.easy_install(req)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 629, in easy_install
      return self.install_item(spec, dist.location, tmpdir, deps)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 659, in install_item
      dists = self.install_eggs(spec, download, tmpdir)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 842, in install_eggs
      return self.build_and_install(setup_script, setup_base)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 1070, in build_and_install
      self.run_setup(setup_script, setup_base, args)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 1058, in run_setup
      raise DistutilsError("Setup script exited with %s" % (v.args[0],))
  distutils.errors.DistutilsError: Setup script exited with error: command '/usr/bin/clang' failed with exit status 1

  ----------------------------------------
  Failed building wheel for bcrypt
  Running setup.py bdist_wheel for cffi
  Complete output from command /Users/Cotten/venv/bin/python3.5 -c "import setuptools;__file__='/private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-87gopmff/cffi/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/tmpcc2cscp4pip-wheel-:
  _configtest.c:1:1: error: thread-local storage is not supported for the current target
  __thread int some_threadlocal_variable_42;
  ^
  1 error generated.
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.macosx-10.6-intel-3.5
  creating build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/__init__.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/api.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/backend_ctypes.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/cffi_opcode.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/commontypes.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/cparser.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/ffiplatform.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/gc_weakref.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/lock.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/model.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/recompiler.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/setuptools_ext.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/vengine_cpy.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/vengine_gen.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/verifier.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/_cffi_include.h -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/parse_c_type.h -> build/lib.macosx-10.6-intel-3.5/cffi
  running build_ext
  building '_cffi_backend' extension
  creating build/temp.macosx-10.6-intel-3.5
  creating build/temp.macosx-10.6-intel-3.5/c
  /usr/bin/clang -fno-strict-aliasing -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch i386 -arch x86_64 -g -I/usr/include/ffi -I/usr/include/libffi -I/Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m -c c/_cffi_backend.c -o build/temp.macosx-10.6-intel-3.5/c/_cffi_backend.o
  c/_cffi_backend.c:13:10: fatal error: 'ffi.h' file not found
  #include <ffi.h>
           ^
  1 error generated.
  Note: will not use '__thread' in the C code
  The above error message can be safely ignored
  error: command '/usr/bin/clang' failed with exit status 1

  ----------------------------------------
  Failed building wheel for cffi
Failed to build bcrypt cffi
Installing collected packages: cffi, six, bcrypt, flask-bcrypt
  Running setup.py install for cffi
    Complete output from command /Users/Cotten/venv/bin/python3.5 -c "import setuptools, tokenize;__file__='/private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-87gopmff/cffi/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-705uqx2h-record/install-record.txt --single-version-externally-managed --compile --install-headers /Users/Cotten/venv/bin/../include/site/python3.5/cffi:
    _configtest.c:1:1: error: thread-local storage is not supported for the current target
    __thread int some_threadlocal_variable_42;
    ^
    1 error generated.
    running install
    running build
    running build_py
    running build_ext
    building '_cffi_backend' extension
    /usr/bin/clang -fno-strict-aliasing -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch i386 -arch x86_64 -g -I/usr/include/ffi -I/usr/include/libffi -I/Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m -c c/_cffi_backend.c -o build/temp.macosx-10.6-intel-3.5/c/_cffi_backend.o
    c/_cffi_backend.c:13:10: fatal error: 'ffi.h' file not found
    #include <ffi.h>
             ^
    1 error generated.
    Note: will not use '__thread' in the C code
    The above error message can be safely ignored
    error: command '/usr/bin/clang' failed with exit status 1

    ----------------------------------------
Command "/Users/Cotten/venv/bin/python3.5 -c "import setuptools, tokenize;__file__='/private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-87gopmff/cffi/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-705uqx2h-record/install-record.txt --single-version-externally-managed --compile --install-headers /Users/Cotten/venv/bin/../include/site/python3.5/cffi" failed with error code 1 in /private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-87gopmff/cffi
(venv)Mama-Runcible:FlaskReParse Cotten$ pip install flask-wtf
Requirement already satisfied (use --upgrade to upgrade): flask-wtf in /Users/Cotten/venv/lib/python3.5/site-packages
Requirement already satisfied (use --upgrade to upgrade): Werkzeug in /Users/Cotten/venv/lib/python3.5/site-packages (from flask-wtf)
Requirement already satisfied (use --upgrade to upgrade): Flask in /Users/Cotten/venv/lib/python3.5/site-packages (from flask-wtf)
Requirement already satisfied (use --upgrade to upgrade): WTForms in /Users/Cotten/venv/lib/python3.5/site-packages (from flask-wtf)
Requirement already satisfied (use --upgrade to upgrade): Jinja2>=2.4 in /Users/Cotten/venv/lib/python3.5/site-packages (from Flask->flask-wtf)
Requirement already satisfied (use --upgrade to upgrade): itsdangerous>=0.21 in /Users/Cotten/venv/lib/python3.5/site-packages (from Flask->flask-wtf)
Requirement already satisfied (use --upgrade to upgrade): MarkupSafe in /Users/Cotten/venv/lib/python3.5/site-packages (from Jinja2>=2.4->Flask->flask-wtf)
(venv)Mama-Runcible:FlaskReParse Cotten$ ls
app.py      forms.py    models.py   static      templates
(venv)Mama-Runcible:FlaskReParse Cotten$ python app.py 
Traceback (most recent call last):
  File "app.py", line 3, in <module>
    from flask.ext.bcrypt import check_password_hash
  File "/Users/Cotten/venv/lib/python3.5/site-packages/flask/exthook.py", line 87, in load_module
    raise ImportError('No module named %s' % fullname)
ImportError: No module named flask.ext.bcrypt
(venv)Mama-Runcible:FlaskReParse Cotten$

[MOD: added ```bash formatting -cf]

Cotten Blackwell
Cotten Blackwell
10,425 Points

Chris, I tried your suggestion but am still getting an error and blocked:

(venv)Mama-Runcible:FlaskReParse Cotten$ pip install py-bcrypt
Collecting py-bcrypt
  Downloading py-bcrypt-0.4.tar.gz
Building wheels for collected packages: py-bcrypt
  Running setup.py bdist_wheel for py-bcrypt
  Complete output from command /Users/Cotten/venv/bin/python3.5 -c "import setuptools;__file__='/private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-fic5kwn3/py-bcrypt/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/tmpshpm9xuppip-wheel-:
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.macosx-10.6-intel-3.5
  creating build/lib.macosx-10.6-intel-3.5/bcrypt
  copying bcrypt/__init__.py -> build/lib.macosx-10.6-intel-3.5/bcrypt
  running build_ext
  building 'bcrypt._bcrypt' extension
  creating build/temp.macosx-10.6-intel-3.5
  creating build/temp.macosx-10.6-intel-3.5/bcrypt
  /usr/bin/clang -fno-strict-aliasing -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch i386 -arch x86_64 -g -I/Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m -c bcrypt/bcrypt.c -o build/temp.macosx-10.6-intel-3.5/bcrypt/bcrypt.o
  /usr/bin/clang -fno-strict-aliasing -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch i386 -arch x86_64 -g -I/Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m -c bcrypt/bcrypt_pbkdf.c -o build/temp.macosx-10.6-intel-3.5/bcrypt/bcrypt_pbkdf.o
  /usr/bin/clang -fno-strict-aliasing -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch i386 -arch x86_64 -g -I/Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m -c bcrypt/bcrypt_python.c -o build/temp.macosx-10.6-intel-3.5/bcrypt/bcrypt_python.o
  bcrypt/bcrypt_python.c:208:17: warning: comparison of integers of different signs: 'Py_ssize_t' (aka 'long') and 'unsigned long' [-Wsign-compare]
          if (hashed_len == strlen(expected_copy))
              ~~~~~~~~~~ ^  ~~~~~~~~~~~~~~~~~~~~~
  1 warning generated.
  bcrypt/bcrypt_python.c:208:17: warning: comparison of integers of different signs: 'Py_ssize_t' (aka 'long') and 'unsigned long' [-Wsign-compare]
          if (hashed_len == strlen(expected_copy))
              ~~~~~~~~~~ ^  ~~~~~~~~~~~~~~~~~~~~~
  1 warning generated.
  /usr/bin/clang -fno-strict-aliasing -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch i386 -arch x86_64 -g -I/Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m -c bcrypt/blowfish.c -o build/temp.macosx-10.6-intel-3.5/bcrypt/blowfish.o
  /usr/bin/clang -fno-strict-aliasing -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch i386 -arch x86_64 -g -I/Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m -c bcrypt/sha2.c -o build/temp.macosx-10.6-intel-3.5/bcrypt/sha2.o
  /usr/bin/clang -fno-strict-aliasing -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch i386 -arch x86_64 -g -I/Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m -c bcrypt/timingsafe_bcmp.c -o build/temp.macosx-10.6-intel-3.5/bcrypt/timingsafe_bcmp.o
  /usr/bin/clang -bundle -undefined dynamic_lookup -arch i386 -arch x86_64 -g build/temp.macosx-10.6-intel-3.5/bcrypt/bcrypt.o build/temp.macosx-10.6-intel-3.5/bcrypt/bcrypt_pbkdf.o build/temp.macosx-10.6-intel-3.5/bcrypt/bcrypt_python.o build/temp.macosx-10.6-intel-3.5/bcrypt/blowfish.o build/temp.macosx-10.6-intel-3.5/bcrypt/sha2.o build/temp.macosx-10.6-intel-3.5/bcrypt/timingsafe_bcmp.o -o build/lib.macosx-10.6-intel-3.5/bcrypt/_bcrypt.cpython-35m-darwin.so
  installing to build/bdist.macosx-10.6-intel/wheel
  running install
  running install_lib
  creating build/bdist.macosx-10.6-intel
  creating build/bdist.macosx-10.6-intel/wheel
  creating build/bdist.macosx-10.6-intel/wheel/bcrypt
  copying build/lib.macosx-10.6-intel-3.5/bcrypt/__init__.py -> build/bdist.macosx-10.6-intel/wheel/bcrypt
  copying build/lib.macosx-10.6-intel-3.5/bcrypt/_bcrypt.cpython-35m-darwin.so -> build/bdist.macosx-10.6-intel/wheel/bcrypt
  running install_egg_info
  running egg_info
  creating py_bcrypt.egg-info
  writing py_bcrypt.egg-info/PKG-INFO
  writing dependency_links to py_bcrypt.egg-info/dependency_links.txt
  writing top-level names to py_bcrypt.egg-info/top_level.txt
  writing manifest file 'py_bcrypt.egg-info/SOURCES.txt'
  warning: manifest_maker: standard file '-c' not found

  reading manifest file 'py_bcrypt.egg-info/SOURCES.txt'
  writing manifest file 'py_bcrypt.egg-info/SOURCES.txt'
  Copying py_bcrypt.egg-info to build/bdist.macosx-10.6-intel/wheel/py_bcrypt-0.4-py3.5.egg-info
  running install_scripts
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-fic5kwn3/py-bcrypt/setup.py", line 61, in <module>
      ext_modules = [bcrypt]
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/core.py", line 148, in setup
      dist.run_commands()
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 955, in run_commands
      self.run_command(cmd)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/wheel/bdist_wheel.py", line 213, in run
      archive_basename = self.get_archive_basename()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/wheel/bdist_wheel.py", line 161, in get_archive_basename
      impl_tag, abi_tag, plat_tag = self.get_tag()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/wheel/bdist_wheel.py", line 155, in get_tag
      assert tag == supported_tags[0]
  AssertionError

  ----------------------------------------
  Failed building wheel for py-bcrypt
Failed to build py-bcrypt
Installing collected packages: py-bcrypt
  Running setup.py install for py-bcrypt
Successfully installed py-bcrypt-0.4

(venv)Mama-Runcible:FlaskReParse Cotten$ pip install flask-bcrypt
Collecting flask-bcrypt
Requirement already satisfied (use --upgrade to upgrade): Flask in /Users/Cotten/venv/lib/python3.5/site-packages (from flask-bcrypt)
Collecting bcrypt (from flask-bcrypt)
  Using cached bcrypt-2.0.0.tar.gz
Requirement already satisfied (use --upgrade to upgrade): itsdangerous>=0.21 in /Users/Cotten/venv/lib/python3.5/site-packages (from Flask->flask-bcrypt)
Requirement already satisfied (use --upgrade to upgrade): Werkzeug>=0.7 in /Users/Cotten/venv/lib/python3.5/site-packages (from Flask->flask-bcrypt)
Requirement already satisfied (use --upgrade to upgrade): Jinja2>=2.4 in /Users/Cotten/venv/lib/python3.5/site-packages (from Flask->flask-bcrypt)
Collecting cffi>=1.1 (from bcrypt->flask-bcrypt)
  Downloading cffi-1.3.0.tar.gz (347kB)
    100% |████████████████████████████████| 348kB 197kB/s 
Collecting six>=1.4.1 (from bcrypt->flask-bcrypt)
  Using cached six-1.10.0-py2.py3-none-any.whl
Requirement already satisfied (use --upgrade to upgrade): MarkupSafe in /Users/Cotten/venv/lib/python3.5/site-packages (from Jinja2>=2.4->Flask->flask-bcrypt)
Requirement already satisfied (use --upgrade to upgrade): pycparser in /Users/Cotten/venv/lib/python3.5/site-packages (from cffi>=1.1->bcrypt->flask-bcrypt)
Building wheels for collected packages: bcrypt, cffi
  Running setup.py bdist_wheel for bcrypt
  Complete output from command /Users/Cotten/venv/bin/python3.5 -c "import setuptools;__file__='/private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-87gopmff/bcrypt/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/tmptg29htz6pip-wheel-:
  _configtest.c:1:1: error: thread-local storage is not supported for the current target
  __thread int some_threadlocal_variable_42;
  ^
  1 error generated.
  c/_cffi_backend.c:13:10: fatal error: 'ffi.h' file not found
  #include <ffi.h>
           ^
  1 error generated.
  Note: will not use '__thread' in the C code
  The above error message can be safely ignored
  Traceback (most recent call last):
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/unixccompiler.py", line 116, in _compile
      extra_postargs)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/ccompiler.py", line 909, in spawn
      spawn(cmd, dry_run=self.dry_run)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/spawn.py", line 36, in spawn
      _spawn_posix(cmd, search_path, dry_run=dry_run)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/spawn.py", line 159, in _spawn_posix
      % (cmd, exit_status))
  distutils.errors.DistutilsExecError: command '/usr/bin/clang' failed with exit status 1

  During handling of the above exception, another exception occurred:

  Traceback (most recent call last):
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/core.py", line 148, in setup
      dist.run_commands()
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 955, in run_commands
      self.run_command(cmd)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/bdist_egg.py", line 160, in run
      cmd = self.call_command('install_lib', warn_dir=0)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/bdist_egg.py", line 146, in call_command
      self.run_command(cmdname)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/install_lib.py", line 10, in run
      self.build()
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/command/install_lib.py", line 107, in build
      self.run_command('build_ext')
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/build_ext.py", line 49, in run
      _build_ext.run(self)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/command/build_ext.py", line 338, in run
      self.build_extensions()
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/command/build_ext.py", line 447, in build_extensions
      self._build_extensions_serial()
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/command/build_ext.py", line 472, in _build_extensions_serial
      self.build_extension(ext)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/build_ext.py", line 174, in build_extension
      _build_ext.build_extension(self, ext)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/command/build_ext.py", line 532, in build_extension
      depends=ext.depends)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/ccompiler.py", line 574, in compile
      self._compile(obj, src, ext, cc_args, extra_postargs, pp_opts)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/unixccompiler.py", line 118, in _compile
      raise CompileError(msg)
  distutils.errors.CompileError: command '/usr/bin/clang' failed with exit status 1

  During handling of the above exception, another exception occurred:

  Traceback (most recent call last):
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 152, in save_modules
      yield saved
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 193, in setup_context
      yield
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 237, in run_setup
      DirectorySandbox(setup_dir).run(runner)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 267, in run
      return func()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 236, in runner
      _execfile(setup_script, ns)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 46, in _execfile
      exec(code, globals, locals)
    File "/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/easy_install-mxw7h2nl/cffi-1.3.0/setup.py", line 191, in <module>
      author_email=__about__["__email__"],
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/core.py", line 163, in setup
      raise SystemExit("error: " + str(msg))
  SystemExit: error: command '/usr/bin/clang' failed with exit status 1

  During handling of the above exception, another exception occurred:

  Traceback (most recent call last):
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 1056, in run_setup
      run_setup(setup_script, args)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 240, in run_setup
      raise
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/contextlib.py", line 77, in __exit__
      self.gen.throw(type, value, traceback)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 193, in setup_context
      yield
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/contextlib.py", line 77, in __exit__
      self.gen.throw(type, value, traceback)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 164, in save_modules
      saved_exc.resume()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 139, in resume
      compat.reraise(type, exc, self._tb)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/compat.py", line 65, in reraise
      raise value.with_traceback(tb)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 152, in save_modules
      yield saved
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 193, in setup_context
      yield
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 237, in run_setup
      DirectorySandbox(setup_dir).run(runner)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 267, in run
      return func()
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 236, in runner
      _execfile(setup_script, ns)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/sandbox.py", line 46, in _execfile
      exec(code, globals, locals)
    File "/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/easy_install-mxw7h2nl/cffi-1.3.0/setup.py", line 191, in <module>
      author_email=__about__["__email__"],
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/core.py", line 163, in setup
      raise SystemExit("error: " + str(msg))
  SystemExit: error: command '/usr/bin/clang' failed with exit status 1

  During handling of the above exception, another exception occurred:

  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-87gopmff/bcrypt/setup.py", line 226, in <module>
      **keywords_with_side_effects(sys.argv)
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/core.py", line 108, in setup
      _setup_distribution = dist = klass(attrs)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/dist.py", line 268, in __init__
      self.fetch_build_eggs(attrs['setup_requires'])
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/dist.py", line 313, in fetch_build_eggs
      replace_conflicting=True,
    File "/Users/Cotten/venv/lib/python3.5/site-packages/pkg_resources/__init__.py", line 836, in resolve
      dist = best[req.key] = env.best_match(req, ws, installer)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/pkg_resources/__init__.py", line 1081, in best_match
      return self.obtain(req, installer)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/pkg_resources/__init__.py", line 1093, in obtain
      return installer(requirement)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/dist.py", line 380, in fetch_build_egg
      return cmd.easy_install(req)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 629, in easy_install
      return self.install_item(spec, dist.location, tmpdir, deps)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 659, in install_item
      dists = self.install_eggs(spec, download, tmpdir)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 842, in install_eggs
      return self.build_and_install(setup_script, setup_base)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 1070, in build_and_install
      self.run_setup(setup_script, setup_base, args)
    File "/Users/Cotten/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 1058, in run_setup
      raise DistutilsError("Setup script exited with %s" % (v.args[0],))
  distutils.errors.DistutilsError: Setup script exited with error: command '/usr/bin/clang' failed with exit status 1

  ----------------------------------------
  Failed building wheel for bcrypt
  Running setup.py bdist_wheel for cffi
  Complete output from command /Users/Cotten/venv/bin/python3.5 -c "import setuptools;__file__='/private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-87gopmff/cffi/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/tmpcc2cscp4pip-wheel-:
  _configtest.c:1:1: error: thread-local storage is not supported for the current target
  __thread int some_threadlocal_variable_42;
  ^
  1 error generated.
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.macosx-10.6-intel-3.5
  creating build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/__init__.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/api.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/backend_ctypes.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/cffi_opcode.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/commontypes.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/cparser.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/ffiplatform.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/gc_weakref.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/lock.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/model.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/recompiler.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/setuptools_ext.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/vengine_cpy.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/vengine_gen.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/verifier.py -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/_cffi_include.h -> build/lib.macosx-10.6-intel-3.5/cffi
  copying cffi/parse_c_type.h -> build/lib.macosx-10.6-intel-3.5/cffi
  running build_ext
  building '_cffi_backend' extension
  creating build/temp.macosx-10.6-intel-3.5
  creating build/temp.macosx-10.6-intel-3.5/c
  /usr/bin/clang -fno-strict-aliasing -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch i386 -arch x86_64 -g -I/usr/include/ffi -I/usr/include/libffi -I/Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m -c c/_cffi_backend.c -o build/temp.macosx-10.6-intel-3.5/c/_cffi_backend.o
  c/_cffi_backend.c:13:10: fatal error: 'ffi.h' file not found
  #include <ffi.h>
           ^
  1 error generated.
  Note: will not use '__thread' in the C code
  The above error message can be safely ignored
  error: command '/usr/bin/clang' failed with exit status 1

  ----------------------------------------
  Failed building wheel for cffi
Failed to build bcrypt cffi
Installing collected packages: cffi, six, bcrypt, flask-bcrypt
  Running setup.py install for cffi
    Complete output from command /Users/Cotten/venv/bin/python3.5 -c "import setuptools, tokenize;__file__='/private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-87gopmff/cffi/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-705uqx2h-record/install-record.txt --single-version-externally-managed --compile --install-headers /Users/Cotten/venv/bin/../include/site/python3.5/cffi:
    _configtest.c:1:1: error: thread-local storage is not supported for the current target
    __thread int some_threadlocal_variable_42;
    ^
    1 error generated.
    running install
    running build
    running build_py
    running build_ext
    building '_cffi_backend' extension
    /usr/bin/clang -fno-strict-aliasing -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch i386 -arch x86_64 -g -I/usr/include/ffi -I/usr/include/libffi -I/Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m -c c/_cffi_backend.c -o build/temp.macosx-10.6-intel-3.5/c/_cffi_backend.o
    c/_cffi_backend.c:13:10: fatal error: 'ffi.h' file not found
    #include <ffi.h>
             ^
    1 error generated.
    Note: will not use '__thread' in the C code
    The above error message can be safely ignored
    error: command '/usr/bin/clang' failed with exit status 1

    ----------------------------------------
Command "/Users/Cotten/venv/bin/python3.5 -c "import setuptools, tokenize;__file__='/private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-87gopmff/cffi/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-705uqx2h-record/install-record.txt --single-version-externally-managed --compile --install-headers /Users/Cotten/venv/bin/../include/site/python3.5/cffi" failed with error code 1 in /private/var/folders/sf/n0fh7qbx01g7bwqsk9dnz5h80000gn/T/pip-build-87gopmff/cffi

(venv)Mama-Runcible:FlaskReParse Cotten$ pip install flask-wtf
Requirement already satisfied (use --upgrade to upgrade): flask-wtf in /Users/Cotten/venv/lib/python3.5/site-packages
Requirement already satisfied (use --upgrade to upgrade): Werkzeug in /Users/Cotten/venv/lib/python3.5/site-packages (from flask-wtf)
Requirement already satisfied (use --upgrade to upgrade): Flask in /Users/Cotten/venv/lib/python3.5/site-packages (from flask-wtf)
Requirement already satisfied (use --upgrade to upgrade): WTForms in /Users/Cotten/venv/lib/python3.5/site-packages (from flask-wtf)
Requirement already satisfied (use --upgrade to upgrade): Jinja2>=2.4 in /Users/Cotten/venv/lib/python3.5/site-packages (from Flask->flask-wtf)
Requirement already satisfied (use --upgrade to upgrade): itsdangerous>=0.21 in /Users/Cotten/venv/lib/python3.5/site-packages (from Flask->flask-wtf)
Requirement already satisfied (use --upgrade to upgrade): MarkupSafe in /Users/Cotten/venv/lib/python3.5/site-packages (from Jinja2>=2.4->Flask->flask-wtf)

(venv)Mama-Runcible:FlaskReParse Cotten$ ls
app.py      forms.py    models.py   static      templates

(venv)Mama-Runcible:FlaskReParse Cotten$ python app.py 
Traceback (most recent call last):
  File "app.py", line 3, in <module>
    from flask.ext.bcrypt import check_password_hash
  File "/Users/Cotten/venv/lib/python3.5/site-packages/flask/exthook.py", line 87, in load_module
    raise ImportError('No module named %s' % fullname)
ImportError: No module named flask.ext.bcrypt

(venv)Mama-Runcible:FlaskReParse Cotten$

[MOD: added ```bash formatting and linebreaks -cf]

Chris Freeman
Chris Freeman
Treehouse Moderator 68,457 Points

Alright Cotten Blackwell, we are going to get this fixed! I don't have Python 3.5 on my system so that might be part of the problem. I have updated my answer to include a Minimum path to running Flask with Python 3.4. It is non-destructive, so please try it out.

Kenneth Love
STAFF
Kenneth Love
Treehouse Guest Teacher

Hmm, I cannot replicate this but I'm on 10.11 not 10.10.5. You have the Xcode command line tools installed? I think you do that with xcode-select install. You might have to agree to the license with sudo xcodebuild -license.

Edit to add: I am testing this with Python 3.5.0, so it doesn't seem to be a Python problem, rather a build problem.

Cotten Blackwell
Cotten Blackwell
10,425 Points

Chris, I'm not able to get past the first step of your updated answer / flow:

Mama-Runcible:FlaskReParseTest Cotten$ virtualenv -p /usr/bin/python3.4 venv3.4 -bash: virtualenv: command not found

I also tried these permutations:

Mama-Runcible:FlaskReParseTest Cotten$ virtualenv -p /usr/bin/python3.5 venv3.5 -bash: virtualenv: command not found

Mama-Runcible:FlaskReParseTest Cotten$ mkvirtualenv -p /usr/bin/python3.4 venv3.4 -bash: mkvirtualenv: command not found

Mama-Runcible:FlaskReParseTest Cotten$ mkvirtualenv -p /usr/bin/python3.5 venv3.5 -bash: mkvirtualenv: command not found

And here's the relevant listing of current contents of my /usr/bin/ directory:

Mama-Runcible:bin Cotten$ ls py* pydoc python python2.6-config pythonw pydoc2.6 python-config python2.7 pythonw2.6 pydoc2.7 python2.6 python2.7-config pythonw2.7

Kenneth Love
Kenneth Love
Treehouse Guest Teacher

You don't have virtualenv installed. You don't actually need it, though. Anywhere you see mkvirtualenv or virtualenv, you should be able to sub -m venv. So, like, instead of virtualenv venv3.4, use python -m venv venv3.4

Chris Freeman
Chris Freeman
Treehouse Moderator 68,457 Points

All I am very confused. In your blogs of your original post I see "(venv)" in your prompt.

That implied to me that you had a virtual environment running.

If you don't have a virtual environment running where did that come from?

Chris Freeman
Chris Freeman
Treehouse Moderator 68,457 Points

Thanks Kenneth! I had forgotten about using "-m venv".

Cotten Blackwell
Cotten Blackwell
10,425 Points

I have venv installed:

Mama-Runcible:FlaskReParseTest Cotten$ pip3 install --user virtualenv Requirement already satisfied (use --upgrade to upgrade): virtualenv in /Users/Cotten/Library/Python/3.5/lib/python/site-packages

But I tried Kenneth's alternative syntax anyway -- still no joy in Mudville:

Mama-Runcible:FlaskReParseTest Cotten$ python -m venv -p /usr/bin/python3.4 venv3.4 /usr/bin/python: No module named venv

Kenneth Love
Kenneth Love
Treehouse Guest Teacher

If you're having to use pip3, I bet your Python is python3.

Cotten Blackwell
Cotten Blackwell
10,425 Points

I wouldn't say that I'm "having" to use pip3 -- I'm just following the original instructions, and don't know how to update them correctly...

I faced the same problem when trying to deploy my Flask app on an online server. Everything was fine a few days ago, but when I rebuilt the server today it suddenly refused to install bcrypt.

Eventually, after a long struggle, I was able to solve the problem. It had said: "Failed building wheel for cffi", and cffi as I've noticed was one of the packages automatically installed with one of the Flask packages - probably bcrypt - so I installed it manually specifying the version that worked for me previously:

pip install cffi==1.7.0

After that, bcrypt installed normally.

Hope that helps.