Skip to content
This repository has been archived by the owner on Jul 4, 2023. It is now read-only.

Ruby 2.1.3 failed to build on OSX 10.9 #32910

Closed
smarek opened this issue Oct 3, 2014 · 25 comments
Closed

Ruby 2.1.3 failed to build on OSX 10.9 #32910

smarek opened this issue Oct 3, 2014 · 25 comments

Comments

@smarek
Copy link
Contributor

smarek commented Oct 3, 2014

With important problem being "error: unable to open output file '/dev/fd/8': ''"
With install flags --with-gdbm, --with-tcltk, --with-libffi, --with-gmp, --with-doc

/usr/local/Library/brew.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/ruby.rb
==> Upgrading 1 outdated package, with result:
ruby 2.1.3
/usr/local/Library/brew.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/pkg-config.rb
/usr/local/Library/brew.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/readline.rb
/usr/local/Library/brew.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/libyaml.rb
/usr/local/Library/brew.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/openssl.rb
/usr/local/Library/brew.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/makedepend.rb
==> Upgrading ruby
/usr/local/Library/brew.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/gdbm.rb
/usr/local/Library/brew.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/gmp.rb
/usr/local/Library/brew.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/libffi.rb
/usr/local/Library/Homebrew/build.rb (Formulary::FromPathLoader): loading /usr/local/Library/Formula/ruby.rb
/usr/local/Library/Homebrew/build.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/readline.rb
/usr/local/Library/Homebrew/build.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/gdbm.rb
/usr/local/Library/Homebrew/build.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/gmp.rb
/usr/local/Library/Homebrew/build.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/libffi.rb
/usr/local/Library/Homebrew/build.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/libyaml.rb
/usr/local/Library/Homebrew/build.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/openssl.rb
/usr/local/Library/Homebrew/build.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/pkg-config.rb
/usr/local/Library/Homebrew/build.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/makedepend.rb
==> Downloading http://cache.ruby-lang.org/pub/ruby/2.1/ruby-2.1.3.tar.bz2
Already downloaded: /Library/Caches/Homebrew/ruby-2.1.3.tar.bz2
==> ./configure --prefix=/usr/local/Cellar/ruby/2.1.3 --enable-shared --disable-silent-rules --with-sitedir=/usr/local/lib/ruby/site_ruby --with-vendordir=/us
==> make
error: unable to open output file '/dev/fd/8': ''
1 error generated.
dtrace: failed to compile script probes.d: Preprocessor failed to process input program
make: *** [probes.h] Error 1
make: *** Waiting for unfinished jobs....
/usr/local/Library/Homebrew/debrew.rb:10:in `raise'
BuildError: Failed executing: make 
1. raise
2. ignore
3. backtrace
4. shell
Choose an action: 3
/usr/local/Library/Homebrew/debrew.rb:10:in `raise'
/usr/local/Library/Homebrew/formula.rb:562:in `system'
/usr/local/Library/Formula/ruby.rb:67:in `install'
/usr/local/Library/Homebrew/debrew.rb:21:in `block in install'
/usr/local/Library/Homebrew/debrew.rb:105:in `debrew'
/usr/local/Library/Homebrew/debrew.rb:21:in `install'
/usr/local/Library/Homebrew/build.rb:137:in `block in install'
/usr/local/Library/Homebrew/formula.rb:268:in `block in brew'
/usr/local/Library/Homebrew/formula.rb:600:in `block in stage'
/usr/local/Library/Homebrew/resource.rb:66:in `block in unpack'
/usr/local/Library/Homebrew/extend/fileutils.rb:21:in `mktemp'
/usr/local/Library/Homebrew/resource.rb:63:in `unpack'
/usr/local/Library/Homebrew/resource.rb:56:in `stage'
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/forwardable.rb:171:in `stage'
/usr/local/Library/Homebrew/formula.rb:598:in `stage'
/usr/local/Library/Homebrew/formula.rb:263:in `brew'
/usr/local/Library/Homebrew/build.rb:117:in `install'
/usr/local/Library/Homebrew/build.rb:186:in `<main>'
@smarek
Copy link
Contributor Author

smarek commented Oct 3, 2014

More verbose info

brew install ruby --with-doc --with-fdbm --with-gmp --with-libffi --with-tcltk -d -v
/usr/local/Library/brew.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/ruby.rb
/usr/local/Library/brew.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/pkg-config.rb
/usr/local/Library/brew.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/readline.rb
/usr/local/Library/brew.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/gmp.rb
/usr/local/Library/brew.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/libffi.rb
/usr/local/Library/brew.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/libyaml.rb
/usr/local/Library/brew.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/openssl.rb
/usr/local/Library/brew.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/makedepend.rb
/usr/local/Library/Homebrew/build.rb (Formulary::FromPathLoader): loading /usr/local/Library/Formula/ruby.rb
/usr/local/Library/Homebrew/build.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/readline.rb
/usr/local/Library/Homebrew/build.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/gmp.rb
/usr/local/Library/Homebrew/build.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/libffi.rb
/usr/local/Library/Homebrew/build.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/libyaml.rb
/usr/local/Library/Homebrew/build.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/openssl.rb
/usr/local/Library/Homebrew/build.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/pkg-config.rb
/usr/local/Library/Homebrew/build.rb (Formulary::StandardLoader): loading /usr/local/Library/Formula/makedepend.rb
==> Downloading http://cache.ruby-lang.org/pub/ruby/2.1/ruby-2.1.3.tar.bz2
Already downloaded: /Library/Caches/Homebrew/ruby-2.1.3.tar.bz2
==> Verifying ruby-2.1.3.tar.bz2 checksum
tar xf /Library/Caches/Homebrew/ruby-2.1.3.tar.bz2
==> ./configure --prefix=/usr/local/Cellar/ruby/2.1.3 --enable-shared --disable-silent-rules --with-sitedir=/usr/local/lib/ruby/site_ruby --with-vendordir=/usr/local/lib/ruby/vendor_ruby --with-opt-dir=/usr/local/opt/libyaml:/usr/local/opt/openssl:/usr/local/opt/readline:/usr/local/opt/gmp:/usr/local/opt/libffi
checking build system type... x86_64-apple-darwin13.4.0
checking host system type... x86_64-apple-darwin13.4.0
checking target system type... x86_64-apple-darwin13.4.0
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether clang accepts -g... yes
checking for clang option to accept ISO C89... none needed
checking whether we are using the GNU C++ compiler... yes
checking whether clang++ accepts -g... yes
checking how to run the C preprocessor... clang -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking whether clang needs -traditional... no
checking for ld... ld
checking whether the linker is GNU ld... no
checking whether clang -E accepts -o... yes
checking for real target cpu... x86_64
checking for ranlib... ranlib
checking for ar... ar
checking for as... as
checking for objdump... no
checking for gobjdump... no
checking for objcopy... no
checking for gobjcopy... no
checking for nm... nm
checking whether ln -s works... yes
checking whether make sets $(MAKE)... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking for a thread-safe mkdir -p...  -d
use 'mkdir -p' as MKDIR_P
checking for dtrace... dtrace
checking for dot... no
checking for doxygen... no
checking for pkg-config... pkg-config
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 cd using physical directory... cd -P
checking whether CFLAGS is valid... yes
checking whether LDFLAGS is valid... yes
checking whether -Wno-unused-parameter is accepted as CFLAGS... yes
checking whether -Wno-parentheses is accepted as CFLAGS... yes
checking whether -Wno-long-long is accepted as CFLAGS... yes
checking whether -Wno-missing-field-initializers is accepted as CFLAGS... yes
checking whether -Wunused-variable is accepted as CFLAGS... yes
checking whether -Wpointer-arith is accepted as CFLAGS... yes
checking whether -Wwrite-strings is accepted as CFLAGS... yes
checking whether -Wdeclaration-after-statement is accepted as CFLAGS... yes
checking whether -Wshorten-64-to-32 is accepted as CFLAGS... yes
checking whether -Wimplicit-function-declaration is accepted as CFLAGS... yes
checking whether -Wdivision-by-zero is accepted as CFLAGS... yes
checking whether -Wextra-tokens is accepted as CFLAGS... yes
checking whether -Wall -Wextra is accepted as CFLAGS... yes
checking whether -Qunused-arguments is accepted as CFLAGS... yes
checking whether -D_FORTIFY_SOURCE=2 is accepted as CFLAGS... yes
checking whether -fstack-protector is accepted as CFLAGS... yes
checking whether -fstack-protector is accepted as LDFLAGS... yes
checking whether -fno-strict-overflow is accepted as CFLAGS... yes
checking whether -ggdb3 is accepted as CFLAGS... yes
checking whether -fvisibility=hidden is accepted as CFLAGS... yes
checking whether -fno-fast-math is accepted as CFLAGS... yes
checking whether Mac OS X 10.5 or later... yes
checking for broken crypt with 8bit chars... no
checking for codesign... codesign
checking for crt_externs.h... yes
checking for crypt in -lcrypt... (cached) no
checking for dlopen in -ldl... yes
checking for shl_load in -ldld... no
checking for shutdown in -lsocket... no
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking for stdbool.h that conforms to C99... yes
checking for _Bool... yes
checking for sys/wait.h that is POSIX.1 compatible... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking sys/file.h usability... yes
checking sys/file.h presence... yes
checking for sys/file.h... yes
checking sys/ioctl.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
checking sys/syscall.h usability... yes
checking sys/syscall.h presence... yes
checking for sys/syscall.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking sys/fcntl.h usability... yes
checking sys/fcntl.h presence... yes
checking for sys/fcntl.h... yes
checking sys/select.h usability... yes
checking sys/select.h presence... yes
checking for sys/select.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.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 syscall.h usability... no
checking syscall.h presence... no
checking for syscall.h... no
checking pwd.h usability... yes
checking pwd.h presence... yes
checking for pwd.h... yes
checking grp.h usability... yes
checking grp.h presence... yes
checking for grp.h... yes
checking a.out.h usability... no
checking a.out.h presence... no
checking for a.out.h... no
checking utime.h usability... yes
checking utime.h presence... yes
checking for utime.h... yes
checking direct.h usability... no
checking direct.h presence... no
checking for direct.h... no
.checking sys/resource.h usability... yes
checking sys/resource.h presence... yes
checking for sys/resource.h... yes
checking sys/mkdev.h usability... no
checking sys/mkdev.h presence... no
checking for sys/mkdev.h... no
checking sys/utime.h usability... no
checking sys/utime.h presence... no
checking for sys/utime.h... no
checking float.h usability... yes
checking float.h presence... yes
checking for float.h... yes
checking ieeefp.h usability... no
checking ieeefp.h presence... no
checking for ieeefp.h... no
checking for ucontext.h... (cached) no
checking intrinsics.h usability... no
checking intrinsics.h presence... no
checking for intrinsics.h... no
checking langinfo.h usability... yes
checking langinfo.h presence... yes
checking for langinfo.h... yes
checking locale.h usability... yes
checking locale.h presence... yes
checking for locale.h... yes
checking sys/sendfile.h usability... no
checking sys/sendfile.h presence... no
checking for sys/sendfile.h... no
checking time.h usability... yes
checking time.h presence... yes
checking for time.h... yes
checking net/socket.h usability... no
checking net/socket.h presence... no
checking for net/socket.h... no
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking process.h usability... no
checking process.h presence... no
checking for process.h... no
checking sys/prctl.h usability... no
checking sys/prctl.h presence... no
checking for sys/prctl.h... no
checking atomic.h usability... no
checking atomic.h presence... no
checking for atomic.h... no
checking malloc.h usability... no
checking malloc.h presence... no
checking for malloc.h... no
checking malloc_np.h usability... no
checking malloc_np.h presence... no
checking for malloc_np.h... no
checking malloc/malloc.h usability... yes
checking malloc/malloc.h presence... yes
checking for malloc/malloc.h... yes
checking setjmpex.h usability... no
checking setjmpex.h presence... no
checking for setjmpex.h... no
checking gmp.h usability... yes
checking gmp.h presence... yes
checking for gmp.h... yes
checking for __gmpz_init in -lgmp... yes
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking whether byte ordering is bigendian... no
checking for an ANSI C-conforming const... yes
checking whether char is unsigned... no
checking for inline... inline
checking for working volatile... yes
checking for long long... yes
checking for off_t... yes
checking char bit... 8
checking size of int... 4
checking size of short... 2
checking size of long... 8
checking size of long long... 8
checking size of __int64... 0
checking size of __int128... 16
checking size of off_t... 8
checking size of void*... 8
checking size of float... 4
checking size of double... 8
checking size of time_t... 8
checking size of clock_t... 8
checking for printf prefix for long long... ll
checking for pid_t... yes
checking for convertible type of pid_t... INT
checking for uid_t... yes
checking for convertible type of uid_t... UINT
checking for gid_t... yes
checking for convertible type of gid_t... UINT
checking for time_t... yes
checking for convertible type of time_t... LONG
checking for dev_t... yes
checking for convertible type of dev_t... INT
checking for mode_t... yes
checking for convertible type of mode_t... UINT
checking for rlim_t... yes
checking for convertible type of rlim_t... ULL
checking for off_t... (cached) yes
checking for convertible type of off_t... LL
checking for clockid_t... no
checking for convertible type of clockid_t... INT
checking for prototypes... yes
checking token paste string... ansi
checking stringization... #expr
checking string literal concatenation... yes
checking for variable length prototypes and stdarg.h... yes
checking for variable length macro... yes
checking for noreturn function attribute... __attribute__ ((noreturn)) x
checking for deprecated function attribute... __attribute__ ((deprecated)) x
checking for noinline function attribute... __attribute__ ((noinline)) x
checking for stdcall function attribute... x
checking for cdecl function attribute... __attribute__ ((cdecl)) x
checking for fastcall function attribute... x
checking for function alias... no
checking for __atomic builtins... yes
checking for __sync builtins... yes
checking for __builtin_unreachable... yes
checking for exported function attribute... __attribute__ ((visibility("default")))
checking for function name string predefined identifier... __func__
checking whether sys_nerr is declared... yes
checking whether getenv is declared... yes
checking for size_t... yes
checking size of size_t... 8
checking size of ptrdiff_t... 8
checking for printf prefix for size_t... z
checking for printf prefix for ptrdiff_t... t
checking for struct stat.st_blksize... yes
checking for struct stat.st_blocks... yes
checking for struct stat.st_rdev... yes
checking size of struct stat.st_size... SIZEOF_LONG
checking size of struct stat.st_blocks... SIZEOF_LONG
checking for struct stat.st_atim... no
checking for struct stat.st_atimespec... yes
checking for struct stat.st_atimensec... no
checking for struct stat.st_mtim... no
checking for struct stat.st_mtimespec... yes
checking for struct stat.st_mtimensec... no
checking for struct stat.st_ctim... no
checking for struct stat.st_ctimespec... yes
checking for struct stat.st_ctimensec... no
checking for struct timeval... yes
checking size of struct timeval.tv_sec... SIZEOF_TIME_T
checking for struct timespec... yes
checking for struct timezone... yes
checking for clockid_t... (cached) no
checking for fd_mask... yes
checking for int8_t... yes
checking size of int8_t... 1
checking for uint8_t... yes
checking size of uint8_t... 1
checking for int16_t... yes
checking size of int16_t... 2
checking for uint16_t... yes
checking size of uint16_t... 2
checking for int32_t... yes
checking size of int32_t... 4
checking for uint32_t... yes
checking size of uint32_t... 4
checking for int64_t... yes
checking size of int64_t... 8
checking for uint64_t... yes
checking size of uint64_t... 8
checking for int128_t... __int128
checking for uint128_t... unsigned __int128
checking for intptr_t... yes
checking size of intptr_t... 8
checking for uintptr_t... yes
checking size of uintptr_t... 8
checking for ssize_t... yes
checking size of ssize_t... 8
checking for stack end address... no
checking for uid_t in sys/types.h... (cached) yes
checking type of array argument to getgroups... (cached) gid_t
checking return type of signal handlers... void
checking for working alloca.h... yes
checking for alloca... yes
checking for dynamic size alloca... ok
checking for working memcmp... yes
checking for broken erfc of glibc-2.3.6 on IA64... no
checking for dup2... yes
checking for memmove... yes
checking for strerror... yes
checking for strchr... yes
checking for strstr... yes
checking for crypt... yes
checking for flock... yes
checking for isnan... yes
checking for finite... yes
checking for isinf... yes
checking for hypot... yes
checking for acosh... yes
checking for erf... yes
checking for tgamma... yes
checking for lgamma_r... yes
checking for cbrt... yes
checking for strlcpy... yes
checking for strlcat... yes
checking for ffs... yes
checking for setproctitle... no
checking sys/pstat.h usability... no
checking sys/pstat.h presence... no
checking for sys/pstat.h... no
checking for signbit... yes
checking for __syscall... yes
checking for _longjmp... yes
checking for _setjmp... yes
checking for _setjmpex... no
checking for chroot... yes
checking for chsize... no
checking for clock_gettime... no
checking for cosh... yes
checking for daemon... (cached) no
checking for dl_iterate_phdr... no
checking for dlopen... yes
checking for dup... yes
checking for dup3... no
checking for eaccess... no
checking for endgrent... yes
checking for fchmod... yes
checking for fchown... yes
checking for fcntl... yes
checking for fdatasync... (cached) no
checking for fmod... yes
checking for fork... yes
checking for fsync... yes
checking for ftruncate... yes
checking for ftruncate64... no
checking for getcwd... yes
checking for getgrnam_r... yes
checking for getgroups... yes
checking for getpgid... yes
checking for getpgrp... yes
checking for getpriority... yes
checking for getpwnam_r... yes
checking for getrlimit... yes
checking for getsid... yes
checking for gettimeofday... yes
checking for gmtime_r... yes
checking for initgroups... yes
checking for ioctl... yes
checking for isfinite... no
checking for issetugid... yes
checking for killpg... yes
checking for lchmod... yes
checking for lchown... yes
checking for link... yes
checking for llabs... yes
checking for lockf... yes
checking for log2... yes
checking for lstat... yes
checking for malloc_usable_size... no
checking for malloc_size... yes
checking for mblen... yes
checking for memalign... no
checking for memrchr... no
checking for mktime... yes
checking for pipe2... no
checking for poll... yes
checking for posix_fadvise... no
checking for posix_memalign... yes
checking for ppoll... no
checking for pread... yes
checking for readlink... yes
checking for round... yes
checking for seekdir... yes
checking for select_large_fdset... no
checking for sendfile... yes
checking for setegid... yes
checking for setenv... yes
checking for seteuid... yes
checking for setgid... yes
checking for setgroups... yes
checking for setpgid... yes
checking for setpgrp... yes
checking for setregid... yes
checking for setresgid... no
checking for setresuid... no
checking for setreuid... yes
checking for setrgid... yes
checking for setrlimit... yes
checking for setruid... yes
checking for setsid... yes
checking for setuid... yes
checking for shutdown... yes
checking for sigaction... yes
checking for sigaltstack... yes
checking for sigprocmask... yes
checking for sinh... yes
checking for spawnv... no
checking for symlink... yes
checking for syscall... yes
checking for sysconf... yes
checking for tanh... yes
checking for telldir... yes
checking for timegm... yes
checking for times... yes
checking for truncate... yes
checking for truncate64... no
checking for unsetenv... yes
checking for utimensat... no
checking for utimes... yes
checking for wait4... yes
checking for waitpid... yes
checking for __builtin_bswap16... yes
checking for __builtin_bswap32... yes
checking for __builtin_bswap64... yes
checking for __builtin_clz... yes
checking for __builtin_clzl... yes
checking for __builtin_clzll... yes
checking for __builtin_choose_expr... yes
checking for __builtin_types_compatible_p... yes
checking for clock_gettime in -lrt... no
checking for clock_getres... no
checking for unsetenv returns a value... yes
checking for sigsetjmp as a macro or function... yes
checking whether struct tm is in sys/time.h or time.h... time.h
checking for struct tm.tm_zone... yes
checking for struct tm.tm_gmtoff... yes
checking for external int daylight... yes
checking for external timezone... long
checking for external altzone... no
checking for timezone... yes
checking whether timezone requires zero arguments... yes
checking for negative time_t for gmtime(3)... yes
checking for localtime(3) overflow correctly... yes
checking whether right shift preserve sign bit... yes
checking read count field in FILE structures... _r
checking read buffer ptr field in FILE structures... _p
checking size of struct stat.st_ino... SIZEOF_LONG
checking whether _SC_CLK_TCK is supported... yes
checking stack growing direction on x86_64... -1
checking for pthread_kill in -lthr... no
checking for pthread_kill in -lpthread... yes
checking for pthread_np.h... no
checking for sched_yield... yes
checking for pthread_attr_setinheritsched... yes
checking for pthread_getattr_np... no
checking for pthread_attr_get_np... no
checking for pthread_attr_getstack... yes
checking for pthread_get_stackaddr_np... yes
checking for pthread_get_stacksize_np... yes
checking for thr_stksegment... no
checking for pthread_stackseg_np... no
checking for pthread_getthrds_np... no
checking for pthread_cond_init... yes
checking for pthread_condattr_setclock... no
checking for pthread_condattr_init... yes
checking for pthread_sigmask... yes
checking for pthread_setname_np... yes
checking for pthread_attr_init... yes
checking arguments of pthread_setname_np... (name)
checking if fork works with pthread... yes
checking whether ELF binaries are produced... no
checking whether OS depend dynamic link works... yes
checking execinfo.h usability... yes
checking execinfo.h presence... yes
checking for execinfo.h... yes
checking for backtrace in -lexecinfo... no
checking for backtrace... yes
checking for broken backtrace... yes
checking valgrind/memcheck.h usability... no
checking valgrind/memcheck.h presence... no
checking for valgrind/memcheck.h... no
checking for strip... strip
checking whether -Wl,--no-undefined is accepted as LDFLAGS... no
checking whether dtrace USDT is available... yes
checking whether dtrace USDT is available... (cached) yes
checking whether dtrace needs post processing... no
checking for __builtin_setjmp... no
checking for setjmp type... _setjmp
checking for prefix of external symbols... _
checking pthread.h usability... yes
checking pthread.h presence... yes
checking for pthread.h... yes
checking if make is GNU make... yes
checking for memmem... yes
checking for broken memmem... yes
checking for nroff... /usr/bin/nroff
.ext/include/x86_64-darwin13.0/ruby/config.h updated
ruby library version = 2.1.0
configure: creating ./config.status
config.status: creating GNUmakefile
config.status: creating Makefile
config.status: creating ruby-2.1.pc
==> make
    CC = clang
    LD = ld
    LDSHARED = clang -dynamiclib
    CFLAGS = -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wshorten-64-to-32 -Wimplicit-function-declaration -Wdivision-by-zero -Wextra-tokens   -fno-common -pipe 
    XCFLAGS = -D_FORTIFY_SOURCE=2 -fstack-protector -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT
    CPPFLAGS = -I/usr/local/opt/libyaml/include -I/usr/local/opt/openssl/include -I/usr/local/opt/readline/include -I/usr/local/opt/gmp/include -I/usr/local/opt/libffi/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT   -I. -I.ext/include/x86_64-darwin13.0 -I./include -I.
    DLDFLAGS = -Wl,-undefined,dynamic_lookup -Wl,-multiply_defined,suppress -L/usr/local/opt/libyaml/lib -L/usr/local/opt/openssl/lib -L/usr/local/opt/readline/lib -L/usr/local/opt/gmp/lib -L/usr/local/opt/libffi/lib  -install_name /usr/local/Cellar/ruby/2.1.3/lib/libruby.2.1.0.dylib -current_version 2.1.0 -compatibility_version 2.1.0  -fstack-protector -Wl,-u,_objc_msgSend -framework CoreFoundation  -fstack-protector -Wl,-u,_objc_msgSend -framework CoreFoundation  
    SOLIBS = -lpthread -lgmp -ldl -lobjc 
compiling main.c
compiling dmydln.c
compiling miniinit.c
Apple LLVM version 5.1 (clang-503.0.40) (based on LLVM 3.4svn)
Target: x86_64-apple-darwin13.4.0
Thread model: posix
compiling miniprelude.c
translating probes probes.d
compiling bignum.c
compiling class.c
error: unable to open output file '/dev/fd/8': ''
1 error generated.
dtrace: failed to compile script probes.d: Preprocessor failed to process input program
make: *** [probes.h] Error 1
make: *** Waiting for unfinished jobs....
/usr/local/Library/Homebrew/debrew.rb:10:in `raise'

