stef / pbp

salty privacy
Other
53 stars 5 forks source link

Failure on OpenIndiana/Solaris #16

Closed sm-tradeboox closed 9 years ago

sm-tradeboox commented 9 years ago

Hello.

Compile failing on OpenIndiana due to lack of sysctl.h on the system. Logs below. Same result with Python 3.4.

I am very interested in using your package for a project that replaces/extends PGP, though unfortunately in a proprietary way. Despite this, we intend to publish the code later.

Thanks.

All log below from attempted installation in a SmartOS VM.

[root@services ~]# pip -V
pip 1.5.6 from /opt/local/lib/python2.7/site-packages (python 2.7)
[root@services ~]# pip search pbp
pbp.recipe.trac           - ZC Buildout recipe to install and configure a Trac server.
pbp.recipe.noserunner     - Expert Python Programming - ZC Buildout runner for nose
PbPython                  - Code for making API calls to Pandorabots server.
pbp.scripts               - Expert Python Programming - Contains scripts presented throughout the book
pbp.skels                 - Expert Python Programming - Skeletons used in the book
pbp                       - simple crypto tool
PBPWScraper               - A simple scraper of the public posts on pastebin. It looks for passwords.
pbp.buildbotenv           - Expert Python Programming - Buildbot environment
keas.pbpersist            - ZODB Persistence in a Google Protocol Buffer
[root@services ~]# pip install pbp
Downloading/unpacking pbp
  Downloading pbp-0.3.1.tar.gz
  Running setup.py (path:/tmp/pip_build_root/pbp/setup.py) egg_info for package pbp

Downloading/unpacking scrypt (from pbp)
  Downloading scrypt-0.6.1.tar.gz
  Running setup.py (path:/tmp/pip_build_root/scrypt/setup.py) egg_info for package scrypt

Downloading/unpacking pysodium (from pbp)
  Downloading pysodium-0.6.5.1.tar.gz
  Running setup.py (path:/tmp/pip_build_root/pysodium/setup.py) egg_info for package pysodium

Downloading/unpacking SecureString (from pbp)
  Downloading SecureString-0.1.tar.gz
  Running setup.py (path:/tmp/pip_build_root/SecureString/setup.py) egg_info for package SecureString

