bbustin / Climaduino-web-controller

Web interface for the Climaduino controller. Provides the ability to modify parameters and view historical data. Web pages are optimized for viewing on a phone. Tested on iPhone.
12 stars 1 forks source link

Issue installing rrdtool #3

Open kbarkhau opened 9 years ago

kbarkhau commented 9 years ago

Hello,

As with the previous poster, I too am having a nightmare of a time getting rrdtool to install. I am using a raspberry Pi 2 and have tried the steps in your instructable with both the latest version of wheezy with the adafruit tools installed and also with the occidentalis v0.2 distro. In both cases I am getting the following error when executing the easy_install python-rrdtool command:

(pi)pi@raspberrypi ~ $ easy_install python-rrdtool

Searching for python-rrdtool

Reading https://pypi.python.org/simple/python-rrdtool/

/home/pi/local/lib/python2.7/site-packages/pkg_resources/init.py:2512: PEP440Warning: 'python (rrdtool-1.4.7)' is being parsed as a legacy, non PEP 440, version. You may find odd behavior and sort order. In particular it will be sorted as less than 0.0. It is recommend to migrate to PEP 440 compatible versions.

PEP440Warning,

Best match: python-rrdtool 1.4.7

Downloading https://pypi.python.org/packages/source/p/python-...

Processing python-rrdtool-1.4.7.tar.gz

Writing /tmp/easy_install-wPVPRm/python-rrdtool-1.4.7/setup.cfg

Running python-rrdtool-1.4.7/setup.py -q bdist_egg --dist-dir /tmp/easy_install-wPVPRm/python-rrdtool-1.4.7/egg-dist-tmp-yrYogk

checking build system type... armv7l-unknown-linux-gnueabi

checking host system type... armv7l-unknown-linux-gnueabi

checking target system type... armv7l-unknown-linux-gnueabi

checking for gcc... gcc

checking for C compiler default output file name... a.out

checking whether the C compiler works... yes

checking whether we are cross compiling... no

checking for suffix of executables...

checking for suffix of object files... o

checking whether we are using the GNU C compiler... yes

checking whether gcc accepts -g... yes

checking for gcc option to accept ISO C89... none needed

checking how to run the C preprocessor... gcc -E

checking for grep that handles long lines and -e... /bin/grep

checking for egrep... /bin/grep -E

checking for ANSI C header files... yes

checking for sys/types.h... yes

checking for sys/stat.h... yes

checking for stdlib.h... yes

checking for string.h... yes

checking for memory.h... yes

checking for strings.h... yes

checking for inttypes.h... yes

checking for stdint.h... yes

checking for unistd.h... yes

checking minix/config.h usability... no

checking minix/config.h presence... no

checking for minix/config.h... no

checking whether it is safe to define EXTENSIONS... yes

checking for a BSD-compatible install... /usr/bin/install -c

checking whether build environment is sane... yes

checking for a thread-safe mkdir -p... /bin/mkdir -p

checking for gawk... no

checking for mawk... mawk

checking whether make sets $(MAKE)... yes

checking for style of include used by make... GNU

checking dependency style of gcc... gcc3

checking whether to enable maintainer-specific portions of Makefiles... no

Audit Compilation Environment

checking how to run the C preprocessor... gcc -E

checking for gcc... (cached) gcc

checking whether we are using the GNU C compiler... (cached) yes

checking whether gcc accepts -g... (cached) yes

checking for gcc option to accept ISO C89... (cached) none needed

checking whether gcc and cc understand -c and -o together... yes

checking for a sed that does not truncate output... /bin/sed

checking for fgrep... /bin/grep -F

checking for ld used by gcc... /usr/bin/ld

checking if the linker (/usr/bin/ld) is GNU ld... yes

checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B

checking the name lister (/usr/bin/nm -B) interface... BSD nm

checking whether ln -s works... yes

checking the maximum length of command line arguments... 1572864

checking whether the shell understands some XSI constructs... yes

checking whether the shell understands "+="... yes

checking for /usr/bin/ld option to reload object files... -r

checking for objdump... objdump

checking how to recognize dependent libraries... pass_all

checking for ar... ar

checking for strip... strip

checking for ranlib... ranlib

checking command to parse /usr/bin/nm -B output from gcc object... ok

checking for dlfcn.h... yes

checking for objdir... .libs

checking if gcc supports -fno-rtti -fno-exceptions... no

checking for gcc option to produce PIC... -fPIC -DPIC

checking if gcc PIC flag -fPIC -DPIC works... yes

checking if gcc static flag -static works... yes

checking if gcc supports -c -o file.o... yes

checking if gcc supports -c -o file.o... (cached) yes

checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes

checking whether -lc should be explicitly linked in... no

checking dynamic linker characteristics... GNU/Linux ld.so

checking how to hardcode library paths into programs... immediate

checking whether stripping libraries is possible... yes

checking if libtool supports shared libraries... yes

checking whether to build shared libraries... yes

checking whether to build static libraries... yes

checking if gcc likes the -Werror flag... yes

checking if gcc likes the -fno-strict-aliasing flag... yes

checking if gcc likes the -Wall flag... yes

checking if gcc likes the -std=gnu99 flag... yes

checking if gcc likes the -pedantic flag... yes

checking if gcc likes the -Wundef flag... yes

checking if gcc likes the -Wshadow flag... yes

checking if gcc likes the -Wpointer-arith flag... yes

checking if gcc likes the -Wcast-align flag... yes

checking if gcc likes the -Wmissing-prototypes flag... yes

checking if gcc likes the -Wmissing-declarations flag... yes

checking if gcc likes the -Wnested-externs flag... yes

checking if gcc likes the -Winline flag... yes

checking if gcc likes the -Wold-style-definition flag... yes

checking if gcc likes the -W flag... yes

Checking for Header Files

checking for ANSI C header files... (cached) yes

checking for dirent.h that defines DIR... yes

checking for library containing opendir... none required

checking langinfo.h usability... yes

checking langinfo.h presence... yes

checking for langinfo.h... yes

checking for stdint.h... (cached) yes

checking for inttypes.h... (cached) yes

checking libgen.h usability... yes

checking libgen.h presence... yes

checking for libgen.h... yes

checking features.h usability... yes

checking features.h presence... yes

checking for features.h... yes

checking for sys/stat.h... (cached) yes

checking for sys/types.h... (cached) yes

checking fcntl.h usability... yes

checking fcntl.h presence... yes

checking for fcntl.h... yes

checking fp_class.h usability... no

checking fp_class.h presence... no

checking for fp_class.h... no

checking malloc.h usability... yes

checking malloc.h presence... yes

checking for malloc.h... yes

checking for unistd.h... (cached) yes

checking ieeefp.h usability... no

checking ieeefp.h presence... no

checking for ieeefp.h... no

checking math.h usability... yes

checking math.h presence... yes

checking for math.h... yes

checking sys/times.h usability... yes

checking sys/times.h presence... yes

checking for sys/times.h... yes

checking sys/param.h usability... yes

checking sys/param.h presence... yes

checking for sys/param.h... yes

checking sys/resource.h usability... yes

checking sys/resource.h presence... yes

checking for sys/resource.h... yes

checking signal.h usability... yes

checking signal.h presence... yes

checking for signal.h... yes

checking float.h usability... yes

checking float.h presence... yes

checking for float.h... yes

checking stdio.h usability... yes

checking stdio.h presence... yes

checking for stdio.h... yes

checking for stdlib.h... (cached) yes

checking errno.h usability... yes

checking errno.h presence... yes

checking for errno.h... yes

checking for string.h... (cached) yes

checking ctype.h usability... yes

checking ctype.h presence... yes

checking for ctype.h... yes

checking for an ANSI C-conforming const... yes

checking whether time.h and sys/time.h may both be included... yes

checking whether struct tm is in sys/time.h or time.h... time.h

Test Library Functions

checking for acos... no

checking for acos in -lm... yes

checking for strftime... yes

checking for vprintf... yes

checking for _doprnt... no

checking whether byte ordering is bigendian... no

checking for nl_langinfo... yes

checking for tzset... yes

checking for round... yes

checking for rint... yes

checking for fsync... yes

checking for mbstowcs... yes

checking for opendir... yes

checking for readdir... yes

checking for chdir... yes

checking for chroot... yes

checking for getuid... yes

checking for strerror... yes

checking for snprintf... yes

checking for vsnprintf... yes

checking for vasprintf... yes

checking for fpclass... no

checking for class... no

checking for fp_class... no

checking for isnan... yes

checking for memmove... yes

checking for strchr... yes

checking for mktime... yes

checking for getrusage... yes

checking for gettimeofday... yes

checking whether strerror_r is declared... yes

checking for strerror_r... yes

checking whether strerror_r returns char *... yes

Map/Fadvis/Madvise checking

checking for fdatasync... yes

checking for fsync... (cached) yes

checking for socket... yes

checking for getaddrinfo... yes

checking sys/mman.h usability... yes

checking sys/mman.h presence... yes

checking for sys/mman.h... yes

checking for stdlib.h... (cached) yes

checking for unistd.h... (cached) yes

checking for getpagesize... yes

checking for working mmap... yes

checking for mmap... yes

checking for munmap... yes

checking for msync... yes

checking whether madvise is declared... yes

checking for madvise... yes

checking whether posix_fadvise is declared... yes

checking for posix_fadvise... yes

Libintl Processing

