looks like the harmony gem depends on the johnson gem which depends on nodejs which, of course, isn't a gem. try installing nodejs - see: nodejs.org.
rick On Monday, February 24, 2014 5:50:07 AM UTC-5, saravanan p wrote: > > Hello everyone, > > saravanan@ubuntu:~$ ruby -v > ruby 2.0.0p353 (2013-11-22 revision 43784) [x86_64-linux] > saravanan@ubuntu:~$ rails -v > Rails 4.0.3 > saravanan@ubuntu:~$ rvm -v > > rvm 1.24.4 (stable) by Wayne E. Seguin <[email protected] <javascript:>>, > Michal Papis <[email protected] <javascript:>> [https://rvm.io/] > > *I am trying to install "harmony" gem for data scraping.* > > saravanan@ubuntu:~$ gem install harmony > Building native extensions. This could take a while... > ERROR: Error installing harmony: > ERROR: Failed to build gem native extension. > > /home/saravanan/.rvm/rubies/ruby-2.0.0-p353/bin/ruby extconf.rb > creating cache ./config.cache > checking host system type... x86_64-unknown-linux-gnu > checking target system type... x86_64-unknown-linux-gnu > checking build system type... x86_64-unknown-linux-gnu > checking for mawk... mawk > checking for gcc... gcc > checking whether the C compiler (gcc ) works... yes > checking whether the C compiler (gcc ) is a cross-compiler... no > checking whether we are using GNU C... yes > checking whether gcc accepts -g... yes > checking for c++... c++ > checking whether the C++ compiler (c++ ) works... yes > checking whether the C++ compiler (c++ ) is a cross-compiler... no > checking whether we are using GNU C++... yes > checking whether c++ accepts -g... yes > checking for ranlib... ranlib > checking for as... /usr/bin/as > checking for ar... ar > checking for ld... ld > checking for strip... strip > checking for windres... no > checking whether gcc and cc understand -c and -o together... yes > checking how to run the C preprocessor... gcc -E > checking how to run the C++ preprocessor... c++ -E > checking for a BSD compatible install... /usr/bin/install -c > checking whether ln -s works... yes > checking for perl5... no > checking for perl... /usr/bin/perl > checking for minimum required perl version >= 5.006... 5.014002 > checking for full perl installation... yes > checking for python... /usr/bin/python > checking for doxygen... : > checking for whoami... /usr/bin/whoami > checking for autoconf... /usr/bin/autoconf > checking for unzip... /usr/bin/unzip > checking for zip... /usr/bin/zip > checking for makedepend... no > checking for xargs... /usr/bin/xargs > checking for gmake... no > checking for make... /usr/bin/make > checking for X... libraries , headers > checking for dnet_ntoa in -ldnet... no > checking for dnet_ntoa in -ldnet_stub... no > checking for gethostbyname... yes > checking for connect... yes > checking for remove... yes > checking for shmat... yes > checking for IceConnectionNumber in -lICE... yes > checking whether the compiler supports -Wno-invalid-offsetof... yes > checking whether the compiler supports -Wno-variadic-macros... yes > checking whether ld has archive extraction flags... yes > checking that static assertion macros used in autoconf tests work... yes > checking for 64-bit OS... yes > checking for ANSI C header files... yes > checking for working const... yes > checking for mode_t... yes > checking for off_t... yes > checking for pid_t... yes > checking for size_t... yes > checking for st_blksize in struct stat... yes > checking for siginfo_t... yes > checking for stdint.h... yes > checking for the size of void*... 8 > checking for the alignment of void*... 8 > checking for the size of double... 8 > checking for int16_t... yes > checking for int32_t... yes > checking for int64_t... yes > checking for int64... no > checking for uint... yes > checking for uint_t... no > checking for uint16_t... no > checking for uname.domainname... yes > checking for uname.__domainname... no > checking for visibility(hidden) attribute... yes > checking for visibility(default) attribute... yes > checking for visibility pragma support... yes > checking For gcc visibility bug with class-level attributes (GCC bug > 26905)... no > checking For x86_64 gcc visibility bug with builtins (GCC bug 20297)... no > checking for dirent.h that defines DIR... yes > checking for opendir in -ldir... no > checking for sys/byteorder.h... no > checking for compat.h... no > checking for getopt.h... yes > checking for sys/bitypes.h... yes > checking for memory.h... yes > checking for unistd.h... yes > checking for gnu/libc-version.h... yes > checking for nl_types.h... yes > checking for malloc.h... yes > checking for X11/XKBlib.h... yes > checking for sys/statvfs.h... yes > checking for sys/statfs.h... yes > checking for sys/vfs.h... yes > checking for sys/mount.h... yes > checking for mmintrin.h... yes > checking for new... yes > checking for sys/cdefs.h... yes > checking for gethostbyname_r in -lc_r... no > checking for atan in -lm... yes > checking for dlopen in -ldl... yes > checking for dlfcn.h... yes > checking for dladdr... yes > checking for socket in -lsocket... no > checking for pthread_create in -lpthreads... no > checking for pthread_create in -lpthread... yes > checking whether gcc accepts -pthread... yes > checking whether mmap() sees write()s... yes > checking whether gcc needs -traditional... no > checking for 8-bit clean memcmp... yes > checking for fchmod... yes > checking for flockfile... yes > checking for getc_unlocked... yes > checking for _getc_nolock... no > checking for getpagesize... yes > checking for lchown... yes > checking for localtime_r... yes > checking for lstat64... yes > checking for memmove... yes > checking for random... yes > checking for rint... yes > checking for sbrk... yes > checking for snprintf... yes > checking for stat64... yes > checking for statvfs... yes > checking for statvfs64... yes > checking for strerror... yes > checking for strtok_r... yes > checking for truncate64... yes > checking for wcrtomb... yes > checking for mbrtowc... yes > checking for res_ninit()... yes > checking for gnu_get_libc_version()... yes > checking for iconv in -lc... yes > checking for iconv()... yes > checking for iconv() with const input... no > checking for an implementation of va_copy()... yes > checking for an implementation of __va_copy()... yes > checking whether va_lists can be copied by value... no > checking for C++ exceptions flag... -fno-exceptions > checking for gcc 3.0 ABI... yes > checking for C++ "explicit" keyword... yes > checking for C++ "typename" keyword... yes > checking for modern C++ template specialization syntax support... yes > checking whether partial template specialization works... yes > checking whether operators must be re-defined for templates derived from > templates... no > checking whether we need to cast a derived template to pass as its base > class... no > checking whether the compiler can resolve const ambiguities for > templates... yes > checking whether the C++ "using" keyword can change access... yes > checking whether the C++ "using" keyword resolves ambiguity... yes > checking for "std::" namespace... yes > checking whether standard template operator!=() is ambiguous... unambiguous > checking for C++ reinterpret_cast... yes > checking for C++ dynamic_cast to void*... yes > checking whether C++ requires implementation of unused virtual methods... > yes > checking for trouble comparing to zero near std::operator!=()... no > checking for LC_MESSAGES... yes > checking for valid optimization flags... yes > checking for __cxa_demangle... yes > checking for unwind.h... yes > checking for _Unwind_Backtrace... yes > checking for gcc -pipe support... yes > checking whether compiler supports -Wno-long-long... yes > checking whether C compiler supports -fprofile-generate... yes > checking whether C++ compiler has -pedantic long long bug... no > checking for correct temporary object destruction order... yes > checking for correct overload resolution with const and templates... no > checking for tm_zone tm_gmtoff in struct tm... yes > checking for setlocale... yes > creating js-confdefs.h > ==== js-confdefs.h ================================= > /* List of defines generated by configure. Included with preprocessor flag, > * -include, to avoid long list of -D defines on the compile command-line. > * Do not edit. > */ > > #ifndef _JS_CONFDEFS_H_ > #define _JS_CONFDEFS_H_ > > #define CPP_THROW_NEW throw() > #define D_INO d_ino > #define EDITLINE 1 > #define HAVE_64BIT_OS 1 > #define HAVE_CPP_ACCESS_CHANGING_USING 1 > #define HAVE_CPP_AMBIGUITY_RESOLVING_USING 1 > #define HAVE_CPP_DYNAMIC_CAST_TO_VOID_PTR 1 > #define HAVE_CPP_EXPLICIT 1 > #define HAVE_CPP_MODERN_SPECIALIZE_TEMPLATE_SYNTAX 1 > #define HAVE_CPP_NAMESPACE_STD 1 > #define HAVE_CPP_NEW_CASTS 1 > #define HAVE_CPP_PARTIAL_SPECIALIZATION 1 > #define HAVE_CPP_TYPENAME 1 > #define HAVE_CPP_UNAMBIGUOUS_STD_NOTEQUAL 1 > #define HAVE_DIRENT_H 1 > #define HAVE_DLADDR 1 > #define HAVE_FCHMOD 1 > #define HAVE_FLOCKFILE 1 > #define HAVE_GETC_UNLOCKED 1 > #define HAVE_GETOPT_H 1 > #define HAVE_GETPAGESIZE 1 > #define HAVE_GNU_GET_LIBC_VERSION 1 > #define HAVE_GNU_LIBC_VERSION_H 1 > #define HAVE_I18N_LC_MESSAGES 1 > #define HAVE_ICONV 1 > #define HAVE_INT16_T 1 > #define HAVE_INT32_T 1 > #define HAVE_INT64_T 1 > #define HAVE_LCHOWN 1 > #define HAVE_LIBDL 1 > #define HAVE_LIBM 1 > #define HAVE_LOCALTIME_R 1 > #define HAVE_LSTAT64 1 > #define HAVE_MALLOC_H 1 > #define HAVE_MBRTOWC 1 > #define HAVE_MEMMOVE 1 > #define HAVE_MEMORY_H 1 > #define HAVE_MMINTRIN_H 1 > #define HAVE_NL_TYPES_H 1 > #define HAVE_RANDOM 1 > #define HAVE_RES_NINIT 1 > #define HAVE_RINT 1 > #define HAVE_SBRK 1 > #define HAVE_SETLOCALE 1 > #define HAVE_SIGINFO_T 1 > #define HAVE_SNPRINTF 1 > #define HAVE_STAT64 1 > #define HAVE_STATVFS 1 > #define HAVE_STATVFS64 1 > #define HAVE_STRERROR 1 > #define HAVE_STRTOK_R 1 > #define HAVE_ST_BLKSIZE 1 > #define HAVE_SYS_BITYPES_H 1 > #define HAVE_SYS_CDEFS_H 1 > #define HAVE_SYS_MOUNT_H 1 > #define HAVE_SYS_STATFS_H 1 > #define HAVE_SYS_STATVFS_H 1 > #define HAVE_SYS_VFS_H 1 > #define HAVE_TM_ZONE_TM_GMTOFF 1 > #define HAVE_TRUNCATE64 1 > #define HAVE_UINT 1 > #define HAVE_UNAME_DOMAINNAME_FIELD 1 > #define HAVE_UNISTD_H 1 > #define HAVE_VA_COPY 1 > #define HAVE_VA_LIST_AS_ARRAY 1 > #define HAVE_VISIBILITY_ATTRIBUTE 1 > #define HAVE_VISIBILITY_HIDDEN_ATTRIBUTE 1 > #define HAVE_WCRTOMB 1 > #define HAVE_X11_XKBLIB_H 1 > #define HAVE__UNWIND_BACKTRACE 1 > #define HAVE___CXA_DEMANGLE 1 > #define JS_ALIGN_OF_POINTER 8 > #define JS_BITS_PER_WORD_LOG2 6 > #define JS_BYTES_PER_DOUBLE 8 > #define JS_BYTES_PER_WORD 8 > #define JS_HAVE_STDINT_H 1 > #define MOZ_DLL_SUFFIX ".so" > #define NEED_CPP_UNUSED_IMPLEMENTATIONS 1 > #define NEW_H <new> > #define STDC_HEADERS 1 > #define UNIX_ASYNC_DNS 1 > #define VA_COPY va_copy > #define XP_UNIX 1 > #define _REENTRANT 1 > > #endif /* _JS_CONFDEFS_H_ */ > > creating Makefile > creating shell/Makefile > creating lirasm/Makefile > creating jsapi-tests/Makefile > creating tests/Makefile > creating config/Makefile > creating config/mkdepend/Makefile > creating editline/Makefile > updating cache ./config.cache > creating ./config.status > creating config/autoconf.mk > creating js-config.h > invoking make to create js-config script > rm -f js-config.tmp > sed < js-config.in > js-config.tmp \ > -e 's|@prefix@|/usr/local|' \ > -e 's|@exec_prefix@|/usr/local|' \ > -e 's|@includedir@|/usr/local/include|' \ > -e 's|@libdir@|/usr/local/lib|' \ > -e 's|@MOZILLA_VERSION@||' \ > -e 's|@LIBRARY_NAME@|mozjs|' \ > -e 's|@NSPR_CFLAGS@||' \ > -e 's|@JS_CONFIG_LIBS@| -ldl -lm -lm -ldl |' \ > -e 's|@MOZ_JS_LIBS@|-L/usr/local/lib -lmozjs|' \ > && mv js-config.tmp js-config && chmod +x js-config > make export > make[1]: Entering directory > `/home/saravanan/.rvm/gems/ruby-2.0.0-p353@pjtat/gems/johnson-2.0.0.pre3/vendor/tracemonkey' > make -C config/ nsinstall > make[2]: Entering directory > `/home/saravanan/.rvm/gems/ruby-2.0.0-p353@pjtat/gems/johnson-2.0.0.pre3/vendor/tracemonkey/config' > nsinstall.c > gcc -o host_nsinstall.o -c -DXP_UNIX -O3 -DUNICODE -D_UNICODE -I. -I. > -I../dist/include -I../dist/include/nsprpub nsinstall.c > pathsub.c > gcc -o host_pathsub.o -c -DXP_UNIX -O3 -DUNICODE -D_UNICODE -I. -I. > -I../dist/include -I../dist/include/nsprpub pathsub.c > gcc -o nsinstall -DXP_UNIX -O3 -DUNICODE -D_UNICODE host_nsinstall.o > host_pathsub.o > make[2]: Leaving directory > `/home/saravanan/.rvm/gems/ruby-2.0.0-p353@pjtat/gems/johnson-2.0.0.pre3/vendor/tracemonkey/config' > Creating > /home/saravanan/.rvm/gems/ruby-2.0.0-p353@pjtat/gems/johnson-2.0.0.pre3/vendor/tracemonkey/.deps > make[2]: Entering directory > `/home/saravanan/.rvm/gems/ruby-2.0.0-p353@pjtat/gems/johnson-2.0.0.pre3/vendor/tracemonkey/config' > rm -f nfspwd > cp nfspwd.pl nfspwd > chmod +x nfspwd > /home/saravanan/.rvm/gems/ruby-2.0.0-p353@pjtat/gems/johnson-2.0.0.pre3/vendor/tracemonkey/config/nsinstall > > -R nsinstall ../dist/bin > if test ! -d system_wrappers_js; then mkdir system_wrappers_js; fi > /usr/bin/perl ./preprocessor.pl -DOSTYPE=\"Linux3.8\" -DOSARCH=Linux > -DHAVE_64BIT_OS=1 -DD_INO=d_ino -DSTDC_HEADERS=1 -DHAVE_ST_BLKSIZE=1 > -DHAVE_SIGINFO_T=1 -DJS_HAVE_STDINT_H=1 -DJS_BYTES_PER_WORD=8 > -DJS_BITS_PER_WORD_LOG2=6 -DJS_ALIGN_OF_POINTER=8 -DJS_BYTES_PER_DOUBLE=8 > -DHAVE_INT16_T=1 -DHAVE_INT32_T=1 -DHAVE_INT64_T=1 -DHAVE_UINT=1 > -DHAVE_UNAME_DOMAINNAME_FIELD=1 -DHAVE_VISIBILITY_HIDDEN_ATTRIBUTE=1 > -DHAVE_VISIBILITY_ATTRIBUTE=1 -DHAVE_DIRENT_H=1 -DHAVE_GETOPT_H=1 > -DHAVE_SYS_BITYPES_H=1 -DHAVE_MEMORY_H=1 -DHAVE_UNISTD_H=1 > -DHAVE_GNU_LIBC_VERSION_H=1 -DHAVE_NL_TYPES_H=1 -DHAVE_MALLOC_H=1 > -DHAVE_X11_XKBLIB_H=1 -DHAVE_SYS_STATVFS_H=1 -DHAVE_SYS_STATFS_H=1 > -DHAVE_SYS_VFS_H=1 -DHAVE_SYS_MOUNT_H=1 - > .. > .. > .. > .. > .. > > make[2]: Nothing to be done for `tools'. > make[2]: Leaving directory > `/home/saravanan/.rvm/gems/ruby-2.0.0-p353@pjtat/gems/johnson-2.0.0.pre3/vendor/tracemonkey/jsapi-tests' > make[2]: Entering directory > `/home/saravanan/.rvm/gems/ruby-2.0.0-p353@pjtat/gems/johnson-2.0.0.pre3/vendor/tracemonkey/tests' > make[2]: Nothing to be done for `tools'. > make[2]: Leaving directory > `/home/saravanan/.rvm/gems/ruby-2.0.0-p353@pjtat/gems/johnson-2.0.0.pre3/vendor/tracemonkey/tests' > make[1]: Leaving directory > `/home/saravanan/.rvm/gems/ruby-2.0.0-p353@pjtat/gems/johnson-2.0.0.pre3/vendor/tracemonkey' > checking for jsautocfg.h in > /home/saravanan/.rvm/gems/ruby-2.0.0-p353@pjtat/gems/johnson-2.0.0.pre3/vendor/tracemonkey... > > yes > checking for jsapi.h in > /home/saravanan/.rvm/gems/ruby-2.0.0-p353@pjtat/gems/johnson-2.0.0.pre3/vendor/tracemonkey... > > yes > creating Makefile > > make "DESTDIR=" > compiling immutable_node.cc > In file included from > /home/saravanan/.rvm/gems/ruby-2.0.0-p353@pjtat/gems/johnson-2.0.0.pre3/vendor/tracemonkey/jsinterp.h:48:0, > from > /home/saravanan/.rvm/gems/ruby-2.0.0-p353@pjtat/gems/johnson-2.0.0.pre3/vendor/tracemonkey/jscntxt.h:53, > from immutable_node.h:5, > from immutable_node.cc:1: > /home/saravanan/.rvm/gems/ruby-2.0.0-p353@pjtat/gems/johnson-2.0.0.pre3/vendor/tracemonkey/jsfun.h: > > In function ‘js_ArgsPrivateNative* js_GetArgsPrivateNative(JSObject*)’: > /home/saravanan/.rvm/gems/ruby-2.0.0-p353@pjtat/gems/johnson-2.0.0.pre3/vendor/tracemonkey/jsfun.h:233:55: > > warning: converting to non-pointer type ‘long unsigned int’ from NULL > [-Wconversion-null] > compiling global.cc > compiling js_land_proxy.cc > In file included from js_land_proxy.cc:1:0: > js_land_proxy.h:11:18: fatal error: node.h: No such file or directory > compilation terminated. > make: *** [js_land_proxy.o] Error 1 > > > Gem files will remain installed in > /home/saravanan/.rvm/gems/ruby-2.0.0-p353@pjtat/gems/johnson-2.0.0.pre3 for > inspection. > Results logged to > /home/saravanan/.rvm/gems/ruby-2.0.0-p353@pjtat/gems/johnson-2.0.0.pre3/ext/tracemonkey/gem_make.out > saravanan@ubuntu:~$ > > -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/67730b59-5463-4491-83bf-d98411ca2b63%40googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.

