Question

I am trying to install breakpoint on my macbook but it fails to compile. The full output is below. I am new to Mac and am not sure what I might have done wrong. My Windows workstation had no trouble this evening.

Thank you!

Aarons-MacBook-Pro:~ aarongreenlee$ sudo gem install breakpoint
Password:
Building native extensions.  This could take a while...
ERROR:  Error installing breakpoint:
    ERROR: Failed to build gem native extension.

    /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby extconf.rb
checking for ffi.h... no
checking for ffi.h in /usr/local/include,/usr/include/ffi... yes
checking for ffi_call() in -lffi... yes
checking for ffi_prep_closure()... yes
checking for ffi_raw_call()... no
checking for rb_thread_blocking_region()... yes
checking for rb_thread_call_with_gvl()... yes
checking for rb_thread_call_without_gvl()... yes
checking for ffi_prep_cif_var()... no
creating extconf.h
creating Makefile

make "DESTDIR="
compiling AbstractMemory.c
compiling ArrayType.c
compiling Buffer.c
compiling Call.c
Call.c:303:5: warning: implicit declaration of function 'rb_thread_call_without_gvl' is invalid in C99 [-Wimplicit-function-declaration]
    rbffi_thread_blocking_region(call_blocking_function, data, (void *) -1, NULL);
    ^
./Thread.h:78:39: note: expanded from macro 'rbffi_thread_blocking_region'
# define rbffi_thread_blocking_region rb_thread_call_without_gvl
                                      ^
1 warning generated.
compiling ClosurePool.c
compiling DataConverter.c
DataConverter.c:43:1: warning: control may reach end of non-void function [-Wreturn-type]
}
^
1 warning generated.
compiling DynamicLibrary.c
compiling ffi.c
compiling Function.c
Function.c:479:33: warning: incompatible pointer types passing 'VALUE (void *)' to parameter of type 'void *(*)(void *)' [-Wincompatible-pointer-types]
        rb_thread_call_with_gvl(callback_with_gvl, &cb);
                                ^~~~~~~~~~~~~~~~~
Function.c:102:46: note: passing argument to parameter 'func' here
extern void *rb_thread_call_with_gvl(void *(*func)(void *), void *data1);
                                             ^
Function.c:563:9: warning: implicit declaration of function 'rb_thread_call_without_gvl' is invalid in C99 [-Wimplicit-function-declaration]
        rb_thread_call_without_gvl(async_cb_wait, &w, async_cb_stop, &w);
        ^
Function.c:738:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
3 warnings generated.
compiling FunctionInfo.c
compiling LastError.c
compiling LongDouble.c
compiling MappedType.c
compiling MemoryPointer.c
compiling MethodHandle.c
compiling Platform.c
compiling Pointer.c
compiling Struct.c
compiling StructByReference.c
compiling StructByValue.c
compiling StructLayout.c
compiling Thread.c
compiling Type.c
compiling Types.c
compiling Variadic.c
linking shared-object ffi_c.bundle
clang: error: unknown argument: '-multiply_definedsuppress' [-Wunused-command-line-argument-hard-error-in-future]
clang: note: this will be a hard error (cannot be downgraded to a warning) in the future
make: *** [ffi_c.bundle] Error 1


Gem files will remain installed in /Library/Ruby/Gems/2.0.0/gems/ffi-1.9.3 for inspection.
Results logged to /Library/Ruby/Gems/2.0.0/gems/ffi-1.9.3/ext/ffi_c/gem_make.out
Aarons-MacBook-Pro:~ aarongreenlee$ ls -l
total 38632
-rw-r--r--@  1 aarongreenlee  staff        11 Mar 14 09:22 22650.txt
-rw-r--r--@  1 aarongreenlee  staff  19771836 Mar 18 10:02 22659.mp4
drwxr--r--   3 aarongreenlee  staff       102 Feb 22 10:45 ABBYY
drwxr-xr-x   2 aarongreenlee  staff        68 Mar 23 14:12 Applications
drwx------@  3 aarongreenlee  staff       102 Nov 18 22:12 Creative Cloud Files
drwx------+ 13 aarongreenlee  staff       442 Mar 25 22:07 Desktop
drwx------+ 27 aarongreenlee  staff       918 Mar 21 14:16 Documents
drwx------+ 55 aarongreenlee  staff      1870 Mar 19 22:48 Downloads
drwx------@ 31 aarongreenlee  staff      1054 Mar  4 09:36 Google Drive
drwx------@ 53 aarongreenlee  staff      1802 Jan  6 23:15 Library
drwx------+  8 aarongreenlee  staff       272 Mar 22 22:33 Movies
drwx------+  4 aarongreenlee  staff       136 Nov 14 10:10 Music
drwx------+  5 aarongreenlee  staff       170 Mar 19 18:07 Pictures
drwxr-xr-x+  5 aarongreenlee  staff       170 Nov  1 22:35 Public
drwxr-xr-x   5 root           staff       170 Nov 11 18:43 logs
drwxr-xr-x   3 aarongreenlee  staff       102 Jan 12 14:50 pkg
drwxr-xr-x   3 aarongreenlee  staff       102 Jan 12 14:50 src
drwxr-xr-x   2 root           staff        68 Feb  2 12:11 tmp
Aarons-MacBook-Pro:~ aarongreenlee$ cd ~/Documents/Development/golang/src/git.knowboth.com/errorchomp/
Aarons-MacBook-Pro:errorchomp aarongreenlee$ compass compile
LoadError on line ["45"] of /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb: cannot load such file -- breakpoint
Run with --trace to see the full backtrace
Aarons-MacBook-Pro:errorchomp aarongreenlee$ exit
logout
Était-ce utile?

La solution

Apple recently pushed a breaking change to Xcode (Xcode 5.1) that, if you're using the version of Ruby that comes with your computer, will make it impossible to install any Ruby gems that need native extensions. While Breakpoint doesn't need any, Compass requires the JSON gem, which does.

There is a Compass Issue to track progress on the removal of direct dependence on the JSON gem and instead require multi_json exclusively.

In a Breakpoint Issue identical to this problem, I describe in detail what's going on and provide options on how to solve the issue.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top