checking whether NLS is requested... yes

checking for msgfmt... /usr/bin/msgfmt

checking for gmsgfmt... /usr/bin/msgfmt

checking for xgettext... /usr/bin/xgettext

checking for msgmerge... /usr/bin/msgmerge

checking for ld used by GCC... /usr/bin/ld

checking if the linker (/usr/bin/ld) is GNU ld... yes

checking for shared library run path origin... done

checking for CFPreferencesCopyAppValue... no

checking for CFLocaleCopyCurrent... no

checking for GNU gettext in libc... yes

checking whether to use NLS... yes

checking where the gettext function comes from... libc

IEEE Math Checks

checking for fpclassify... no

checking for fpclassify with ... yes

checking for isinf... yes

checking whether isfinite is broken... no

checking if IEEE math works out of the box... yes

Resolve Portability Issues

checking tm_gmtoff in struct tm... yes

checking __tm_gmtoff in struct tm... no

checking if msync with MS_ASYNC updates the files mtime... yes

checking for _NL_TIME_WEEK_1STDAY... no

checking for nl_langinfo(_NL_TIME_WEEK_1STDAY) with langinfo.h... yes

checking for opterr... yes

checking for getopt_long... yes

checking if realloc can deal with NULL... yes

checking if ctime_r need special care to act posixly correct... no

checking for the pthreads library -lpthreads... no

checking whether pthreads work without any flags... no

checking whether pthreads work with -Kthread... no

checking whether pthreads work with -kthread... no

checking for the pthreads library -llthread... no

checking whether pthreads work with -pthread... yes

checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE

checking if more special flags are required for pthreads... no

checking for cc_r... gcc

checking do we need malloc/malloc.h... nope, works out of the box

checking the type of time_t... checking size of time_t... 4

time_t is 32 bit

Find 3rd-Party Libraries

checking dbi/dbi.h usability... no

checking dbi/dbi.h presence... no

checking for dbi/dbi.h... no

checking tcpd.h usability... no

checking tcpd.h presence... no

checking for tcpd.h... no

checking for cairo_font_options_create in -lcairo... yes

checking cairo.h usability... no

checking cairo.h presence... no

checking for cairo.h... no

checking for pkg-config... pkg-config

checking for cairo_font_options_create in -lcairo... yes

checking cairo.h usability... yes

checking cairo.h presence... yes

checking for cairo.h... yes

checking for cairo_svg_surface_create in -lcairo... yes

checking cairo-svg.h usability... yes

checking cairo-svg.h presence... yes

checking for cairo-svg.h... yes

checking for cairo_pdf_surface_create in -lcairo... yes

checking cairo-pdf.h usability... yes

checking cairo-pdf.h presence... yes

checking for cairo-pdf.h... yes

checking for cairo_ps_surface_create in -lcairo... yes

checking cairo-ps.h usability... yes

checking cairo-ps.h presence... yes

checking for cairo-ps.h... yes

checking for pango_cairo_context_set_font_options in -lpangocairo-1.0... yes

checking pango/pango.h usability... no

checking pango/pango.h presence... no

checking for pango/pango.h... no

checking for pkg-config... (cached) pkg-config

checking for pango_cairo_context_set_font_options in -lpangocairo-1.0... yes

checking pango/pango.h usability... yes

checking pango/pango.h presence... yes

checking for pango/pango.h... yes

checking for glib_check_version in -lglib-2.0... yes

checking glib.h usability... yes

checking glib.h presence... yes

checking for glib.h... yes

checking for xmlParseFile in -lxml2... yes

checking libxml/parser.h usability... yes

checking libxml/parser.h presence... yes

checking for libxml/parser.h... yes

Prep for Building Language Bindings

checking for perl... /usr/bin/perl

checking for pod2man... /usr/bin/pod2man

checking for pod2html... /usr/bin/pod2html

checking for the perl version you are running... 5.14.2

checking for the C compiler perl wants to use to build its modules... cc

checking for cc... /usr/bin/cc

checking Perl Modules to build... perl_piped perl_shared

checking for ruby... no

checking if ruby modules can be built... No .. Ruby not found or disabled

checking for lua... /usr/bin/lua

checking for lua >= 5.0... 5.1 found

checking lua51/lua.h usability... no

checking lua51/lua.h presence... no

checking for lua51/lua.h... no

checking lua5.1/lua.h usability... no

checking lua5.1/lua.h presence... no

checking for lua5.1/lua.h... no

checking lua.h usability... no

checking lua.h presence... no

checking for lua.h... no

checking for library containing lua_call... no

Lua headers found but not the libraries! Please reinstall the dev packages for Lua 5.1

checking for tclConfig.sh in /usr/lib... no

checking for tclConfig.sh in /usr/lib64... no

checking for tclConfig.sh in /usr/local/lib... no

checking for tclConfig.sh in /usr/lib/tcl8.4... no

checking for tclConfig.sh in /usr/lib/tcl8.3... no

configure: WARNING: tclConfig.sh not found - Tcl interface will not be built

checking for a Python interpreter with version >= 2.3... python

checking for python... /home/pi/bin/python

checking for python version... 2.7

checking for python platform... linux2

checking for python script directory... ${prefix}/lib/python2.7/site-packages

checking for python extension module directory... ${exec_prefix}/lib/python2.7/site-packages

checking for headers required to compile python extensions... found

checking for gnroff... no

checking for nroff... /usr/bin/nroff

checking for groff... /usr/bin/groff

Apply Configuration Information

configure: creating ./config.status

config.status: creating examples/shared-demo.pl

config.status: creating examples/piped-demo.pl

config.status: creating examples/stripes.pl

config.status: creating examples/bigtops.pl

config.status: creating examples/minmax.pl

config.status: creating examples/4charts.pl

config.status: creating examples/perftest.pl

config.status: creating examples/Makefile

config.status: creating examples/rrdcached/Makefile

config.status: creating doc/Makefile

config.status: creating po/Makefile.in

config.status: creating src/Makefile

config.status: creating src/librrd.sym.in

config.status: creating src/librrd.pc

config.status: creating bindings/Makefile

config.status: creating bindings/tcl/Makefile

config.status: creating bindings/tcl/ifOctets.tcl

config.status: creating Makefile

config.status: creating bindings/lua/Makefile

config.status: creating rrd_config.h

config.status: executing depfiles commands

config.status: executing libtool commands

config.status: executing po-directories commands

config.status: creating po/POTFILES

config.status: creating po/Makefile

config.status: executing default commands

checking in... and out again

ordering CD from http://tobi.oetiker.ch/wish .... just kidding ;-)


Config is DONE!

With MMAP IO: yes

Build rrd_getopt: no

Build rrd_graph: yes

Static programs: no

Perl Modules: perl_piped perl_shared

Perl Binary: /usr/bin/perl

Perl Version: 5.14.2

Perl Options: PREFIX=/opt/rrdtool-1.4.7 LIB=/opt/rrdtool-1.4.7/lib/perl/5.14.2

Ruby Modules:

Ruby Binary: no

Ruby Options: sitedir=/opt/rrdtool-1.4.7/lib/ruby

Build Lua Bindings: no

Build Tcl Bindings: no

Build Python Bindings: yes

Build rrdcgi: yes

Build librrd MT: yes

Use gettext: yes

With libDBI: no

With libwrap: no

Libraries: -lxml2 -lglib-2.0 -lcairo -lcairo -lcairo -lm -lcairo -lpng12 -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lglib-2.0

Type 'make' to compile the software and use 'make install' to

install everything to: /opt/rrdtool-1.4.7.

... that wishlist is NO JOKE. If you find RRDtool useful

make me happy. Go to http://tobi.oetiker.ch/wish and

place an order.

-- Tobi Oetiker tobi@oetiker.ch


In file included from /usr/include/python2.7/Python.h:8:0,

from rrdtool-1.4.7/bindings/python/rrdtoolmodule.c:44:

/usr/include/python2.7/pyconfig.h:1161:0: warning: "_POSIX_C_SOURCE" redefined [enabled by default]

/usr/include/features.h:163:0: note: this is the location of the previous definition

/usr/include/python2.7/pyconfig.h:1183:0: warning: "_XOPEN_SOURCE" redefined [enabled by default]

/usr/include/features.h:165:0: note: this is the location of the previous definition

/usr/bin/ld: cannot find -lrrd

collect2: ld returned 1 exit status

error: Setup script exited with error: command 'gcc' failed with exit status 1

(pi)pi@raspberrypi ~ $


I have tried loading the apt-get install libpango1.0-dev libxml2-dev as noted in the comments, but it did not help.

Any help in what I am doing wrong and how to fix would be greatly appreciated

Thanks kbarkhau

bbustin commented 9 years ago

Please let me know if running the following command helps:

sudo apt-get install -y build-essential python-dev python-setuptools libcairo2-dev libpango1.0-dev libxml2-dev rrdtool librrd-dev

On Mar 2, 2015, at 2:38 PM, kbarkhau notifications@github.com wrote:

Hello,

As with the previous poster, I too am having a nightmare of a time getting rrdtool to install. I am using a raspberry Pi 2 and have tried the steps in your instructable with both the latest version of wheezy with the adafruit tools installed and also with the occidentalis v0.2 distro. In both cases I am getting the following error when executing the easy_install python-rrdtool command:

(pi)pi@raspberrypi ~ $ easy_install python-rrdtool