@smarek
Copy link
Contributor Author

smarek commented Oct 3, 2014

brew doctor comes out clean
brew --config as follows:

HOMEBREW_VERSION: 0.9.5
ORIGIN: https://github.com/Homebrew/homebrew
HEAD: cd8a322fceda57ff8788e350416fdf6b48b3d426
HOMEBREW_PREFIX: /usr/local
HOMEBREW_CELLAR: /usr/local/Cellar
CPU: quad-core 64-bit ivybridge
OS X: 10.9.5-x86_64
Xcode: 6.0.1
CLT: 6.0.0.0.1.1410400753
GCC-4.2: build 5666
Clang: 6.0 build 600
X11: 2.7.7 => /opt/X11
System Ruby: 2.0.0-481
Perl: /usr/bin/perl
Python: /usr/local/bin/python => /usr/local/Cellar/python/2.7.8_1/Frameworks/Python.framework/Versions/2.7/bin/python2.7
Ruby: /usr/bin/ruby

@jacknagel
Copy link
Contributor

Please follow the troubleshooting instructions rather than paste directly into the issue: https://github.com/Homebrew/homebrew/wiki/troubleshooting

@jacknagel
Copy link
Contributor

ping?

@smarek
Copy link
Contributor Author

smarek commented Oct 9, 2014

