I never had any luck getting Nuke plugins to compile with gcc versions newer 
than 4.0 and SDK versions later than 10.6. These are the recommended versions 
on the NDK Dev Guide 
(http://docs.thefoundry.co.uk/nuke/80/ndkdevguide/appendixa/osx.html). From the 
error messages you are getting, it looks like the compiler is expecting a 
different SDK version.

To get the 10.6 SDK, I believe you need to dig it out of the XCode 4.1 
installer. Here 
(http://iphonesdkdev.blogspot.ru/2010/04/old-versions-of-iphone-sdk.html) is a 
list of direct links to download. Alternatively, some nice person uploaded just 
the installer here 
(https://docs.google.com/file/d/0BzyVHU69QO3mOVhDS3gzNHJZWUk/edit), so you 
don't have to download unecessary gigabytes of iphone sdk. Then just link the 
SDK path to the right place. Mine is located here: 
/Developer/SDKs/MacOSX10.6.sdk

Here is an example makefile, which pretty closely follows the default 
configuration found in the example makefile:  
/Applications/Nuke8.0v4/Documentation/NDK/examples/Makefile

## Start MakeFile
NDKDIR ?= /Applications/Nuke8.0v4/Nuke8.0v4.app/Contents/MacOS
MYCXX ?= g++-4.0
LINK ?= g++-4.0
CXXFLAGS ?= -g -c -DUSE_GLEW -I$(NDKDIR)/include -isysroot 
/Developer/SDKs/MacOSX10.6.sdk -arch x86_64
LINKFLAGS ?= -L$(NDKDIR) -Wl,-syslibroot,/Developer/SDKs/MacOSX10.6.sdk -arch 
x86_64
LIBS ?= -lDDImage -lGLEW
LINKFLAGS += -bundle
FRAMEWORKS ?= -framework QuartzCore -framework IOKit -framework CoreFoundation 
-framework Carbon -framework ApplicationServices -framework OpenGL -framework 
AGL  
all: NameOfPlugin.dylib
.PRECIOUS : %.os
%.os: %.cpp
$(MYCXX) $(CXXFLAGS) -o $(@) $<
%.dylib: %.os
$(LINK) $(LINKFLAGS) $(LIBS) $(FRAMEWORKS) -o $(@) $<



With that and gcc-4.0 compiling works for me! Though it took me about a day to 
get it set up and working, and to figure out exactly the requirements. I agree 
it is a pain to be using such old compiler versions.

Hope that helps! If you figure out how to make it work with newer versions of 
GCC and newer SDK versions, as Paolo describes, I would be very curious how you 
did it!



On Thursday, 2014-06-26 at 3:23p, Julik Tarkhanov wrote:

> Unfortunately I have to revive the topic.
>  
> Paolo, how do I use this? I’ve pulled in this GCC via brew (I still think 
> it’s too new and that I need 4.0), and my Makefile looks like this:
>  
> NDKDIR ?= /Applications/Nuke8.0v4/Nuke8.0v4.app/Contents/MacOS
> MYCXX ?= g++-4.2
> LINK ?= g++-4.2
> SDK ?= 
> /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk
> CXXFLAGS ?= -g -c -Werror -DUSE_GLEW -I$(NDKDIR)/include -isysroot $(SDKDIR)
> LINKFLAGS ?= -L$(NDKDIR) -Wl,-syslibroot,$(SDKDIR)
> LIBS ?= -lDDImage -lGLEW
> LINKFLAGS += -bundle
> FRAMEWORKS ?= -framework QuartzCore -framework IOKit -framework 
> CoreFoundation -framework Carbon -framework ApplicationServices -framework 
> OpenGL -framework AGL  
>  
> because I need to pull the SDK from somewhere, right?
> I then run make only to be greeted by
> https://gist.githubusercontent.com/julik/7d875b0ac1776f77eaba/raw/1c95f2c918c80725dd23d29286df78d482059a14/omg.txt
>  
> On a sidenote - by now I have spent about 2 to 3 times as much time fighting 
> with these ridiculous overage compilers as compared to actually  
> developing the plugins themselves:-(
>  
> On 16 Jan 2014, at 06:48, Paolo Berto <[email protected] 
> (mailto:[email protected])> wrote:
> > 1. install the f. amazing homebrew, http://brew.sh: (http://brew.sh/)
>  
> --  
> Julik Tarkhanov | HecticElectric | Keizersgracht 736 1017 EX
> Amsterdam | The Netherlands | tel. +31 20 330 8250
> cel. +31 61 145 06 36 | http://hecticelectric.nl  
> _______________________________________________
> Nuke-dev mailing list
> [email protected], http://forums.thefoundry.co.uk/
> http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-dev
>  
>  


_______________________________________________
Nuke-dev mailing list
[email protected], http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-dev

Reply via email to