Searching for python-rrdtool

Reading https://pypi.python.org/simple/python-rrdtool/ https://pypi.python.org/simple/python-rrdtool/ /home/pi/local/lib/python2.7/site-packages/pkg_resources/init.py:2512: PEP440Warning: 'python (rrdtool-1.4.7)' is being parsed as a legacy, non PEP 440, version. You may find odd behavior and sort order. In particular it will be sorted as less than 0.0. It is recommend to migrate to PEP 440 compatible versions.

PEP440Warning,

Best match: python-rrdtool 1.4.7

Downloading https://pypi.python.org/packages/source/p/python- https://pypi.python.org/packages/source/p/python-...

Processing python-rrdtool-1.4.7.tar.gz

Writing /tmp/easy_install-wPVPRm/python-rrdtool-1.4.7/setup.cfg

Running python-rrdtool-1.4.7/setup.py -q bdist_egg --dist-dir /tmp/easy_install-wPVPRm/python-rrdtool-1.4.7/egg-dist-tmp-yrYogk

checking build system type... armv7l-unknown-linux-gnueabi

checking host system type... armv7l-unknown-linux-gnueabi

checking target system type... armv7l-unknown-linux-gnueabi

checking for gcc... gcc

checking for C compiler default output file name... a.out

checking whether the C compiler works... yes

checking whether we are cross compiling... no

checking for suffix of executables...

checking for suffix of object files... o

checking whether we are using the GNU C compiler... yes

checking whether gcc accepts -g... yes

checking for gcc option to accept ISO C89... none needed

checking how to run the C preprocessor... gcc -E

checking for grep that handles long lines and -e... /bin/grep

checking for egrep... /bin/grep -E

checking for ANSI C header files... yes

checking for sys/types.h... yes

checking for sys/stat.h... yes

checking for stdlib.h... yes

checking for string.h... yes

checking for memory.h... yes

checking for strings.h... yes

checking for inttypes.h... yes

checking for stdint.h... yes

checking for unistd.h... yes

checking minix/config.h usability... no

checking minix/config.h presence... no

checking for minix/config.h... no

checking whether it is safe to define EXTENSIONS... yes

checking for a BSD-compatible install... /usr/bin/install -c

checking whether build environment is sane... yes

checking for a thread-safe mkdir -p... /bin/mkdir -p

checking for gawk... no

checking for mawk... mawk

checking whether make sets $(MAKE)... yes

checking for style of include used by make... GNU

checking dependency style of gcc... gcc3

checking whether to enable maintainer-specific portions of Makefiles... no

Audit Compilation Environment

checking how to run the C preprocessor... gcc -E

checking for gcc... (cached) gcc

checking whether we are using the GNU C compiler... (cached) yes

checking whether gcc accepts -g... (cached) yes

checking for gcc option to accept ISO C89... (cached) none needed

checking whether gcc and cc understand -c and -o together... yes

checking for a sed that does not truncate output... /bin/sed

checking for fgrep... /bin/grep -F

checking for ld used by gcc... /usr/bin/ld

checking if the linker (/usr/bin/ld) is GNU ld... yes

checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B

checking the name lister (/usr/bin/nm -B) interface... BSD nm

checking whether ln -s works... yes

checking the maximum length of command line arguments... 1572864

checking whether the shell understands some XSI constructs... yes

checking whether the shell understands "+="... yes

checking for /usr/bin/ld option to reload object files... -r

checking for objdump... objdump

checking how to recognize dependent libraries... pass_all

checking for ar... ar

checking for strip... strip

checking for ranlib... ranlib

checking command to parse /usr/bin/nm -B output from gcc object... ok

checking for dlfcn.h... yes

checking for objdir... .libs

checking if gcc supports -fno-rtti -fno-exceptions... no

checking for gcc option to produce PIC... -fPIC -DPIC

checking if gcc PIC flag -fPIC -DPIC works... yes

checking if gcc static flag -static works... yes

checking if gcc supports -c -o file.o... yes

checking if gcc supports -c -o file.o... (cached) yes

checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes

checking whether -lc should be explicitly linked in... no

checking dynamic linker characteristics... GNU/Linux ld.so

checking how to hardcode library paths into programs... immediate

checking whether stripping libraries is possible... yes

checking if libtool supports shared libraries... yes

checking whether to build shared libraries... yes

checking whether to build static libraries... yes

checking if gcc likes the -Werror flag... yes

checking if gcc likes the -fno-strict-aliasing flag... yes

checking if gcc likes the -Wall flag... yes

checking if gcc likes the -std=gnu99 flag... yes

checking if gcc likes the -pedantic flag... yes

checking if gcc likes the -Wundef flag... yes

checking if gcc likes the -Wshadow flag... yes

checking if gcc likes the -Wpointer-arith flag... yes

checking if gcc likes the -Wcast-align flag... yes

checking if gcc likes the -Wmissing-prototypes flag... yes

checking if gcc likes the -Wmissing-declarations flag... yes

checking if gcc likes the -Wnested-externs flag... yes

checking if gcc likes the -Winline flag... yes

checking if gcc likes the -Wold-style-definition flag... yes

checking if gcc likes the -W flag... yes

Checking for Header Files

checking for ANSI C header files... (cached) yes

checking for dirent.h that defines DIR... yes

checking for library containing opendir... none required

checking langinfo.h usability... yes

checking langinfo.h presence... yes

checking for langinfo.h... yes

checking for stdint.h... (cached) yes

checking for inttypes.h... (cached) yes

checking libgen.h usability... yes

checking libgen.h presence... yes

checking for libgen.h... yes

checking features.h usability... yes

checking features.h presence... yes

checking for features.h... yes

checking for sys/stat.h... (cached) yes

checking for sys/types.h... (cached) yes

checking fcntl.h usability... yes

checking fcntl.h presence... yes

checking for fcntl.h... yes

checking fp_class.h usability... no

checking fp_class.h presence... no

checking for fp_class.h... no

checking malloc.h usability... yes

checking malloc.h presence... yes

checking for malloc.h... yes

checking for unistd.h... (cached) yes

checking ieeefp.h usability... no

checking ieeefp.h presence... no

checking for ieeefp.h... no

checking math.h usability... yes

checking math.h presence... yes

checking for math.h... yes

checking sys/times.h usability... yes

checking sys/times.h presence... yes

checking for sys/times.h... yes

checking sys/param.h usability... yes

checking sys/param.h presence... yes

checking for sys/param.h... yes

checking sys/resource.h usability... yes

checking sys/resource.h presence... yes

checking for sys/resource.h... yes

checking signal.h usability... yes

checking signal.h presence... yes

checking for signal.h... yes

checking float.h usability... yes

checking float.h presence... yes

checking for float.h... yes

checking stdio.h usability... yes

checking stdio.h presence... yes

checking for stdio.h... yes

checking for stdlib.h... (cached) yes

checking errno.h usability... yes

checking errno.h presence... yes

checking for errno.h... yes

checking for string.h... (cached) yes

checking ctype.h usability... yes

checking ctype.h presence... yes

checking for ctype.h... yes

checking for an ANSI C-conforming const... yes

checking whether time.h and sys/time.h may both be included... yes

checking whether struct tm is in sys/time.h or time.h... time.h

Test Library Functions

checking for acos... no

checking for acos in -lm... yes

checking for strftime... yes

checking for vprintf... yes

checking for _doprnt... no

checking whether byte ordering is bigendian... no

checking for nl_langinfo... yes

checking for tzset... yes

checking for round... yes

checking for rint... yes

checking for fsync... yes

checking for mbstowcs... yes

checking for opendir... yes

checking for readdir... yes

checking for chdir... yes

checking for chroot... yes

checking for getuid... yes

checking for strerror... yes

checking for snprintf... yes

checking for vsnprintf... yes

checking for vasprintf... yes

checking for fpclass... no

checking for class... no

checking for fp_class... no

checking for isnan... yes

checking for memmove... yes

checking for strchr... yes

checking for mktime... yes

checking for getrusage... yes

checking for gettimeofday... yes

checking whether strerror_r is declared... yes

checking for strerror_r... yes

checking whether strerror_r returns char *... yes

Map/Fadvis/Madvise checking

checking for fdatasync... yes

checking for fsync... (cached) yes

checking for socket... yes

checking for getaddrinfo... yes

checking sys/mman.h usability... yes

checking sys/mman.h presence... yes

checking for sys/mman.h... yes

checking for stdlib.h... (cached) yes

checking for unistd.h... (cached) yes

checking for getpagesize... yes

checking for working mmap... yes

checking for mmap... yes

checking for munmap... yes

checking for msync... yes

checking whether madvise is declared... yes

checking for madvise... yes

checking whether posix_fadvise is declared... yes

checking for posix_fadvise... yes

Libintl Processing

checking whether NLS is requested... yes

checking for msgfmt... /usr/bin/msgfmt

checking for gmsgfmt... /usr/bin/msgfmt

checking for xgettext... /usr/bin/xgettext

checking for msgmerge... /usr/bin/msgmerge

checking for ld used by GCC... /usr/bin/ld

checking if the linker (/usr/bin/ld) is GNU ld... yes

checking for shared library run path origin... done

checking for CFPreferencesCopyAppValue... no

checking for CFLocaleCopyCurrent... no

checking for GNU gettext in libc... yes

checking whether to use NLS... yes

checking where the gettext function comes from... libc

