programming-nu / nu

Nu is an interpreted Lisp that builds on the Objective-C runtime and Foundation framework.
http://programming-nu.github.io
Apache License 2.0
2.15k stars 236 forks source link

`brew install nu` fails #76

Closed girvo closed 7 years ago

girvo commented 10 years ago

Hi there, love the idea of Nu, can't wait to try it out!

I don't know whether this should be reported here or over in Homebrew, but I thought I'd let you know.

brew install nu fails, with this as the error log:

==> Downloading https://github.com/timburks/nu/archive/v2.1.1.tar.gz
Already downloaded: /Library/Caches/Homebrew/nu-2.1.1.tar.gz
==> Verifying nu-2.1.1.tar.gz checksum
tar xf /Library/Caches/Homebrew/nu-2.1.1.tar.gz
==> make
/usr/bin/clang -g -Wall -DMININUSH  -DMACOSX -DDARWIN    -fobjc-exceptions -I/usr/include/ffi -I./include -c objc/Nu.m -o objc/Nu.o
/usr/bin/clang -g -Wall -DMININUSH  -DMACOSX -DDARWIN    -fobjc-exceptions -I/usr/include/ffi -I./include -c main/main.m -o main/main.o
objc/Nu.m:5934:12: warning: incompatible pointer types returning 'NSObject<NSCopying,NSSecureCoding,NSCoding,NSObject> *' from a function with result type 'NSString *' [-Wincompatible-pointer-types]
    return m ? [NSString stringWithCString:(sel_getName(method_getName(m))) encoding:NSUTF8StringEncoding] : [NSNull null];
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objc/Nu.m:11246:22: warning: incompatible pointer types assigning to 'NSArray *' from 'NSSet *' [-Wincompatible-pointer-types]
    voidHTMLElements = [[NSSet setWithObjects:
                     ^ ~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/objc/NSObject.h:35:1: note: instance method 'retain' is assumed to return an instance of its receiver type ('NSSet *')
- (id)retain OBJC_ARC_UNAVAILABLE;
^
2 warnings generated.
/usr/bin/clang  objc/Nu.o  main/main.o  -g -Wall -DMININUSH  -DMACOSX -DDARWIN    -o mininush -framework Cocoa -lobjc -lreadline  -L/usr/lib -lffi
==> ./mininush tools/nuke
error: garbage collection is no longer supported
Using Nukefile with target default.
nuke: mkdir 'Nu.framework'
nuke: mkdir 'Nu.framework/Versions'
nuke: mkdir 'Nu.framework/Versions/A'
nuke: mkdir 'Nu.framework/Versions/A/Resources'
nuke: cd Nu.framework/Versions; ln -sf A Current
nuke: cd Nu.framework; ln -sf Versions/Current/Headers Headers
nuke: cd Nu.framework; ln -sf Versions/Current/Resources Resources
nuke: cd Nu.framework; ln -sf Versions/Current/Nu Nu
nuke: mkdir 'Nu.framework/Versions/A/Resources/English.lproj'
nuke: cp -R 'share/nu/resources/English.lproj/MainMenu.nib' 'Nu.framework/Versions/A/Resources/English.lproj/'
nuke: cp 'nu/menu.nu' 'Nu.framework/Versions/A/Resources/menu.nu'
nuke: cp 'nu/coredata.nu' 'Nu.framework/Versions/A/Resources/coredata.nu'
nuke: cp 'nu/match.nu' 'Nu.framework/Versions/A/Resources/match.nu'
nuke: cp 'nu/beautify.nu' 'Nu.framework/Versions/A/Resources/beautify.nu'
nuke: cp 'nu/cocoa.nu' 'Nu.framework/Versions/A/Resources/cocoa.nu'
nuke: cp 'nu/generate.nu' 'Nu.framework/Versions/A/Resources/generate.nu'
nuke: cp 'nu/bridgesupport.nu' 'Nu.framework/Versions/A/Resources/bridgesupport.nu'
nuke: cp 'nu/nu.nu' 'Nu.framework/Versions/A/Resources/nu.nu'
nuke: cp 'nu/math.nu' 'Nu.framework/Versions/A/Resources/math.nu'
nuke: cp 'nu/console.nu' 'Nu.framework/Versions/A/Resources/console.nu'
nuke: cp 'nu/help.nu' 'Nu.framework/Versions/A/Resources/help.nu'
nuke: cp 'nu/doc.nu' 'Nu.framework/Versions/A/Resources/doc.nu'
nuke: cp 'nu/test.nu' 'Nu.framework/Versions/A/Resources/test.nu'
nuke: cp 'nu/cblocks.nu' 'Nu.framework/Versions/A/Resources/cblocks.nu'
nuke: cp 'nu/fscript.nu' 'Nu.framework/Versions/A/Resources/fscript.nu'
nuke: cp 'nu/nibtools.nu' 'Nu.framework/Versions/A/Resources/nibtools.nu'
nuke: cp 'nu/template.nu' 'Nu.framework/Versions/A/Resources/template.nu'
nuke: mkdir 'Nu.framework/Versions/A/Headers'
nuke: /usr/bin/clang -Wall -g -fPIC -O2 -DMACOSX   -DHAVE_CONFIG_H -fobjc-exceptions -fobjc-gc -arch x86_64  -I/usr/include  -I./include  -I./include/Nu  -I/usr/include/ffi -c -o build/x86_64/Nu.o objc/Nu.m
nuke: terminating on command error (return code 1)
==> Configuration
HOMEBREW_VERSION: 0.9.5
HEAD: 324ae85323666a8fdc6d61a7bf76b9fd4307dbfc
CPU: quad-core 64-bit haswell
OS X: 10.9.3-x86_64
Xcode: 5.1.1
CLT: 5.1.0.0.1.1396320587
X11: 2.7.5 => /opt/X11
==> ENV
HOMEBREW_CC: clang
HOMEBREW_CXX: clang++
MAKEFLAGS: -j4
CMAKE_PREFIX_PATH: /usr/local
CMAKE_INCLUDE_PATH: /usr/include/libxml2:/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers
CMAKE_LIBRARY_PATH: /System/Library/Frameworks/OpenGL.framework/Versions/Current/Libraries
PKG_CONFIG_PATH: /usr/local/opt/pcre/lib/pkgconfig
PKG_CONFIG_LIBDIR: /usr/lib/pkgconfig:/usr/local/Library/ENV/pkgconfig/10.9
ACLOCAL_PATH: /usr/local/share/aclocal
PATH: /usr/local/Library/ENV/4.3:/usr/local/opt/pcre/bin:/usr/bin:/bin:/usr/sbin:/sbin

Logs:
     /Users/josh/Library/Logs/Homebrew/nu/01.make
     /Users/josh/Library/Logs/Homebrew/nu/02.mininush

Am I doing something wrong, or missing something?

timburks commented 10 years ago

Hi Josh,

I don't know who maintains the homebrew port (and I don't), but it seems to be built to use garbage collection, which is out of the mainstream for Nu - Nu is designed to work with ARC and manual retain and release (GC support was submitted later in a patch).

Have you tried building and running directly from source?

Tim

On Sun, Jul 6, 2014 at 10:50 PM, Josh Girvin notifications@github.com wrote:

Hi there, love the idea of Nu, can't wait to try it out!

I don't know whether this should be reported here or over in Homebrew, but I thought I'd let you know.

brew install nu fails, with this as the error log:

==> Downloading https://github.com/timburks/nu/archive/v2.1.1.tar.gz Already downloaded: /Library/Caches/Homebrew/nu-2.1.1.tar.gz==> Verifying nu-2.1.1.tar.gz checksum tar xf /Library/Caches/Homebrew/nu-2.1.1.tar.gz==> make /usr/bin/clang -g -Wall -DMININUSH -DMACOSX -DDARWIN -fobjc-exceptions -I/usr/include/ffi -I./include -c objc/Nu.m -o objc/Nu.o /usr/bin/clang -g -Wall -DMININUSH -DMACOSX -DDARWIN -fobjc-exceptions -I/usr/include/ffi -I./include -c main/main.m -o main/main.o objc/Nu.m:5934:12: warning: incompatible pointer types returning 'NSObject<NSCopying,NSSecureCoding,NSCoding,NSObject> ' from a function with result type 'NSString ' [-Wincompatible-pointer-types] return m ? [NSString stringWithCString:(sel_getName(method_getName(m))) encoding:NSUTF8StringEncoding] : [NSNull null]; ^~~~~~~~~~~~~~~~~~~~~~~ objc/Nu.m:11246:22: warning: incompatible pointer types assigning to 'NSArray ' from 'NSSet ' [-Wincompatible-pointer-types] voidHTMLElements = [[NSSet setWithObjects: ^ ~~~~~~~ /usr/include/objc/NSObject.h:35:1: note: instance method 'retain' is assumed to return an instance of its receiver type ('NSSet *')

  • (id)retain OBJC_ARC_UNAVAILABLE; ^2 warnings generated. /usr/bin/clang objc/Nu.o main/main.o -g -Wall -DMININUSH -DMACOSX -DDARWIN -o mininush -framework Cocoa -lobjc -lreadline -L/usr/lib -lffi==> ./mininush tools/nuke error: garbage collection is no longer supported Using Nukefile with target default. nuke: mkdir 'Nu.framework' nuke: mkdir 'Nu.framework/Versions' nuke: mkdir 'Nu.framework/Versions/A' nuke: mkdir 'Nu.framework/Versions/A/Resources' nuke: cd Nu.framework/Versions; ln -sf A Current nuke: cd Nu.framework; ln -sf Versions/Current/Headers Headers nuke: cd Nu.framework; ln -sf Versions/Current/Resources Resources nuke: cd Nu.framework; ln -sf Versions/Current/Nu Nu nuke: mkdir 'Nu.framework/Versions/A/Resources/English.lproj' nuke: cp -R 'share/nu/resources/English.lproj/MainMenu.nib' 'Nu.framework/Versions/A/Resources/English.lproj/' nuke: cp 'nu/menu.nu' 'Nu.framework/Versions/A/Resources/menu.nu' nuke: cp 'nu/coredata.nu' 'Nu.framework/Versions/A/Resources/coredata.nu' nuke: cp 'nu/match.nu' 'Nu.framework/Versions/A/Resources/match.nu' nuke: cp 'nu/beautify.nu' 'Nu.framework/Versions/A/Resources/beautify.nu' nuke: cp 'nu/cocoa.nu' 'Nu.framework/Versions/A/Resources/cocoa.nu' nuke: cp 'nu/generate.nu' 'Nu.framework/Versions/A/Resources/generate.nu' nuke: cp 'nu/bridgesupport.nu' 'Nu.framework/Versions/A/Resources/bridgesupport.nu' nuke: cp 'nu/nu.nu' 'Nu.framework/Versions/A/Resources/nu.nu' nuke: cp 'nu/math.nu' 'Nu.framework/Versions/A/Resources/math.nu' nuke: cp 'nu/console.nu' 'Nu.framework/Versions/A/Resources/console.nu' nuke: cp 'nu/help.nu' 'Nu.framework/Versions/A/Resources/help.nu' nuke: cp 'nu/doc.nu' 'Nu.framework/Versions/A/Resources/doc.nu' nuke: cp 'nu/test.nu' 'Nu.framework/Versions/A/Resources/test.nu' nuke: cp 'nu/cblocks.nu' 'Nu.framework/Versions/A/Resources/cblocks.nu' nuke: cp 'nu/fscript.nu' 'Nu.framework/Versions/A/Resources/fscript.nu' nuke: cp 'nu/nibtools.nu' 'Nu.framework/Versions/A/Resources/nibtools.nu' nuke: cp 'nu/template.nu' 'Nu.framework/Versions/A/Resources/template.nu' nuke: mkdir 'Nu.framework/Versions/A/Headers' nuke: /usr/bin/clang -Wall -g -fPIC -O2 -DMACOSX -DHAVE_CONFIG_H -fobjc-exceptions -fobjc-gc -arch x86_64 -I/usr/include -I./include -I./include/Nu -I/usr/include/ffi -c -o build/x86_64/Nu.o objc/Nu.m nuke: terminating on command error (return code 1)==> Configuration HOMEBREW_VERSION: 0.9.5 HEAD: 324ae85323666a8fdc6d61a7bf76b9fd4307dbfc CPU: quad-core 64-bit haswell OS X: 10.9.3-x86_64 Xcode: 5.1.1 CLT: 5.1.0.0.1.1396320587 X11: 2.7.5 => /opt/X11==> ENV HOMEBREW_CC: clang HOMEBREW_CXX: clang++ MAKEFLAGS: -j4 CMAKE_PREFIX_PATH: /usr/local CMAKE_INCLUDE_PATH: /usr/include/libxml2:/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers CMAKE_LIBRARY_PATH: /System/Library/Frameworks/OpenGL.framework/Versions/Current/Libraries PKG_CONFIG_PATH: /usr/local/opt/pcre/lib/pkgconfig PKG_CONFIG_LIBDIR: /usr/lib/pkgconfig:/usr/local/Library/ENV/pkgconfig/10.9 ACLOCAL_PATH: /usr/local/share/aclocal PATH: /usr/local/Library/ENV/4.3:/usr/local/opt/pcre/bin:/usr/bin:/bin:/usr/sbin:/sbin

Logs: /Users/josh/Library/Logs/Homebrew/nu/01.make /Users/josh/Library/Logs/Homebrew/nu/02.mininush

Am I doing something wrong, or missing something?

— Reply to this email directly or view it on GitHub https://github.com/timburks/nu/issues/76.

tdsmith commented 9 years ago

This may be resolved by the commit pulled in https://github.com/timburks/nu/pull/74.