@jacknagel sorry for delay, brew doctor output below

brew doctor
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry and just ignore them. Thanks!

Warning: Putting non-prefixed findutils in your path can cause python builds to fail.

Warning: Unbrewed dylibs were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected dylibs:
    /usr/local/lib/libcompress42.dylib
    /usr/local/lib/libtinfl.dylib

Warning: You have unlinked kegs in your Cellar
Leaving kegs unlinked can lead to build-trouble and cause brews that depend on
those kegs to fail to run properly once built. Run `brew link` on these:

    gcc
    scrollkeeper

Warning: Some installed formula are missing dependencies.
You should `brew install` the missing dependencies:

    brew install mysql

Run `brew missing` for more details.

and brew missing (which is caused by usage of mariadb instead of mysql)

brew missing
binwalk: mysql
kdiff3: mysql
pyside: mysql
qt: mysql
shiboken: mysql

@smarek
Copy link
Contributor Author

smarek commented Oct 9, 2014

Also to update the issue, installation (without upgrade) fails in the same manner

@smarek smarek changed the title Ruby upgrade to 2.1.3 crashes Ruby 2.1.3 failed to build on OSX 10.9 Oct 9, 2014
@jacknagel
Copy link
Contributor

What I'm really looking for is the full build logs (brew gist-logs ruby).