IEEE Math Checks

checking for fpclassify... no

checking for fpclassify with ... yes

checking for isinf... yes

checking whether isfinite is broken... no

checking if IEEE math works out of the box... yes

Resolve Portability Issues

checking tm_gmtoff in struct tm... yes

checking __tm_gmtoff in struct tm... no

checking if msync with MS_ASYNC updates the files mtime... yes

checking for _NL_TIME_WEEK_1STDAY... no

checking for nl_langinfo(_NL_TIME_WEEK_1STDAY) with langinfo.h... yes

checking for opterr... yes

checking for getopt_long... yes

checking if realloc can deal with NULL... yes

checking if ctime_r need special care to act posixly correct... no

checking for the pthreads library -lpthreads... no

checking whether pthreads work without any flags... no

checking whether pthreads work with -Kthread... no

checking whether pthreads work with -kthread... no

checking for the pthreads library -llthread... no

checking whether pthreads work with -pthread... yes

checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE

checking if more special flags are required for pthreads... no

checking for cc_r... gcc

checking do we need malloc/malloc.h... nope, works out of the box

checking the type of time_t... checking size of time_t... 4

time_t is 32 bit

Find 3rd-Party Libraries

checking dbi/dbi.h usability... no

checking dbi/dbi.h presence... no

checking for dbi/dbi.h... no

checking tcpd.h usability... no

checking tcpd.h presence... no

checking for tcpd.h... no

checking for cairo_font_options_create in -lcairo... yes

checking cairo.h usability... no

checking cairo.h presence... no

checking for cairo.h... no

checking for pkg-config... pkg-config

checking for cairo_font_options_create in -lcairo... yes

checking cairo.h usability... yes

checking cairo.h presence... yes

checking for cairo.h... yes

checking for cairo_svg_surface_create in -lcairo... yes

checking cairo-svg.h usability... yes

checking cairo-svg.h presence... yes

checking for cairo-svg.h... yes

checking for cairo_pdf_surface_create in -lcairo... yes

checking cairo-pdf.h usability... yes

checking cairo-pdf.h presence... yes

checking for cairo-pdf.h... yes

checking for cairo_ps_surface_create in -lcairo... yes

checking cairo-ps.h usability... yes

checking cairo-ps.h presence... yes

checking for cairo-ps.h... yes

checking for pango_cairo_context_set_font_options in -lpangocairo-1.0... yes

checking pango/pango.h usability... no

checking pango/pango.h presence... no

checking for pango/pango.h... no

checking for pkg-config... (cached) pkg-config

checking for pango_cairo_context_set_font_options in -lpangocairo-1.0... yes

checking pango/pango.h usability... yes

checking pango/pango.h presence... yes

checking for pango/pango.h... yes

checking for glib_check_version in -lglib-2.0... yes

checking glib.h usability... yes

checking glib.h presence... yes

checking for glib.h... yes

checking for xmlParseFile in -lxml2... yes

checking libxml/parser.h usability... yes

checking libxml/parser.h presence... yes

checking for libxml/parser.h... yes

Prep for Building Language Bindings

checking for perl... /usr/bin/perl

checking for pod2man... /usr/bin/pod2man

checking for pod2html... /usr/bin/pod2html

checking for the perl version you are running... 5.14.2

checking for the C compiler perl wants to use to build its modules... cc

checking for cc... /usr/bin/cc

checking Perl Modules to build... perl_piped perl_shared

checking for ruby... no

checking if ruby modules can be built... No .. Ruby not found or disabled

checking for lua... /usr/bin/lua

checking for lua >= 5.0... 5.1 found

checking lua51/lua.h usability... no

checking lua51/lua.h presence... no

checking for lua51/lua.h... no

checking lua5.1/lua.h usability... no

checking lua5.1/lua.h presence... no

checking for lua5.1/lua.h... no

checking lua.h usability... no

checking lua.h presence... no

checking for lua.h... no

checking for library containing lua_call... no

Lua headers found but not the libraries! Please reinstall the dev packages for Lua 5.1

checking for tclConfig.sh in /usr/lib... no

checking for tclConfig.sh in /usr/lib64... no

checking for tclConfig.sh in /usr/local/lib... no

checking for tclConfig.sh in /usr/lib/tcl8.4... no

checking for tclConfig.sh in /usr/lib/tcl8.3... no

configure: WARNING: tclConfig.sh not found - Tcl interface will not be built

checking for a Python interpreter with version >= 2.3... python

checking for python... /home/pi/bin/python

checking for python version... 2.7

checking for python platform... linux2

checking for python script directory... ${prefix}/lib/python2.7/site-packages

checking for python extension module directory... ${exec_prefix}/lib/python2.7/site-packages

checking for headers required to compile python extensions... found

checking for gnroff... no

checking for nroff... /usr/bin/nroff

checking for groff... /usr/bin/groff

Apply Configuration Information

configure: creating ./config.status

config.status: creating examples/shared-demo.pl

config.status: creating examples/piped-demo.pl

config.status: creating examples/stripes.pl

config.status: creating examples/bigtops.pl

config.status: creating examples/minmax.pl

config.status: creating examples/4charts.pl

config.status: creating examples/perftest.pl

config.status: creating examples/Makefile

config.status: creating examples/rrdcached/Makefile

config.status: creating doc/Makefile

config.status: creating po/Makefile.in

config.status: creating src/Makefile

config.status: creating src/librrd.sym.in

config.status: creating src/librrd.pc

config.status: creating bindings/Makefile

config.status: creating bindings/tcl/Makefile

config.status: creating bindings/tcl/ifOctets.tcl

config.status: creating Makefile

config.status: creating bindings/lua/Makefile

config.status: creating rrd_config.h

config.status: executing depfiles commands

config.status: executing libtool commands

config.status: executing po-directories commands

config.status: creating po/POTFILES

config.status: creating po/Makefile

config.status: executing default commands

checking in... and out again

ordering CD from http://tobi.oetiker.ch/wish http://tobi.oetiker.ch/wish .... just kidding ;-)

Config is DONE!

With MMAP IO: yes

Build rrd_getopt: no

Build rrd_graph: yes

Static programs: no

Perl Modules: perl_piped perl_shared

Perl Binary: /usr/bin/perl

Perl Version: 5.14.2

Perl Options: PREFIX=/opt/rrdtool-1.4.7 LIB=/opt/rrdtool-1.4.7/lib/perl/5.14.2

Ruby Modules:

Ruby Binary: no

Ruby Options: sitedir=/opt/rrdtool-1.4.7/lib/ruby

Build Lua Bindings: no

Build Tcl Bindings: no

Build Python Bindings: yes

Build rrdcgi: yes

Build librrd MT: yes

Use gettext: yes

With libDBI: no

With libwrap: no

Libraries: -lxml2 -lglib-2.0 -lcairo -lcairo -lcairo -lm -lcairo -lpng12 -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lglib-2.0

Type 'make' to compile the software and use 'make install' to

install everything to: /opt/rrdtool-1.4.7.

... that wishlist is NO JOKE. If you find RRDtool useful

make me happy. Go to http://tobi.oetiker.ch/wish http://tobi.oetiker.ch/wish and

place an order.

-- Tobi Oetiker tobi@oetiker.ch mailto:tobi@oetiker.ch In file included from /usr/include/python2.7/Python.h:8:0,

from rrdtool-1.4.7/bindings/python/rrdtoolmodule.c:44:

/usr/include/python2.7/pyconfig.h:1161:0: warning: "_POSIX_C_SOURCE" redefined [enabled by default]

/usr/include/features.h:163:0: note: this is the location of the previous definition

/usr/include/python2.7/pyconfig.h:1183:0: warning: "_XOPEN_SOURCE" redefined [enabled by default]

/usr/include/features.h:165:0: note: this is the location of the previous definition

/usr/bin/ld: cannot find -lrrd

collect2: ld returned 1 exit status

error: Setup script exited with error: command 'gcc' failed with exit status 1

(pi)pi@raspberrypi ~ $

I have tried loading the apt-get install libpango1.0-dev libxml2-dev as noted in the comments, but it did not help.

Any help in what I am doing wrong and how to fix would be greatly appreciated

Thanks kbarkhau

— Reply to this email directly or view it on GitHub https://github.com/bbustin/Climaduino-web-controller/issues/3.

kbarkhau commented 9 years ago

Hello,

Thanks for getting back with me so quickly--it looks like it was the librrd-dev library.  Once I loaded that rdtools installed fine.  Thanks so much!  I've moved on to the creating the db step and and its been sitting for about 10 minutes now with the last message: "AppRegistryNotReady: Models aren't loaded yet."  Is something hung, or does this step just take a long time?

Thanks, Keith  Sent from iCloud

On Mar 02, 2015, at 02:41 PM, bbustin notifications@github.com wrote:

Please let me know if running the following command helps:

sudo apt-get install -y build-essential python-dev python-setuptools libcairo2-dev libpango1.0-dev libxml2-dev rrdtool librrd-dev

On Mar 2, 2015, at 2:38 PM, kbarkhau notifications@github.com wrote:

Hello,

As with the previous poster, I too am having a nightmare of a time getting rrdtool to install. I am using a raspberry Pi 2 and have tried the steps in your instructable with both the latest version of wheezy with the adafruit tools installed and also with the occidentalis v0.2 distro. In both cases I am getting the following error when executing the easy_install python-rrdtool command:

(pi)pi@raspberrypi ~ $ easy_install python-rrdtool

Searching for python-rrdtool

Reading https://pypi.python.org/simple/python-rrdtool/ https://pypi.python.org/simple/python-rrdtool/ /home/pi/local/lib/python2.7/site-packages/pkg_resources/init.py:2512: PEP440Warning: 'python (rrdtool-1.4.7)' is being parsed as a legacy, non PEP 440, version. You may find odd behavior and sort order. In particular it will be sorted as less than 0.0. It is recommend to migrate to PEP 440 compatible versions.

PEP440Warning,

Best match: python-rrdtool 1.4.7

Downloading https://pypi.python.org/packages/source/p/python- https://pypi.python.org/packages/source/p/python-...

Processing python-rrdtool-1.4.7.tar.gz

Writing /tmp/easy_install-wPVPRm/python-rrdtool-1.4.7/setup.cfg

Running python-rrdtool-1.4.7/setup.py -q bdist_egg --dist-dir /tmp/easy_install-wPVPRm/python-rrdtool-1.4.7/egg-dist-tmp-yrYogk

checking build system type... armv7l-unknown-linux-gnueabi

checking host system type... armv7l-unknown-linux-gnueabi

checking target system type... armv7l-unknown-linux-gnueabi

checking for gcc... gcc

checking for C compiler default output file name... a.out

checking whether the C compiler works... yes

checking whether we are cross compiling... no

checking for suffix of executables...

checking for suffix of object files... o

checking whether we are using the GNU C compiler... yes

checking whether gcc accepts -g... yes

checking for gcc option to accept ISO C89... none needed

checking how to run the C preprocessor... gcc -E

checking for grep that handles long lines and -e... /bin/grep

checking for egrep... /bin/grep -E

checking for ANSI C header files... yes

checking for sys/types.h... yes

checking for sys/stat.h... yes

checking for stdlib.h... yes

checking for string.h... yes

checking for memory.h... yes

checking for strings.h... yes

checking for inttypes.h... yes

checking for stdint.h... yes

checking for unistd.h... yes

checking minix/config.h usability... no

checking minix/config.h presence... no

checking for minix/config.h... no

checking whether it is safe to define EXTENSIONS... yes

checking for a BSD-compatible install... /usr/bin/install -c

checking whether build environment is sane... yes

checking for a thread-safe mkdir -p... /bin/mkdir -p

checking for gawk... no

checking for mawk... mawk

checking whether make sets $(MAKE)... yes

checking for style of include used by make... GNU

checking dependency style of gcc... gcc3

checking whether to enable maintainer-specific portions of Makefiles... no

Audit Compilation Environment

checking how to run the C preprocessor... gcc -E

checking for gcc... (cached) gcc

checking whether we are using the GNU C compiler... (cached) yes

checking whether gcc accepts -g... (cached) yes

checking for gcc option to accept ISO C89... (cached) none needed

checking whether gcc and cc understand -c and -o together... yes

checking for a sed that does not truncate output... /bin/sed

checking for fgrep... /bin/grep -F

checking for ld used by gcc... /usr/bin/ld

checking if the linker (/usr/bin/ld) is GNU ld... yes

checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B

checking the name lister (/usr/bin/nm -B) interface... BSD nm

checking whether ln -s works... yes

checking the maximum length of command line arguments... 1572864

checking whether the shell understands some XSI constructs... yes

checking whether the shell understands "+="... yes

checking for /usr/bin/ld option to reload object files... -r

checking for objdump... objdump

checking how to recognize dependent libraries... pass_all

checking for ar... ar

checking for strip... strip

checking for ranlib... ranlib

checking command to parse /usr/bin/nm -B output from gcc object... ok

checking for dlfcn.h... yes

checking for objdir... .libs

checking if gcc supports -fno-rtti -fno-exceptions... no

checking for gcc option to produce PIC... -fPIC -DPIC

checking if gcc PIC flag -fPIC -DPIC works... yes

checking if gcc static flag -static works... yes

checking if gcc supports -c -o file.o... yes

checking if gcc supports -c -o file.o... (cached) yes

checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes

checking whether -lc should be explicitly linked in... no

checking dynamic linker characteristics... GNU/Linux ld.so

checking how to hardcode library paths into programs... immediate

checking whether stripping libraries is possible... yes

checking if libtool supports shared libraries... yes

checking whether to build shared libraries... yes

checking whether to build static libraries... yes

checking if gcc likes the -Werror flag... yes

checking if gcc likes the -fno-strict-aliasing flag... yes

checking if gcc likes the -Wall flag... yes

checking if gcc likes the -std=gnu99 flag... yes

checking if gcc likes the -pedantic flag... yes

checking if gcc likes the -Wundef flag... yes

checking if gcc likes the -Wshadow flag... yes

checking if gcc likes the -Wpointer-arith flag... yes

checking if gcc likes the -Wcast-align flag... yes

checking if gcc likes the -Wmissing-prototypes flag... yes

checking if gcc likes the -Wmissing-declarations flag... yes

checking if gcc likes the -Wnested-externs flag... yes

checking if gcc likes the -Winline flag... yes

checking if gcc likes the -Wold-style-definition flag... yes

checking if gcc likes the -W flag... yes

Checking for Header Files

checking for ANSI C header files... (cached) yes

checking for dirent.h that defines DIR... yes

checking for library containing opendir... none required

checking langinfo.h usability... yes

checking langinfo.h presence... yes

checking for langinfo.h... yes

checking for stdint.h... (cached) yes

checking for inttypes.h... (cached) yes

checking libgen.h usability... yes

checking libgen.h presence... yes

checking for libgen.h... yes

checking features.h usability... yes

checking features.h presence... yes

checking for features.h... yes

checking for sys/stat.h... (cached) yes

checking for sys/types.h... (cached) yes

checking fcntl.h usability... yes

checking fcntl.h presence... yes

checking for fcntl.h... yes

checking fp_class.h usability... no

checking fp_class.h presence... no

checking for fp_class.h... no

checking malloc.h usability... yes

checking malloc.h presence... yes

checking for malloc.h... yes

checking for unistd.h... (cached) yes

checking ieeefp.h usability... no

checking ieeefp.h presence... no

checking for ieeefp.h... no

checking math.h usability... yes

checking math.h presence... yes

checking for math.h... yes

checking sys/times.h usability... yes

checking sys/times.h presence... yes

checking for sys/times.h... yes

checking sys/param.h usability... yes

checking sys/param.h presence... yes

checking for sys/param.h... yes

checking sys/resource.h usability... yes

checking sys/resource.h presence... yes

checking for sys/resource.h... yes

checking signal.h usability... yes

checking signal.h presence... yes

checking for signal.h... yes

checking float.h usability... yes

checking float.h presence... yes

checking for float.h... yes

checking stdio.h usability... yes

checking stdio.h presence... yes

checking for stdio.h... yes

checking for stdlib.h... (cached) yes

checking errno.h usability... yes

checking errno.h presence... yes

checking for errno.h... yes

checking for string.h... (cached) yes

checking ctype.h usability... yes

checking ctype.h presence... yes

checking for ctype.h... yes

checking for an ANSI C-conforming const... yes

checking whether time.h and sys/time.h may both be included... yes

checking whether struct tm is in sys/time.h or time.h... time.h

Test Library Functions

checking for acos... no

checking for acos in -lm... yes

checking for strftime... yes

checking for vprintf... yes

checking for _doprnt... no

checking whether byte ordering is bigendian... no

checking for nl_langinfo... yes

checking for tzset... yes

checking for round... yes

checking for rint... yes

checking for fsync... yes

checking for mbstowcs... yes

checking for opendir... yes

checking for readdir... yes

checking for chdir... yes

checking for chroot... yes

checking for getuid... yes

checking for strerror... yes

checking for snprintf... yes

checking for vsnprintf... yes

checking for vasprintf... yes

checking for fpclass... no

checking for class... no

checking for fp_class... no

checking for isnan... yes

checking for memmove... yes

checking for strchr... yes

checking for mktime... yes

checking for getrusage... yes

checking for gettimeofday... yes

checking whether strerror_r is declared... yes

checking for strerror_r... yes

checking whether strerror_r returns char *... yes

Map/Fadvis/Madvise checking

checking for fdatasync... yes

checking for fsync... (cached) yes

checking for socket... yes

checking for getaddrinfo... yes

checking sys/mman.h usability... yes

checking sys/mman.h presence... yes

checking for sys/mman.h... yes

checking for stdlib.h... (cached) yes

checking for unistd.h... (cached) yes

checking for getpagesize... yes

checking for working mmap... yes

checking for mmap... yes

checking for munmap... yes

checking for msync... yes

checking whether madvise is declared... yes

checking for madvise... yes

checking whether posix_fadvise is declared... yes

checking for posix_fadvise... yes

Libintl Processing

checking whether NLS is requested... yes

checking for msgfmt... /usr/bin/msgfmt

checking for gmsgfmt... /usr/bin/msgfmt

checking for xgettext... /usr/bin/xgettext

checking for msgmerge... /usr/bin/msgmerge

checking for ld used by GCC... /usr/bin/ld

checking if the linker (/usr/bin/ld) is GNU ld... yes

checking for shared library run path origin... done

checking for CFPreferencesCopyAppValue... no

checking for CFLocaleCopyCurrent... no

checking for GNU gettext in libc... yes

