[Gridflow-dev] Compiling on mac os 10.5
Patrick Boivin
pboivin at gmail.com
Tue Sep 8 22:32:01 EDT 2009
Allô everyone,
Here's a couple of things I noticed when compiling Gridflow 0.9.4
(and/or 0.9.5 SVN) on mac os 10.5.8 :
On an iMac (intel 2.4GHz core duo), even though it detects a
"Pentium-compatible CPU" during configure, i get the following error:
/usr/lib/gcc/i686-apple-darwin9/4.0.1/include/xmmintrin.h:35:3: error:
#error "SSE instruction set not enabled"
/System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/MachineExceptions.h:216:
error: ‘__m128’ does not name a type
when it gets to compiling those: format/quartz.m.fcs,
format/quicktimeapple.c.fcs, optional/gem.c.fcs and obviously
gridflow.pd_darwin
So, all that's needed is to specify --no-pentium to ./configure ...
Also, when I wanted to compile with FFTW, I got the following error:
optional/fftw.c.fcs: In member function ‘void
GridFFT::grin_0(GridInlet*, long int, T*)’:
optional/fftw.c.fcs:70: error: ‘ulong’ was not declared in this scope
optional/fftw.c.fcs:70: error: expected primary-expression before ‘void’
optional/fftw.c.fcs:70: error: expected `)' before ‘data’
optional/fftw.c.fcs:71: error: ‘ulong’ was not declared in this scope
optional/fftw.c.fcs:71: error: expected primary-expression before ‘void’
optional/fftw.c.fcs:71: error: expected `)' before ‘tada’
make: *** [optional/fftw.o] Error 1
A little modification in CHECK_ALIGN16 (gridflow.h) did the job:
gridflow-0.9.4 pb$ diff gridflow-old.h gridflow.h
825c825
< int align = ((ulong)(void*)d)%bytes; \
---
> int align = ((unsigned long)(void*)d)%bytes; \
Finally, there are two problems when compiling format/quartz.m.fcs.
First, it needs to be done "manually" specifying the pd source code
location ( -I/usr/src/pd-0.42-5/src ), as if g++ wasn't considering
CPLUS_INCLUDE_PATH for Objective-C files.
Second, I had the following error (0.9.5 SVN only):
format/quartz.m.fcs:180:26: error: macro "GRID_INLET" passed 2
arguments, but takes just 1
format/quartz.m.fcs:180: error: invalid function declaration
format/quartz.m.fcs:187: error: expected unqualified-id before ‘else’
format/quartz.m.fcs:210: error: expected unqualified-id before ‘else’
format/quartz.m.fcs:212: error: expected declaration before ‘}’ token
That seems to work:
gridflow-svn pb$ diff format/quartz-old.m format/quartz.m
180c180
< GRID_INLET(FormatQuartz,0) {
---
> GRID_INLET(0) {
Hope it helps,
Patrick
More information about the Gridflow-dev
mailing list