@smarek
Copy link
Contributor Author

smarek commented Oct 9, 2014

I obviously cannot read simple instructions, sorry
Here you go: https://gist.github.com/smarek/edef85e4936d335b17dc

@smarek
Copy link
Contributor Author

smarek commented Oct 17, 2014

@jacknagel any news please? would love to have custom configured ruby installation, but it isn't possible so far. Thanks

@jacknagel
Copy link
Contributor

I've never seen this particular failure before so I don't know what to suggest. Try installing a more minimal configuration to see if you can narrow it down to a particular option. For example, does plain brew install ruby --build-from-source fail in the same way?

@smarek
Copy link
Contributor Author

smarek commented Nov 17, 2014

Yes, it does exactly the same, I've just tried with 2.1.5, it's still failing (only /dev/fd/8 changed to /dev/fd/7, however I'm not sure if that isn't dynamically accessed)

@smarek
Copy link
Contributor Author

smarek commented Nov 17, 2014

I've also tried with latest rbenv, which failed in the same manner

> rbenv install 2.1.5
Downloading ruby-2.1.5.tar.gz...
-> http://dqw8nmjcqpjn7.cloudfront.net/4305cc6ceb094df55210d83548dcbeb5117d74eea25196a9b14fa268d354b100
Installing ruby-2.1.5...