checking whether to use NLS... yes

checking where the gettext function comes from... libc

IEEE Math Checks

checking for fpclassify... no

checking for fpclassify with ... yes

checking for isinf... yes

checking whether isfinite is broken... no

checking if IEEE math works out of the box... yes

Resolve Portability Issues

checking tm_gmtoff in struct tm... yes

checking __tm_gmtoff in struct tm... no

checking if msync with MS_ASYNC updates the files mtime... yes

checking for _NL_TIME_WEEK_1STDAY... no

checking for nl_langinfo(_NL_TIME_WEEK_1STDAY) with langinfo.h... yes

checking for opterr... yes

checking for getopt_long... yes

checking if realloc can deal with NULL... yes

checking if ctime_r need special care to act posixly correct... no

checking for the pthreads library -lpthreads... no

checking whether pthreads work without any flags... no

checking whether pthreads work with -Kthread... no

checking whether pthreads work with -kthread... no

checking for the pthreads library -llthread... no

checking whether pthreads work with -pthread... yes

checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE

checking if more special flags are required for pthreads... no

checking for cc_r... gcc

checking do we need malloc/malloc.h... nope, works out of the box

checking the type of time_t... checking size of time_t... 4

time_t is 32 bit

Find 3rd-Party Libraries

checking dbi/dbi.h usability... no

checking dbi/dbi.h presence... no

checking for dbi/dbi.h... no

checking tcpd.h usability... no

checking tcpd.h presence... no

checking for tcpd.h... no

checking for cairo_font_options_create in -lcairo... yes

checking cairo.h usability... no

checking cairo.h presence... no

checking for cairo.h... no

checking for pkg-config... pkg-config

checking for cairo_font_options_create in -lcairo... yes

checking cairo.h usability... yes

checking cairo.h presence... yes

checking for cairo.h... yes

checking for cairo_svg_surface_create in -lcairo... yes

checking cairo-svg.h usability... yes

checking cairo-svg.h presence... yes

checking for cairo-svg.h... yes

checking for cairo_pdf_surface_create in -lcairo... yes

checking cairo-pdf.h usability... yes

checking cairo-pdf.h presence... yes

checking for cairo-pdf.h... yes

checking for cairo_ps_surface_create in -lcairo... yes

checking cairo-ps.h usability... yes

checking cairo-ps.h presence... yes

checking for cairo-ps.h... yes

checking for pango_cairo_context_set_font_options in -lpangocairo-1.0... yes

checking pango/pango.h usability... no

checking pango/pango.h presence... no

checking for pango/pango.h... no

checking for pkg-config... (cached) pkg-config

checking for pango_cairo_context_set_font_options in -lpangocairo-1.0... yes

checking pango/pango.h usability... yes

checking pango/pango.h presence... yes

checking for pango/pango.h... yes

checking for glib_check_version in -lglib-2.0... yes

checking glib.h usability... yes

checking glib.h presence... yes

checking for glib.h... yes

checking for xmlParseFile in -lxml2... yes

checking libxml/parser.h usability... yes

checking libxml/parser.h presence... yes

checking for libxml/parser.h... yes

Prep for Building Language Bindings

checking for perl... /usr/bin/perl

checking for pod2man... /usr/bin/pod2man

checking for pod2html... /usr/bin/pod2html

checking for the perl version you are running... 5.14.2

checking for the C compiler perl wants to use to build its modules... cc

checking for cc... /usr/bin/cc

checking Perl Modules to build... perl_piped perl_shared

checking for ruby... no

checking if ruby modules can be built... No .. Ruby not found or disabled

checking for lua... /usr/bin/lua

checking for lua >= 5.0... 5.1 found

checking lua51/lua.h usability... no

checking lua51/lua.h presence... no

checking for lua51/lua.h... no

checking lua5.1/lua.h usability... no

checking lua5.1/lua.h presence... no

checking for lua5.1/lua.h... no

checking lua.h usability... no

checking lua.h presence... no

checking for lua.h... no

checking for library containing lua_call... no

Lua headers found but not the libraries! Please reinstall the dev packages for Lua 5.1

checking for tclConfig.sh in /usr/lib... no

checking for tclConfig.sh in /usr/lib64... no

checking for tclConfig.sh in /usr/local/lib... no

checking for tclConfig.sh in /usr/lib/tcl8.4... no

checking for tclConfig.sh in /usr/lib/tcl8.3... no

configure: WARNING: tclConfig.sh not found - Tcl interface will not be built

checking for a Python interpreter with version >= 2.3... python

checking for python... /home/pi/bin/python

checking for python version... 2.7

checking for python platform... linux2

checking for python script directory... ${prefix}/lib/python2.7/site-packages

checking for python extension module directory... ${exec_prefix}/lib/python2.7/site-packages

checking for headers required to compile python extensions... found

checking for gnroff... no

checking for nroff... /usr/bin/nroff

checking for groff... /usr/bin/groff

Apply Configuration Information

configure: creating ./config.status

config.status: creating examples/shared-demo.pl

config.status: creating examples/piped-demo.pl

config.status: creating examples/stripes.pl

config.status: creating examples/bigtops.pl

config.status: creating examples/minmax.pl

config.status: creating examples/4charts.pl

config.status: creating examples/perftest.pl

config.status: creating examples/Makefile

config.status: creating examples/rrdcached/Makefile

config.status: creating doc/Makefile

config.status: creating po/Makefile.in

config.status: creating src/Makefile

config.status: creating src/librrd.sym.in

config.status: creating src/librrd.pc

config.status: creating bindings/Makefile

config.status: creating bindings/tcl/Makefile

config.status: creating bindings/tcl/ifOctets.tcl

config.status: creating Makefile

config.status: creating bindings/lua/Makefile

config.status: creating rrd_config.h

config.status: executing depfiles commands

config.status: executing libtool commands

config.status: executing po-directories commands

config.status: creating po/POTFILES

config.status: creating po/Makefile

config.status: executing default commands

checking in... and out again

ordering CD from http://tobi.oetiker.ch/wish http://tobi.oetiker.ch/wish .... just kidding ;-)

Config is DONE!

With MMAP IO: yes

Build rrd_getopt: no

Build rrd_graph: yes

Static programs: no

Perl Modules: perl_piped perl_shared

Perl Binary: /usr/bin/perl

Perl Version: 5.14.2

Perl Options: PREFIX=/opt/rrdtool-1.4.7 LIB=/opt/rrdtool-1.4.7/lib/perl/5.14.2

Ruby Modules:

Ruby Binary: no

Ruby Options: sitedir=/opt/rrdtool-1.4.7/lib/ruby

Build Lua Bindings: no

Build Tcl Bindings: no

Build Python Bindings: yes

Build rrdcgi: yes

Build librrd MT: yes

Use gettext: yes

With libDBI: no

With libwrap: no

Libraries: -lxml2 -lglib-2.0 -lcairo -lcairo -lcairo -lm -lcairo -lpng12 -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lglib-2.0

Type 'make' to compile the software and use 'make install' to

install everything to: /opt/rrdtool-1.4.7.

... that wishlist is NO JOKE. If you find RRDtool useful

make me happy. Go to http://tobi.oetiker.ch/wish http://tobi.oetiker.ch/wish and

place an order.

-- Tobi Oetiker tobi@oetiker.ch mailto:tobi@oetiker.ch In file included from /usr/include/python2.7/Python.h:8:0,

from rrdtool-1.4.7/bindings/python/rrdtoolmodule.c:44:

/usr/include/python2.7/pyconfig.h:1161:0: warning: "_POSIX_C_SOURCE" redefined [enabled by default]

/usr/include/features.h:163:0: note: this is the location of the previous definition

/usr/include/python2.7/pyconfig.h:1183:0: warning: "_XOPEN_SOURCE" redefined [enabled by default]

/usr/include/features.h:165:0: note: this is the location of the previous definition

/usr/bin/ld: cannot find -lrrd

collect2: ld returned 1 exit status

error: Setup script exited with error: command 'gcc' failed with exit status 1

(pi)pi@raspberrypi ~ $

I have tried loading the apt-get install libpango1.0-dev libxml2-dev as noted in the comments, but it did not help.

Any help in what I am doing wrong and how to fix would be greatly appreciated

Thanks kbarkhau

— Reply to this email directly or view it on GitHub https://github.com/bbustin/Climaduino-web-controller/issues/3.

— Reply to this email directly or view it on GitHub.

bbustin commented 9 years ago

It could be that when I wrote this, it was using an older version of Django. I’ve found the following resource:

http://stackoverflow.com/questions/25537905/django-1-7-throws-django-core-exceptions-appregistrynotready-models-arent-load

I’m not exactly sure how, but if you uninstall Django 1.7 and put on 1.6 it should work. I have a much newer codebase working with Django 1.7 in my development branch; however, it works a lot differently than the version on the Instructable. It is used to control multiple central ACs and needs the Arduino Yún as well as a relay shield. The best bet would likely be to try to get version 1.6 of Django… Once you uninstall Django, I think the following command might allow you to install the older version (although I have not tested it): sudo pip install Django==1.6

On Mar 2, 2015, at 3:40 PM, kbarkhau notifications@github.com wrote:

Hello,

Thanks for getting back with me so quickly--it looks like it was the librrd-dev library. Once I loaded that rdtools installed fine. Thanks so much! I've moved on to the creating the db step and and its been sitting for about 10 minutes now with the last message: "AppRegistryNotReady: Models aren't loaded yet." Is something hung, or does this step just take a long time?