Installing collected packages: pbp, scrypt, pysodium, SecureString
  Running setup.py install for pbp

    Installing pbp script to /opt/local/bin
  Running setup.py install for scrypt
    building '_scrypt' extension
    gcc -fno-strict-aliasing -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -DNDEBUG -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -fPIC -DHAVE_CONFIG_H -DHAVE_POSIX_MEMALIGN=1 -DHAVE_SYSCTL_HW_USERMEM=1 -Iscrypt-1.1.6 -Iscrypt-1.1.6/lib -Iscrypt-1.1.6/lib/scryptenc -Iscrypt-1.1.6/lib/crypto -Iscrypt-1.1.6/lib/util -I/opt/local/include/python2.7 -c src/scrypt.c -o build/temp.solaris-2.11-i86pc.64bit-2.7/src/scrypt.o
    gcc -fno-strict-aliasing -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -DNDEBUG -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -fPIC -DHAVE_CONFIG_H -DHAVE_POSIX_MEMALIGN=1 -DHAVE_SYSCTL_HW_USERMEM=1 -Iscrypt-1.1.6 -Iscrypt-1.1.6/lib -Iscrypt-1.1.6/lib/scryptenc -Iscrypt-1.1.6/lib/crypto -Iscrypt-1.1.6/lib/util -I/opt/local/include/python2.7 -c scrypt-1.1.6/lib/crypto/crypto_aesctr.c -o build/temp.solaris-2.11-i86pc.64bit-2.7/scrypt-1.1.6/lib/crypto/crypto_aesctr.o
    gcc -fno-strict-aliasing -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -DNDEBUG -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -fPIC -DHAVE_CONFIG_H -DHAVE_POSIX_MEMALIGN=1 -DHAVE_SYSCTL_HW_USERMEM=1 -Iscrypt-1.1.6 -Iscrypt-1.1.6/lib -Iscrypt-1.1.6/lib/scryptenc -Iscrypt-1.1.6/lib/crypto -Iscrypt-1.1.6/lib/util -I/opt/local/include/python2.7 -c scrypt-1.1.6/lib/crypto/crypto_scrypt-nosse.c -o build/temp.solaris-2.11-i86pc.64bit-2.7/scrypt-1.1.6/lib/crypto/crypto_scrypt-nosse.o
    gcc -fno-strict-aliasing -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -DNDEBUG -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -fPIC -DHAVE_CONFIG_H -DHAVE_POSIX_MEMALIGN=1 -DHAVE_SYSCTL_HW_USERMEM=1 -Iscrypt-1.1.6 -Iscrypt-1.1.6/lib -Iscrypt-1.1.6/lib/scryptenc -Iscrypt-1.1.6/lib/crypto -Iscrypt-1.1.6/lib/util -I/opt/local/include/python2.7 -c scrypt-1.1.6/lib/crypto/sha256.c -o build/temp.solaris-2.11-i86pc.64bit-2.7/scrypt-1.1.6/lib/crypto/sha256.o
    gcc -fno-strict-aliasing -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -DNDEBUG -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -fPIC -DHAVE_CONFIG_H -DHAVE_POSIX_MEMALIGN=1 -DHAVE_SYSCTL_HW_USERMEM=1 -Iscrypt-1.1.6 -Iscrypt-1.1.6/lib -Iscrypt-1.1.6/lib/scryptenc -Iscrypt-1.1.6/lib/crypto -Iscrypt-1.1.6/lib/util -I/opt/local/include/python2.7 -c scrypt-1.1.6/lib/scryptenc/scryptenc.c -o build/temp.solaris-2.11-i86pc.64bit-2.7/scrypt-1.1.6/lib/scryptenc/scryptenc.o
    gcc -fno-strict-aliasing -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -DNDEBUG -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -fPIC -DHAVE_CONFIG_H -DHAVE_POSIX_MEMALIGN=1 -DHAVE_SYSCTL_HW_USERMEM=1 -Iscrypt-1.1.6 -Iscrypt-1.1.6/lib -Iscrypt-1.1.6/lib/scryptenc -Iscrypt-1.1.6/lib/crypto -Iscrypt-1.1.6/lib/util -I/opt/local/include/python2.7 -c scrypt-1.1.6/lib/scryptenc/scryptenc_cpuperf.c -o build/temp.solaris-2.11-i86pc.64bit-2.7/scrypt-1.1.6/lib/scryptenc/scryptenc_cpuperf.o
    gcc -fno-strict-aliasing -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -DNDEBUG -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -fPIC -DHAVE_CONFIG_H -DHAVE_POSIX_MEMALIGN=1 -DHAVE_SYSCTL_HW_USERMEM=1 -Iscrypt-1.1.6 -Iscrypt-1.1.6/lib -Iscrypt-1.1.6/lib/scryptenc -Iscrypt-1.1.6/lib/crypto -Iscrypt-1.1.6/lib/util -I/opt/local/include/python2.7 -c scrypt-1.1.6/lib/util/memlimit.c -o build/temp.solaris-2.11-i86pc.64bit-2.7/scrypt-1.1.6/lib/util/memlimit.o
    scrypt-1.1.6/lib/util/memlimit.c:47:24: fatal error: sys/sysctl.h: No such file or directory
    compilation terminated.
    error: command 'gcc' failed with exit status 1
    Complete output from command /opt/local/bin/python2.7 -c "import setuptools, tokenize;__file__='/tmp/pip_build_root/scrypt/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-azkQMa-record/install-record.txt --single-version-externally-managed --compile:
    running install

running build

running build_py

creating build

creating build/lib.solaris-2.11-i86pc.64bit-2.7

copying scrypt.py -> build/lib.solaris-2.11-i86pc.64bit-2.7

running build_ext

building '_scrypt' extension

creating build/temp.solaris-2.11-i86pc.64bit-2.7

creating build/temp.solaris-2.11-i86pc.64bit-2.7/src

creating build/temp.solaris-2.11-i86pc.64bit-2.7/scrypt-1.1.6

creating build/temp.solaris-2.11-i86pc.64bit-2.7/scrypt-1.1.6/lib

creating build/temp.solaris-2.11-i86pc.64bit-2.7/scrypt-1.1.6/lib/crypto

creating build/temp.solaris-2.11-i86pc.64bit-2.7/scrypt-1.1.6/lib/scryptenc

creating build/temp.solaris-2.11-i86pc.64bit-2.7/scrypt-1.1.6/lib/util

gcc -fno-strict-aliasing -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -DNDEBUG -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -fPIC -DHAVE_CONFIG_H -DHAVE_POSIX_MEMALIGN=1 -DHAVE_SYSCTL_HW_USERMEM=1 -Iscrypt-1.1.6 -Iscrypt-1.1.6/lib -Iscrypt-1.1.6/lib/scryptenc -Iscrypt-1.1.6/lib/crypto -Iscrypt-1.1.6/lib/util -I/opt/local/include/python2.7 -c src/scrypt.c -o build/temp.solaris-2.11-i86pc.64bit-2.7/src/scrypt.o

gcc -fno-strict-aliasing -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -DNDEBUG -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -fPIC -DHAVE_CONFIG_H -DHAVE_POSIX_MEMALIGN=1 -DHAVE_SYSCTL_HW_USERMEM=1 -Iscrypt-1.1.6 -Iscrypt-1.1.6/lib -Iscrypt-1.1.6/lib/scryptenc -Iscrypt-1.1.6/lib/crypto -Iscrypt-1.1.6/lib/util -I/opt/local/include/python2.7 -c scrypt-1.1.6/lib/crypto/crypto_aesctr.c -o build/temp.solaris-2.11-i86pc.64bit-2.7/scrypt-1.1.6/lib/crypto/crypto_aesctr.o