BUILD FAILED (OS X 10.9.5 using ruby-build 20141113)

Inspect or clean up the working tree at /var/folders/3k/bcc5bhj909sg8m7p0h6fgmcr0000gn/T/ruby-build.20141117160722.46880
Results logged to /var/folders/3k/bcc5bhj909sg8m7p0h6fgmcr0000gn/T/ruby-build.20141117160722.46880.log

Last 10 log lines:
compiling miniprelude.c
translating probes probes.d
compiling bignum.c
compiling class.c
compiling compar.c
error: unable to open output file '/dev/fd/9': ''
1 error generated.
dtrace: failed to compile script probes.d: Preprocessor failed to process input program
make: *** [probes.h] Error 1
make: *** Waiting for unfinished jobs....

@smarek
Copy link
Contributor Author

smarek commented Nov 17, 2014

Well I have found a solution, see here: https://github.com/clevertechru/tips/wiki/osx-rails-solutions

Switch --disable-dtrace must be given to compile process.
I've patched Formula/ruby.rb installer on line 54 (commenting out the condition)

 args << "--disable-dtrace" #unless MacOS::CLT.installed?

What does the condition even mean? Can you explain please?

@jacknagel
Copy link
Contributor

What does xcode-select -p show?

@smarek
Copy link
Contributor Author