Thanks, Keith Sent from iCloud

On Mar 02, 2015, at 02:41 PM, bbustin notifications@github.com wrote:

Please let me know if running the following command helps:

sudo apt-get install -y build-essential python-dev python-setuptools libcairo2-dev libpango1.0-dev libxml2-dev rrdtool librrd-dev

On Mar 2, 2015, at 2:38 PM, kbarkhau notifications@github.com wrote:

Hello,

As with the previous poster, I too am having a nightmare of a time getting rrdtool to install. I am using a raspberry Pi 2 and have tried the steps in your instructable with both the latest version of wheezy with the adafruit tools installed and also with the occidentalis v0.2 distro. In both cases I am getting the following error when executing the easy_install python-rrdtool command:

(pi)pi@raspberrypi ~ $ easy_install python-rrdtool

Searching for python-rrdtool

Reading https://pypi.python.org/simple/python-rrdtool/ https://pypi.python.org/simple/python-rrdtool/ /home/pi/local/lib/python2.7/site-packages/pkg_resources/init.py:2512: PEP440Warning: 'python (rrdtool-1.4.7)' is being parsed as a legacy, non PEP 440, version. You may find odd behavior and sort order. In particular it will be sorted as less than 0.0. It is recommend to migrate to PEP 440 compatible versions.

PEP440Warning,

Best match: python-rrdtool 1.4.7

Downloading https://pypi.python.org/packages/source/p/python- https://pypi.python.org/packages/source/p/python-...

Processing python-rrdtool-1.4.7.tar.gz

Writing /tmp/easy_install-wPVPRm/python-rrdtool-1.4.7/setup.cfg

Running python-rrdtool-1.4.7/setup.py -q bdist_egg --dist-dir /tmp/easy_install-wPVPRm/python-rrdtool-1.4.7/egg-dist-tmp-yrYogk

checking build system type... armv7l-unknown-linux-gnueabi

checking host system type... armv7l-unknown-linux-gnueabi

checking target system type... armv7l-unknown-linux-gnueabi

checking for gcc... gcc

checking for C compiler default output file name... a.out

checking whether the C compiler works... yes

checking whether we are cross compiling... no

checking for suffix of executables...

checking for suffix of object files... o

checking whether we are using the GNU C compiler... yes

checking whether gcc accepts -g... yes

checking for gcc option to accept ISO C89... none needed

checking how to run the C preprocessor... gcc -E

checking for grep that handles long lines and -e... /bin/grep

checking for egrep... /bin/grep -E

checking for ANSI C header files... yes

checking for sys/types.h... yes

checking for sys/stat.h... yes

checking for stdlib.h... yes

checking for string.h... yes

checking for memory.h... yes

checking for strings.h... yes

checking for inttypes.h... yes

checking for stdint.h... yes

checking for unistd.h... yes

checking minix/config.h usability... no

checking minix/config.h presence... no

checking for minix/config.h... no

checking whether it is safe to define EXTENSIONS... yes

checking for a BSD-compatible install... /usr/bin/install -c

checking whether build environment is sane... yes

checking for a thread-safe mkdir -p... /bin/mkdir -p

checking for gawk... no

checking for mawk... mawk

checking whether make sets $(MAKE)... yes

checking for style of include used by make... GNU

checking dependency style of gcc... gcc3

checking whether to enable maintainer-specific portions of Makefiles... no

Audit Compilation Environment

checking how to run the C preprocessor... gcc -E

checking for gcc... (cached) gcc

checking whether we are using the GNU C compiler... (cached) yes

checking whether gcc accepts -g... (cached) yes

checking for gcc option to accept ISO C89... (cached) none needed

checking whether gcc and cc understand -c and -o together... yes

checking for a sed that does not truncate output... /bin/sed

checking for fgrep... /bin/grep -F

checking for ld used by gcc... /usr/bin/ld

checking if the linker (/usr/bin/ld) is GNU ld... yes

checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B

checking the name lister (/usr/bin/nm -B) interface... BSD nm

checking whether ln -s works... yes

checking the maximum length of command line arguments... 1572864

checking whether the shell understands some XSI constructs... yes

checking whether the shell understands "+="... yes

checking for /usr/bin/ld option to reload object files... -r

checking for objdump... objdump

checking how to recognize dependent libraries... pass_all

checking for ar... ar

checking for strip... strip

checking for ranlib... ranlib

checking command to parse /usr/bin/nm -B output from gcc object... ok

checking for dlfcn.h... yes

checking for objdir... .libs

checking if gcc supports -fno-rtti -fno-exceptions... no

checking for gcc option to produce PIC... -fPIC -DPIC

checking if gcc PIC flag -fPIC -DPIC works... yes

checking if gcc static flag -static works... yes

checking if gcc supports -c -o file.o... yes

checking if gcc supports -c -o file.o... (cached) yes

checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes

checking whether -lc should be explicitly linked in... no

checking dynamic linker characteristics... GNU/Linux ld.so

checking how to hardcode library paths into programs... immediate

checking whether stripping libraries is possible... yes

checking if libtool supports shared libraries... yes

checking whether to build shared libraries... yes

checking whether to build static libraries... yes

checking if gcc likes the -Werror flag... yes

checking if gcc likes the -fno-strict-aliasing flag... yes

checking if gcc likes the -Wall flag... yes

checking if gcc likes the -std=gnu99 flag... yes

checking if gcc likes the -pedantic flag... yes

checking if gcc likes the -Wundef flag... yes

checking if gcc likes the -Wshadow flag... yes

checking if gcc likes the -Wpointer-arith flag... yes

checking if gcc likes the -Wcast-align flag... yes

checking if gcc likes the -Wmissing-prototypes flag... yes

checking if gcc likes the -Wmissing-declarations flag... yes

checking if gcc likes the -Wnested-externs flag... yes

checking if gcc likes the -Winline flag... yes

checking if gcc likes the -Wold-style-definition flag... yes

checking if gcc likes the -W flag... yes

Checking for Header Files

checking for ANSI C header files... (cached) yes

checking for dirent.h that defines DIR... yes

checking for library containing opendir... none required

checking langinfo.h usability... yes

checking langinfo.h presence... yes

checking for langinfo.h... yes

checking for stdint.h... (cached) yes

checking for inttypes.h... (cached) yes

checking libgen.h usability... yes

checking libgen.h presence... yes

checking for libgen.h... yes

checking features.h usability... yes

checking features.h presence... yes

checking for features.h... yes

checking for sys/stat.h... (cached) yes

checking for sys/types.h... (cached) yes

checking fcntl.h usability... yes

checking fcntl.h presence... yes

checking for fcntl.h... yes

checking fp_class.h usability... no

checking fp_class.h presence... no

checking for fp_class.h... no

checking malloc.h usability... yes

checking malloc.h presence... yes

checking for malloc.h... yes

checking for unistd.h... (cached) yes

checking ieeefp.h usability... no

checking ieeefp.h presence... no

checking for ieeefp.h... no

checking math.h usability... yes

checking math.h presence... yes

checking for math.h... yes

checking sys/times.h usability... yes

checking sys/times.h presence... yes

checking for sys/times.h... yes

checking sys/param.h usability... yes

checking sys/param.h presence... yes

checking for sys/param.h... yes

checking sys/resource.h usability... yes

checking sys/resource.h presence... yes

checking for sys/resource.h... yes

checking signal.h usability... yes

checking signal.h presence... yes

checking for signal.h... yes

checking float.h usability... yes

checking float.h presence... yes

checking for float.h... yes

checking stdio.h usability... yes

checking stdio.h presence... yes

checking for stdio.h... yes

checking for stdlib.h... (cached) yes

checking errno.h usability... yes

checking errno.h presence... yes

checking for errno.h... yes

checking for string.h... (cached) yes

checking ctype.h usability... yes

checking ctype.h presence... yes

checking for ctype.h... yes

checking for an ANSI C-conforming const... yes

checking whether time.h and sys/time.h may both be included... yes

checking whether struct tm is in sys/time.h or time.h... time.h

Test Library Functions

checking for acos... no

checking for acos in -lm... yes

checking for strftime... yes

checking for vprintf... yes

checking for _doprnt... no

checking whether byte ordering is bigendian... no

checking for nl_langinfo... yes

checking for tzset... yes

checking for round... yes

checking for rint... yes

checking for fsync... yes

checking for mbstowcs... yes

checking for opendir... yes

checking for readdir... yes

checking for chdir... yes

checking for chroot... yes

checking for getuid... yes

checking for strerror... yes

checking for snprintf... yes

checking for vsnprintf... yes

checking for vasprintf... yes

checking for fpclass... no

checking for class... no

checking for fp_class... no

checking for isnan... yes

checking for memmove... yes

checking for strchr... yes

checking for mktime... yes

checking for getrusage... yes

checking for gettimeofday... yes

checking whether strerror_r is declared... yes

checking for strerror_r... yes

checking whether strerror_r returns char *... yes

Map/Fadvis/Madvise checking

checking for fdatasync... yes

checking for fsync... (cached) yes

checking for socket... yes

checking for getaddrinfo... yes

checking sys/mman.h usability... yes

checking sys/mman.h presence... yes

checking for sys/mman.h... yes

checking for stdlib.h... (cached) yes

checking for unistd.h... (cached) yes