gcc -fno-strict-aliasing -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -DNDEBUG -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -fPIC -DHAVE_CONFIG_H -DHAVE_POSIX_MEMALIGN=1 -DHAVE_SYSCTL_HW_USERMEM=1 -Iscrypt-1.1.6 -Iscrypt-1.1.6/lib -Iscrypt-1.1.6/lib/scryptenc -Iscrypt-1.1.6/lib/crypto -Iscrypt-1.1.6/lib/util -I/opt/local/include/python2.7 -c scrypt-1.1.6/lib/crypto/crypto_scrypt-nosse.c -o build/temp.solaris-2.11-i86pc.64bit-2.7/scrypt-1.1.6/lib/crypto/crypto_scrypt-nosse.o

gcc -fno-strict-aliasing -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -DNDEBUG -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -fPIC -DHAVE_CONFIG_H -DHAVE_POSIX_MEMALIGN=1 -DHAVE_SYSCTL_HW_USERMEM=1 -Iscrypt-1.1.6 -Iscrypt-1.1.6/lib -Iscrypt-1.1.6/lib/scryptenc -Iscrypt-1.1.6/lib/crypto -Iscrypt-1.1.6/lib/util -I/opt/local/include/python2.7 -c scrypt-1.1.6/lib/crypto/sha256.c -o build/temp.solaris-2.11-i86pc.64bit-2.7/scrypt-1.1.6/lib/crypto/sha256.o

gcc -fno-strict-aliasing -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -DNDEBUG -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -fPIC -DHAVE_CONFIG_H -DHAVE_POSIX_MEMALIGN=1 -DHAVE_SYSCTL_HW_USERMEM=1 -Iscrypt-1.1.6 -Iscrypt-1.1.6/lib -Iscrypt-1.1.6/lib/scryptenc -Iscrypt-1.1.6/lib/crypto -Iscrypt-1.1.6/lib/util -I/opt/local/include/python2.7 -c scrypt-1.1.6/lib/scryptenc/scryptenc.c -o build/temp.solaris-2.11-i86pc.64bit-2.7/scrypt-1.1.6/lib/scryptenc/scryptenc.o

gcc -fno-strict-aliasing -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -DNDEBUG -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -fPIC -DHAVE_CONFIG_H -DHAVE_POSIX_MEMALIGN=1 -DHAVE_SYSCTL_HW_USERMEM=1 -Iscrypt-1.1.6 -Iscrypt-1.1.6/lib -Iscrypt-1.1.6/lib/scryptenc -Iscrypt-1.1.6/lib/crypto -Iscrypt-1.1.6/lib/util -I/opt/local/include/python2.7 -c scrypt-1.1.6/lib/scryptenc/scryptenc_cpuperf.c -o build/temp.solaris-2.11-i86pc.64bit-2.7/scrypt-1.1.6/lib/scryptenc/scryptenc_cpuperf.o

gcc -fno-strict-aliasing -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -DNDEBUG -O2 -pipe -O2 -DHAVE_DB_185_H -pthread -I/usr/include -I/opt/local/include -I/opt/local/include/db4 -I/opt/local/include/ncurses -fPIC -DHAVE_CONFIG_H -DHAVE_POSIX_MEMALIGN=1 -DHAVE_SYSCTL_HW_USERMEM=1 -Iscrypt-1.1.6 -Iscrypt-1.1.6/lib -Iscrypt-1.1.6/lib/scryptenc -Iscrypt-1.1.6/lib/crypto -Iscrypt-1.1.6/lib/util -I/opt/local/include/python2.7 -c scrypt-1.1.6/lib/util/memlimit.c -o build/temp.solaris-2.11-i86pc.64bit-2.7/scrypt-1.1.6/lib/util/memlimit.o

scrypt-1.1.6/lib/util/memlimit.c:47:24: fatal error: sys/sysctl.h: No such file or directory

compilation terminated.

error: command 'gcc' failed with exit status 1

----------------------------------------
Cleaning up...
Command /opt/local/bin/python2.7 -c "import setuptools, tokenize;__file__='/tmp/pip_build_root/scrypt/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-azkQMa-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip_build_root/scrypt
Storing debug log for failure in /root/.pip/pip.log
stef commented 9 years ago

this seems a bug in the scrypt dependency, please report this upstream: http://bitbucket.org/mhallin/py-scrypt

stef commented 9 years ago

regarding reuse and licensing the GPL Affero v3 license applies, see: https://github.com/stef/pbp/blob/master/COPYING

also note that some changes recent changes make the output of pbp incompatible with pcp: https://github.com/stef/pbp/commit/ef05047e26c7f67e3bb5ec1320cb20c4c59a3956 https://github.com/stef/pbp/commit/8ac1a7a055e556b06dddef83daf979aaf480165e https://github.com/stef/pbp/commit/07382e17d67e55582a6c65c65ba9fbdeb3083c4d