smarek commented Nov 17, 2014

it's /Applications/Xcode.app/Contents/Developer

@jacknagel
Copy link
Contributor

If you do the following:

sudo xcode-select -switch /Library/Developer/CommandLineTools

does the error still occur?

@smarek
Copy link
Contributor Author

smarek commented Nov 17, 2014

Yes, the error is the same even after switching.

@jacknagel
Copy link
Contributor

Huh. dtrace support is supposed to work if the CLT is installed. Not sure what else to suggest.

@sparr
Copy link

sparr commented Jan 7, 2015

Commenting to mention this problem is still extant with 2.1.2 and 2.2.0

@smarek
Copy link
Contributor Author

smarek commented Jan 8, 2015

Yes, I've had to change the sources again on upgrade. Thanks for head up @sparr

@deviantintegral
Copy link
Contributor

For some other work I had temporarily set the suid bit on /usr/sbin/dtrace. Removing that so the default permissions of -rwxr-xr-x fixed this for me. Another easy way to do the same thing would be to repair disk permissions from Disk Utility.

@smarek
Copy link
Contributor Author

smarek commented Jan 13, 2015

@deviantintegral thank you for hint, I have also SUID set on dtrace, however Disk Utility says Warning: SUID file “usr/sbin/dtrace” has been modified and will not be repaired., which is really strange.

Could Homebrew somehow modify the file?

@smarek
Copy link
Contributor Author

smarek commented Jan 13, 2015

However I can confirm, this issue is cause by SUID bit on /usr/sbin/dtrace, removing it solves the problem.

sudo chmod -s /usr/sbin/dtrace

@smarek smarek closed this as completed Jan 13, 2015
@jeffshantz
Copy link

@deviantintegral Thank you! I, too, had set the suid bit temporarily on dtrace and was having issues compiling 2.1.x and 2.2.0 with rvm. Works just fine now.

@bruno-
Copy link
Contributor

bruno- commented May 30, 2015

Hi,
I also had the issue of installing ruby 2.2.x (via ruby build) failing with the message error: unable to open output file '/dev/fd/9'. I was playing with dtrace recently and had the SUID bit set on.

This line by @smarek helped resolve the issue:

sudo chmod -s /usr/sbin/dtrace

Thanks everyone!

@Homebrew Homebrew locked and limited conversation to collaborators Feb 17, 2016
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

7 participants