checking for getpagesize... yes

checking for working mmap... yes

checking for mmap... yes

checking for munmap... yes

checking for msync... yes

checking whether madvise is declared... yes

checking for madvise... yes

checking whether posix_fadvise is declared... yes

checking for posix_fadvise... yes

Libintl Processing

checking whether NLS is requested... yes

checking for msgfmt... /usr/bin/msgfmt

checking for gmsgfmt... /usr/bin/msgfmt

checking for xgettext... /usr/bin/xgettext

checking for msgmerge... /usr/bin/msgmerge

checking for ld used by GCC... /usr/bin/ld

checking if the linker (/usr/bin/ld) is GNU ld... yes

checking for shared library run path origin... done

checking for CFPreferencesCopyAppValue... no

checking for CFLocaleCopyCurrent... no

checking for GNU gettext in libc... yes

checking whether to use NLS... yes

checking where the gettext function comes from... libc

IEEE Math Checks

checking for fpclassify... no

checking for fpclassify with ... yes

checking for isinf... yes

checking whether isfinite is broken... no

checking if IEEE math works out of the box... yes

Resolve Portability Issues

checking tm_gmtoff in struct tm... yes

checking __tm_gmtoff in struct tm... no

checking if msync with MS_ASYNC updates the files mtime... yes

checking for _NL_TIME_WEEK_1STDAY... no

checking for nl_langinfo(_NL_TIME_WEEK_1STDAY) with langinfo.h... yes

checking for opterr... yes

checking for getopt_long... yes

checking if realloc can deal with NULL... yes

checking if ctime_r need special care to act posixly correct... no

checking for the pthreads library -lpthreads... no

checking whether pthreads work without any flags... no

checking whether pthreads work with -Kthread... no

checking whether pthreads work with -kthread... no

checking for the pthreads library -llthread... no

checking whether pthreads work with -pthread... yes

checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE

checking if more special flags are required for pthreads... no

checking for cc_r... gcc

checking do we need malloc/malloc.h... nope, works out of the box

checking the type of time_t... checking size of time_t... 4

time_t is 32 bit

Find 3rd-Party Libraries

checking dbi/dbi.h usability... no

checking dbi/dbi.h presence... no

checking for dbi/dbi.h... no

checking tcpd.h usability... no

checking tcpd.h presence... no

checking for tcpd.h... no

checking for cairo_font_options_create in -lcairo... yes

checking cairo.h usability... no

checking cairo.h presence... no

checking for cairo.h... no

checking for pkg-config... pkg-config

checking for cairo_font_options_create in -lcairo... yes

checking cairo.h usability... yes

checking cairo.h presence... yes

checking for cairo.h... yes

checking for cairo_svg_surface_create in -lcairo... yes

checking cairo-svg.h usability... yes

checking cairo-svg.h presence... yes

checking for cairo-svg.h... yes

checking for cairo_pdf_surface_create in -lcairo... yes

checking cairo-pdf.h usability... yes

checking cairo-pdf.h presence... yes

checking for cairo-pdf.h... yes

checking for cairo_ps_surface_create in -lcairo... yes

checking cairo-ps.h usability... yes

checking cairo-ps.h presence... yes

checking for cairo-ps.h... yes

checking for pango_cairo_context_set_font_options in -lpangocairo-1.0... yes

checking pango/pango.h usability... no

checking pango/pango.h presence... no

checking for pango/pango.h... no

checking for pkg-config... (cached) pkg-config

checking for pango_cairo_context_set_font_options in -lpangocairo-1.0... yes

checking pango/pango.h usability... yes

checking pango/pango.h presence... yes

checking for pango/pango.h... yes

checking for glib_check_version in -lglib-2.0... yes

checking glib.h usability... yes

checking glib.h presence... yes

checking for glib.h... yes

checking for xmlParseFile in -lxml2... yes

checking libxml/parser.h usability... yes

checking libxml/parser.h presence... yes

checking for libxml/parser.h... yes

Prep for Building Language Bindings

checking for perl... /usr/bin/perl

checking for pod2man... /usr/bin/pod2man

checking for pod2html... /usr/bin/pod2html

checking for the perl version you are running... 5.14.2

checking for the C compiler perl wants to use to build its modules... cc

checking for cc... /usr/bin/cc

checking Perl Modules to build... perl_piped perl_shared

checking for ruby... no

checking if ruby modules can be built... No .. Ruby not found or disabled

checking for lua... /usr/bin/lua

checking for lua >= 5.0... 5.1 found

checking lua51/lua.h usability... no

checking lua51/lua.h presence... no

checking for lua51/lua.h... no

checking lua5.1/lua.h usability... no

checking lua5.1/lua.h presence... no

checking for lua5.1/lua.h... no

checking lua.h usability... no

checking lua.h presence... no

checking for lua.h... no

checking for library containing lua_call... no

Lua headers found but not the libraries! Please reinstall the dev packages for Lua 5.1

checking for tclConfig.sh in /usr/lib... no

checking for tclConfig.sh in /usr/lib64... no

checking for tclConfig.sh in /usr/local/lib... no

checking for tclConfig.sh in /usr/lib/tcl8.4... no

checking for tclConfig.sh in /usr/lib/tcl8.3... no

configure: WARNING: tclConfig.sh not found - Tcl interface will not be built

checking for a Python interpreter with version >= 2.3... python

checking for python... /home/pi/bin/python

checking for python version... 2.7

checking for python platform... linux2

checking for python script directory... ${prefix}/lib/python2.7/site-packages

checking for python extension module directory... ${exec_prefix}/lib/python2.7/site-packages

checking for headers required to compile python extensions... found

checking for gnroff... no

checking for nroff... /usr/bin/nroff

checking for groff... /usr/bin/groff

Apply Configuration Information

configure: creating ./config.status

config.status: creating examples/shared-demo.pl

config.status: creating examples/piped-demo.pl

config.status: creating examples/stripes.pl

config.status: creating examples/bigtops.pl

config.status: creating examples/minmax.pl

config.status: creating examples/4charts.pl

config.status: creating examples/perftest.pl

config.status: creating examples/Makefile

config.status: creating examples/rrdcached/Makefile

config.status: creating doc/Makefile

config.status: creating po/Makefile.in

config.status: creating src/Makefile

config.status: creating src/librrd.sym.in

config.status: creating src/librrd.pc

config.status: creating bindings/Makefile

config.status: creating bindings/tcl/Makefile

config.status: creating bindings/tcl/ifOctets.tcl

config.status: creating Makefile

config.status: creating bindings/lua/Makefile

config.status: creating rrd_config.h

config.status: executing depfiles commands

config.status: executing libtool commands

config.status: executing po-directories commands

config.status: creating po/POTFILES

config.status: creating po/Makefile

config.status: executing default commands

checking in... and out again

ordering CD from http://tobi.oetiker.ch/wish http://tobi.oetiker.ch/wish .... just kidding ;-)

Config is DONE!

With MMAP IO: yes

Build rrd_getopt: no

Build rrd_graph: yes

Static programs: no

Perl Modules: perl_piped perl_shared

Perl Binary: /usr/bin/perl

Perl Version: 5.14.2

Perl Options: PREFIX=/opt/rrdtool-1.4.7 LIB=/opt/rrdtool-1.4.7/lib/perl/5.14.2

Ruby Modules:

Ruby Binary: no

Ruby Options: sitedir=/opt/rrdtool-1.4.7/lib/ruby

Build Lua Bindings: no

Build Tcl Bindings: no

Build Python Bindings: yes

Build rrdcgi: yes

Build librrd MT: yes

Use gettext: yes

With libDBI: no

With libwrap: no

Libraries: -lxml2 -lglib-2.0 -lcairo -lcairo -lcairo -lm -lcairo -lpng12 -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lglib-2.0

Type 'make' to compile the software and use 'make install' to

install everything to: /opt/rrdtool-1.4.7.

... that wishlist is NO JOKE. If you find RRDtool useful

make me happy. Go to http://tobi.oetiker.ch/wish http://tobi.oetiker.ch/wish and

place an order.

-- Tobi Oetiker tobi@oetiker.ch mailto:tobi@oetiker.ch In file included from /usr/include/python2.7/Python.h:8:0,

from rrdtool-1.4.7/bindings/python/rrdtoolmodule.c:44:

/usr/include/python2.7/pyconfig.h:1161:0: warning: "_POSIX_C_SOURCE" redefined [enabled by default]

/usr/include/features.h:163:0: note: this is the location of the previous definition

/usr/include/python2.7/pyconfig.h:1183:0: warning: "_XOPEN_SOURCE" redefined [enabled by default]

/usr/include/features.h:165:0: note: this is the location of the previous definition

/usr/bin/ld: cannot find -lrrd

collect2: ld returned 1 exit status

error: Setup script exited with error: command 'gcc' failed with exit status 1

(pi)pi@raspberrypi ~ $

I have tried loading the apt-get install libpango1.0-dev libxml2-dev as noted in the comments, but it did not help.

Any help in what I am doing wrong and how to fix would be greatly appreciated

Thanks kbarkhau

— Reply to this email directly or view it on GitHub https://github.com/bbustin/Climaduino-web-controller/issues/3.

— Reply to this email directly or view it on GitHub.

— Reply to this email directly or view it on GitHub https://github.com/bbustin/Climaduino-web-controller/issues/3#issuecomment-76815115.