shoes / shoes-deprecated

Former repo for Shoes... see README for up to date locations!
http://shoesrb.com/
Other
1.15k stars 167 forks source link

Error while building shoes on OS X Lion #125

Closed ghost closed 12 years ago

ghost commented 13 years ago

I'm using Ruby version 1.9.2 with rvm. On running rake build I get the following errors. Can you please help

...
... output truncated
...
shoes/app.c:337: warning: implicit conversion shortens 64-bit value into a 32-bit value
rake aborted!
Command failed with status (1): [gcc -I. -c -oshoes/app.o -Wall -I/usr/incl...]

Tasks: TOP => build => build_os => dist/shoes => dist/libshoes.dylib => shoes/app.o
(See full trace by running task with --trace)
steveklabnik commented 13 years ago

You truncated too much! there's no error there.

ghost commented 13 years ago

Oops! Here is the fill trace

$ rake build                                                                ✭
gcc -I. -c -oshoes/app.o -Wall -I/usr/include -I/usr/local/Cellar/pixman/0.22.0/include/pixman-1 -I/usr/X11/include/cairo -I/usr/X11/include -I/usr/X11/include/freetype2 -I/usr/X11/include/libpng15 -D_REENTRANT -I/usr/local/Cellar/pango/1.28.4/include/pango-1.0 -I/usr/local/Cellar/glib/2.28.8/include/glib-2.0 -I/usr/local/Cellar/glib/2.28.8/lib/glib-2.0/include -I/usr/local/Cellar/gettext/0.18.1.1/include -I/usr/local/Cellar/glib/2.28.8/include  -I/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/x86_64-darwin11.0.0 -I/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1 -I/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/x86_64-darwin11.0.0 -O  -DRUBY_1_9 -DSHOES_QUARTZ -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -fpascal-strings  -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wshorten-64-to-32 -Wno-long-long  -fno-common -pipe -x objective-c -fobjc-exceptions -isysroot /Developer/SDKs/MacOSX10.6.sdk -arch x86_64 shoes/app.c
In file included from /Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby.h:32,
                 from ./shoes/app.h:14,
                 from shoes/app.c:6:
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1048: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1048: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1049: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1049: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1055: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1056: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1057: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1152: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1153: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1154: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1154: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1155: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1155: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1156: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1156: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1157: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1158: warning: function declaration isn’t a prototype
In file included from /Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1326,
                 from /Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby.h:32,
                 from ./shoes/app.h:14,
                 from shoes/app.c:6:
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/missing.h:169: warning: redundant redeclaration of ‘ffs’
In file included from /Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:29,
                 from /Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1327,
                 from /Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby.h:32,
                 from ./shoes/app.h:14,
                 from shoes/app.c:6:
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/st.h:73: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/st.h:74: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/st.h:109: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/st.h:110: warning: function declaration isn’t a prototype
In file included from /Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1327,
                 from /Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby.h:32,
                 from ./shoes/app.h:14,
                 from shoes/app.c:6:
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:84: warning: redundant redeclaration of ‘rb_uint2big’
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:552: warning: previous declaration of ‘rb_uint2big’ was here
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:85: warning: redundant redeclaration of ‘rb_int2big’
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:553: warning: previous declaration of ‘rb_int2big’ was here
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:86: warning: redundant redeclaration of ‘rb_uint2inum’
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:229: warning: previous declaration of ‘rb_uint2inum’ was here
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:87: warning: redundant redeclaration of ‘rb_int2inum’
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:226: warning: previous declaration of ‘rb_int2inum’ was here
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:99: warning: redundant redeclaration of ‘rb_ll2inum’
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:234: warning: previous declaration of ‘rb_ll2inum’ was here
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:100: warning: redundant redeclaration of ‘rb_ull2inum’
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:236: warning: previous declaration of ‘rb_ull2inum’ was here
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:170: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:173: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:174: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:175: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:181: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:308: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:339: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:395: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:396: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:803: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:805: warning: redundant redeclaration of ‘rb_iv_set’
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1116: warning: previous declaration of ‘rb_iv_set’ was here
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:806: warning: redundant redeclaration of ‘rb_iv_get’
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1115: warning: previous declaration of ‘rb_iv_get’ was here
In file included from /Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby.h:32,
                 from ./shoes/app.h:14,
                 from shoes/app.c:6:
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1408: warning: redundant redeclaration of ‘st_strcasecmp’
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/st.h:118: warning: previous declaration of ‘st_strcasecmp’ was here
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1409: warning: redundant redeclaration of ‘st_strncasecmp’
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/st.h:119: warning: previous declaration of ‘st_strncasecmp’ was here
In file included from ./shoes/canvas.h:16,
                 from ./shoes/app.h:40,
                 from shoes/app.c:6:
./shoes/config.h:97:26: error: cairo-quartz.h: No such file or directory
In file included from shoes/app.c:6:
./shoes/app.h:90: warning: function declaration isn’t a prototype
In file included from shoes/app.c:8:
./shoes/ruby.h:44: warning: function declaration isn’t a prototype
In file included from shoes/app.c:11:
./shoes/native.h:24: warning: function declaration isn’t a prototype
./shoes/native.h:26: warning: function declaration isn’t a prototype
./shoes/native.h:28: warning: function declaration isn’t a prototype
./shoes/native.h:44: warning: function declaration isn’t a prototype
shoes/app.c:106: warning: no previous prototype for ‘shoes_app_resize’
shoes/app.c: In function ‘shoes_app_window’:
shoes/app.c:120: warning: initialization discards qualifiers from pointer target type
shoes/app.c:143: warning: implicit conversion shortens 64-bit value into a 32-bit value
shoes/app.c:145: warning: implicit conversion shortens 64-bit value into a 32-bit value
shoes/app.c: At top level:
shoes/app.c:217: warning: no previous prototype for ‘shoes_app_title’
shoes/app.c:275: warning: function declaration isn’t a prototype
shoes/app.c: In function ‘shoes_app_run’:
shoes/app.c:337: warning: implicit conversion shortens 64-bit value into a 32-bit value
rake aborted!
Command failed with status (1): [gcc -I. -c -oshoes/app.o -Wall -I/usr/incl...]

Tasks: TOP => build => build_os => dist/shoes => dist/libshoes.dylib => shoes/app.o
(See full trace by running task with --trace)
ghost commented 13 years ago

That's the same error I am getting.

steveklabnik commented 13 years ago

So. Before you can build it, you need to make sure you have homebrew installed, and then:

rake osx_deps
rake

And it should work. Your environment isn't finding cairo and stuff yet.

steveklabnik commented 13 years ago

... this changed in the last few hours, and so i'm just changing the wiki now. ;)

ghost commented 13 years ago

Still no love!

[1] $ rake osx_deps
brew list cairo 1,2>/dev/null
brew list pango 1,2>/dev/null
brew list libjpeg 1,2>/dev/null
brew list giflib 1,2>/dev/null
brew list libiconv 1,2>/dev/null
brew list portaudio 1,2>/dev/null
brew list gettext 1,2>/dev/null
brew list cairo 1,2>/dev/null
brew list gettext 1,2>/dev/null
$ rake

gcc -I. -c -oshoes/app.o -Wall -I/usr/include -I/usr/local/Cellar/pixman/0.22.0/include/pixman-1 -I/usr/X11/include/cairo -I/usr/X11/include -I/usr/X11/include/freetype2 -I/usr/X11/include/libpng15 -D_REENTRANT -I/usr/local/Cellar/pango/1.28.4/include/pango-1.0 -I/usr/local/Cellar/glib/2.28.8/include/glib-2.0 -I/usr/local/Cellar/glib/2.28.8/lib/glib-2.0/include -I/usr/local/Cellar/gettext/0.18.1.1/include -I/usr/local/Cellar/glib/2.28.8/include  -I/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/x86_64-darwin11.0.0 -I/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1 -I/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/x86_64-darwin11.0.0 -O  -DRUBY_1_9 -DSHOES_QUARTZ -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -fpascal-strings  -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wshorten-64-to-32 -Wno-long-long  -fno-common -pipe -x objective-c -fobjc-exceptions -isysroot /Developer/SDKs/MacOSX10.6.sdk -arch x86_64 shoes/app.c
In file included from /Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby.h:32,
                 from ./shoes/app.h:14,
                 from shoes/app.c:6:
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1048: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1048: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1049: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1049: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1055: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1056: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1057: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1152: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1153: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1154: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1154: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1155: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1155: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1156: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1156: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1157: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1158: warning: function declaration isn’t a prototype
In file included from /Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1326,
                 from /Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby.h:32,
                 from ./shoes/app.h:14,
                 from shoes/app.c:6:
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/missing.h:169: warning: redundant redeclaration of ‘ffs’
In file included from /Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:29,
                 from /Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1327,
                 from /Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby.h:32,
                 from ./shoes/app.h:14,
                 from shoes/app.c:6:
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/st.h:73: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/st.h:74: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/st.h:109: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/st.h:110: warning: function declaration isn’t a prototype
In file included from /Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1327,
                 from /Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby.h:32,
                 from ./shoes/app.h:14,
                 from shoes/app.c:6:
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:84: warning: redundant redeclaration of ‘rb_uint2big’
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:552: warning: previous declaration of ‘rb_uint2big’ was here
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:85: warning: redundant redeclaration of ‘rb_int2big’
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:553: warning: previous declaration of ‘rb_int2big’ was here
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:86: warning: redundant redeclaration of ‘rb_uint2inum’
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:229: warning: previous declaration of ‘rb_uint2inum’ was here
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:87: warning: redundant redeclaration of ‘rb_int2inum’
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:226: warning: previous declaration of ‘rb_int2inum’ was here
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:99: warning: redundant redeclaration of ‘rb_ll2inum’
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:234: warning: previous declaration of ‘rb_ll2inum’ was here
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:100: warning: redundant redeclaration of ‘rb_ull2inum’
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:236: warning: previous declaration of ‘rb_ull2inum’ was here
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:170: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:173: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:174: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:175: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:181: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:308: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:339: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:395: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:396: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:803: warning: function declaration isn’t a prototype
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:805: warning: redundant redeclaration of ‘rb_iv_set’
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1116: warning: previous declaration of ‘rb_iv_set’ was here
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/intern.h:806: warning: redundant redeclaration of ‘rb_iv_get’
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1115: warning: previous declaration of ‘rb_iv_get’ was here
In file included from /Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby.h:32,
                 from ./shoes/app.h:14,
                 from shoes/app.c:6:
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1408: warning: redundant redeclaration of ‘st_strcasecmp’
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/st.h:118: warning: previous declaration of ‘st_strcasecmp’ was here
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/ruby.h:1409: warning: redundant redeclaration of ‘st_strncasecmp’
/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/st.h:119: warning: previous declaration of ‘st_strncasecmp’ was here
In file included from ./shoes/canvas.h:16,
                 from ./shoes/app.h:40,
                 from shoes/app.c:6:
./shoes/config.h:97:26: error: cairo-quartz.h: No such file or directory
In file included from shoes/app.c:6:
./shoes/app.h:90: warning: function declaration isn’t a prototype
In file included from shoes/app.c:8:
./shoes/ruby.h:44: warning: function declaration isn’t a prototype
In file included from shoes/app.c:11:
./shoes/native.h:24: warning: function declaration isn’t a prototype
./shoes/native.h:26: warning: function declaration isn’t a prototype
./shoes/native.h:28: warning: function declaration isn’t a prototype
./shoes/native.h:44: warning: function declaration isn’t a prototype
shoes/app.c:106: warning: no previous prototype for ‘shoes_app_resize’
shoes/app.c: In function ‘shoes_app_window’:
shoes/app.c:120: warning: initialization discards qualifiers from pointer target type
shoes/app.c:143: warning: implicit conversion shortens 64-bit value into a 32-bit value
shoes/app.c:145: warning: implicit conversion shortens 64-bit value into a 32-bit value
shoes/app.c: At top level:
shoes/app.c:217: warning: no previous prototype for ‘shoes_app_title’
shoes/app.c:275: warning: function declaration isn’t a prototype
shoes/app.c: In function ‘shoes_app_run’:
shoes/app.c:337: warning: implicit conversion shortens 64-bit value into a 32-bit value
rake aborted!
Command failed with status (1): [gcc -I. -c -oshoes/app.o -Wall -I/usr/incl...]

Tasks: TOP => default => build => build_os => dist/shoes => dist/libshoes.dylib => shoes/app.o
(See full trace by running task with --trace)
steveklabnik commented 13 years ago

Can you rake osx_deps --trace for me?

ghost commented 13 years ago
$ rake osx_deps --trace
** Invoke osx_deps (first_time)
** Invoke osx_bootstrap_env (first_time)
** Execute osx_bootstrap_env
** Execute osx_deps
brew list cairo 
/usr/local/Cellar/cairo/1.10.2/bin/cairo-trace
/usr/local/Cellar/cairo/1.10.2/include/cairo/ (13 files)
/usr/local/Cellar/cairo/1.10.2/lib/libcairo-gobject.2.dylib
/usr/local/Cellar/cairo/1.10.2/lib/libcairo-script-interpreter.2.dylib
/usr/local/Cellar/cairo/1.10.2/lib/libcairo.2.dylib
/usr/local/Cellar/cairo/1.10.2/lib/cairo/ (3 files)
/usr/local/Cellar/cairo/1.10.2/lib/pkgconfig/ (12 files)
/usr/local/Cellar/cairo/1.10.2/lib/ (6 other files)
/usr/local/Cellar/cairo/1.10.2/share/gtk-doc/ (57 files)
brew install cairo 
Warning: Formula already installed: cairo
brew list pango 
/usr/local/Cellar/pango/1.28.4/bin/pango-view
/usr/local/Cellar/pango/1.28.4/bin/pango-querymodules
/usr/local/Cellar/pango/1.28.4/etc/pango/ (2 files)
/usr/local/Cellar/pango/1.28.4/include/pango-1.0/ (34 files)
/usr/local/Cellar/pango/1.28.4/lib/libpango-1.0.0.dylib
/usr/local/Cellar/pango/1.28.4/lib/libpangocairo-1.0.0.dylib
/usr/local/Cellar/pango/1.28.4/lib/libpangoft2-1.0.0.dylib
/usr/local/Cellar/pango/1.28.4/lib/libpangox-1.0.0.dylib
/usr/local/Cellar/pango/1.28.4/lib/libpangoxft-1.0.0.dylib
/usr/local/Cellar/pango/1.28.4/lib/pango/ (12 files)
/usr/local/Cellar/pango/1.28.4/lib/pkgconfig/ (5 files)
/usr/local/Cellar/pango/1.28.4/lib/ (5 other files)
/usr/local/Cellar/pango/1.28.4/share/gtk-doc/ (61 files)
/usr/local/Cellar/pango/1.28.4/share/man/ (2 files)
brew install pango 
Warning: Formula already installed: pango
brew list libjpeg 
/usr/local/Cellar/jpeg/8c/bin/wrjpgcom
/usr/local/Cellar/jpeg/8c/bin/rdjpgcom
/usr/local/Cellar/jpeg/8c/bin/jpegtran
/usr/local/Cellar/jpeg/8c/bin/djpeg
/usr/local/Cellar/jpeg/8c/bin/cjpeg
/usr/local/Cellar/jpeg/8c/include/ (4 files)
/usr/local/Cellar/jpeg/8c/lib/libjpeg.8.dylib
/usr/local/Cellar/jpeg/8c/lib/ (2 other files)
/usr/local/Cellar/jpeg/8c/share/man/ (5 files)
brew install libjpeg 
Warning: Formula already installed: jpeg
brew list giflib 
/usr/local/Cellar/giflib/4.1.6/bin/text2gif
/usr/local/Cellar/giflib/4.1.6/bin/rgb2gif
/usr/local/Cellar/giflib/4.1.6/bin/raw2gif
/usr/local/Cellar/giflib/4.1.6/bin/icon2gif
/usr/local/Cellar/giflib/4.1.6/bin/gifwedge
/usr/local/Cellar/giflib/4.1.6/bin/giftext
/usr/local/Cellar/giflib/4.1.6/bin/gifspnge
/usr/local/Cellar/giflib/4.1.6/bin/gifrsize
/usr/local/Cellar/giflib/4.1.6/bin/gifrotat
/usr/local/Cellar/giflib/4.1.6/bin/gifpos
/usr/local/Cellar/giflib/4.1.6/bin/gifovly
/usr/local/Cellar/giflib/4.1.6/bin/gifinto
/usr/local/Cellar/giflib/4.1.6/bin/gifinter
/usr/local/Cellar/giflib/4.1.6/bin/gifinfo
/usr/local/Cellar/giflib/4.1.6/bin/gifhisto
/usr/local/Cellar/giflib/4.1.6/bin/gifflip
/usr/local/Cellar/giflib/4.1.6/bin/giffix
/usr/local/Cellar/giflib/4.1.6/bin/giffiltr
/usr/local/Cellar/giflib/4.1.6/bin/gifcompose
/usr/local/Cellar/giflib/4.1.6/bin/gifcomb
/usr/local/Cellar/giflib/4.1.6/bin/gifcolor
/usr/local/Cellar/giflib/4.1.6/bin/gifclrmp
/usr/local/Cellar/giflib/4.1.6/bin/gifclip
/usr/local/Cellar/giflib/4.1.6/bin/gifburst
/usr/local/Cellar/giflib/4.1.6/bin/gifbg
/usr/local/Cellar/giflib/4.1.6/bin/gifasm
/usr/local/Cellar/giflib/4.1.6/bin/gif2rgb
/usr/local/Cellar/giflib/4.1.6/bin/gif2ps
/usr/local/Cellar/giflib/4.1.6/bin/gif2epsn
/usr/local/Cellar/giflib/4.1.6/include/gif_lib.h
/usr/local/Cellar/giflib/4.1.6/lib/libgif.4.1.6.dylib
/usr/local/Cellar/giflib/4.1.6/lib/ (3 other files)
brew install giflib 
Warning: Formula already installed: giflib
brew list libiconv 
/usr/local/Cellar/libiconv/1.13.1/bin/iconv
/usr/local/Cellar/libiconv/1.13.1/include/ (3 files)
/usr/local/Cellar/libiconv/1.13.1/lib/libcharset.1.dylib
/usr/local/Cellar/libiconv/1.13.1/lib/libiconv.2.dylib
/usr/local/Cellar/libiconv/1.13.1/lib/ (4 other files)
/usr/local/Cellar/libiconv/1.13.1/share/doc/ (6 files)
/usr/local/Cellar/libiconv/1.13.1/share/man/ (6 files)
brew install libiconv 
Warning: Formula already installed: libiconv
brew list portaudio 
/usr/local/Cellar/portaudio/19.20071207/include/ (2 files)
/usr/local/Cellar/portaudio/19.20071207/lib/libportaudio.2.0.0.dylib
/usr/local/Cellar/portaudio/19.20071207/lib/pkgconfig/portaudio-2.0.pc
/usr/local/Cellar/portaudio/19.20071207/lib/ (3 other files)
brew install portaudio 
Warning: Formula already installed: portaudio
brew list gettext 
/usr/local/Cellar/gettext/0.18.1.1/bin/xgettext
/usr/local/Cellar/gettext/0.18.1.1/bin/recode-sr-latin
/usr/local/Cellar/gettext/0.18.1.1/bin/ngettext
/usr/local/Cellar/gettext/0.18.1.1/bin/msguniq
/usr/local/Cellar/gettext/0.18.1.1/bin/msgunfmt
/usr/local/Cellar/gettext/0.18.1.1/bin/msgmerge
/usr/local/Cellar/gettext/0.18.1.1/bin/msginit
/usr/local/Cellar/gettext/0.18.1.1/bin/msggrep
/usr/local/Cellar/gettext/0.18.1.1/bin/msgfmt
/usr/local/Cellar/gettext/0.18.1.1/bin/msgfilter
/usr/local/Cellar/gettext/0.18.1.1/bin/msgexec
/usr/local/Cellar/gettext/0.18.1.1/bin/msgen
/usr/local/Cellar/gettext/0.18.1.1/bin/msgconv
/usr/local/Cellar/gettext/0.18.1.1/bin/msgcomm
/usr/local/Cellar/gettext/0.18.1.1/bin/msgcmp
/usr/local/Cellar/gettext/0.18.1.1/bin/msgcat
/usr/local/Cellar/gettext/0.18.1.1/bin/msgattrib
/usr/local/Cellar/gettext/0.18.1.1/bin/gettextize
/usr/local/Cellar/gettext/0.18.1.1/bin/gettext.sh
/usr/local/Cellar/gettext/0.18.1.1/bin/gettext
/usr/local/Cellar/gettext/0.18.1.1/bin/envsubst
/usr/local/Cellar/gettext/0.18.1.1/bin/autopoint
/usr/local/Cellar/gettext/0.18.1.1/include/ (3 files)
/usr/local/Cellar/gettext/0.18.1.1/lib/libasprintf.0.dylib
/usr/local/Cellar/gettext/0.18.1.1/lib/libgettextlib-0.18.1.dylib
/usr/local/Cellar/gettext/0.18.1.1/lib/libgettextpo.0.dylib
/usr/local/Cellar/gettext/0.18.1.1/lib/libgettextsrc-0.18.1.dylib
/usr/local/Cellar/gettext/0.18.1.1/lib/libintl.8.dylib
/usr/local/Cellar/gettext/0.18.1.1/lib/gettext/ (4 files)
/usr/local/Cellar/gettext/0.18.1.1/lib/ (8 other files)
/usr/local/Cellar/gettext/0.18.1.1/share/aclocal/ (31 files)
/usr/local/Cellar/gettext/0.18.1.1/share/doc/ (86 files)
/usr/local/Cellar/gettext/0.18.1.1/share/gettext/ (102 files)
/usr/local/Cellar/gettext/0.18.1.1/share/info/ (3 files)
/usr/local/Cellar/gettext/0.18.1.1/share/locale/ (75 files)
/usr/local/Cellar/gettext/0.18.1.1/share/man/ (30 files)
brew install gettext 
Warning: Formula already installed: gettext
brew list cairo 
/usr/local/Cellar/cairo/1.10.2/bin/cairo-trace
/usr/local/Cellar/cairo/1.10.2/include/cairo/ (13 files)
/usr/local/Cellar/cairo/1.10.2/lib/libcairo-gobject.2.dylib
/usr/local/Cellar/cairo/1.10.2/lib/libcairo-script-interpreter.2.dylib
/usr/local/Cellar/cairo/1.10.2/lib/libcairo.2.dylib
/usr/local/Cellar/cairo/1.10.2/lib/cairo/ (3 files)
/usr/local/Cellar/cairo/1.10.2/lib/pkgconfig/ (12 files)
/usr/local/Cellar/cairo/1.10.2/lib/ (6 other files)
/usr/local/Cellar/cairo/1.10.2/share/gtk-doc/ (57 files)
brew install cairo 
Warning: Formula already installed: cairo
brew list gettext 
/usr/local/Cellar/gettext/0.18.1.1/bin/xgettext
/usr/local/Cellar/gettext/0.18.1.1/bin/recode-sr-latin
/usr/local/Cellar/gettext/0.18.1.1/bin/ngettext
/usr/local/Cellar/gettext/0.18.1.1/bin/msguniq
/usr/local/Cellar/gettext/0.18.1.1/bin/msgunfmt
/usr/local/Cellar/gettext/0.18.1.1/bin/msgmerge
/usr/local/Cellar/gettext/0.18.1.1/bin/msginit
/usr/local/Cellar/gettext/0.18.1.1/bin/msggrep
/usr/local/Cellar/gettext/0.18.1.1/bin/msgfmt
/usr/local/Cellar/gettext/0.18.1.1/bin/msgfilter
/usr/local/Cellar/gettext/0.18.1.1/bin/msgexec
/usr/local/Cellar/gettext/0.18.1.1/bin/msgen
/usr/local/Cellar/gettext/0.18.1.1/bin/msgconv
/usr/local/Cellar/gettext/0.18.1.1/bin/msgcomm
/usr/local/Cellar/gettext/0.18.1.1/bin/msgcmp
/usr/local/Cellar/gettext/0.18.1.1/bin/msgcat
/usr/local/Cellar/gettext/0.18.1.1/bin/msgattrib
/usr/local/Cellar/gettext/0.18.1.1/bin/gettextize
/usr/local/Cellar/gettext/0.18.1.1/bin/gettext.sh
/usr/local/Cellar/gettext/0.18.1.1/bin/gettext
/usr/local/Cellar/gettext/0.18.1.1/bin/envsubst
/usr/local/Cellar/gettext/0.18.1.1/bin/autopoint
/usr/local/Cellar/gettext/0.18.1.1/include/ (3 files)
/usr/local/Cellar/gettext/0.18.1.1/lib/libasprintf.0.dylib
/usr/local/Cellar/gettext/0.18.1.1/lib/libgettextlib-0.18.1.dylib
/usr/local/Cellar/gettext/0.18.1.1/lib/libgettextpo.0.dylib
/usr/local/Cellar/gettext/0.18.1.1/lib/libgettextsrc-0.18.1.dylib
/usr/local/Cellar/gettext/0.18.1.1/lib/libintl.8.dylib
/usr/local/Cellar/gettext/0.18.1.1/lib/gettext/ (4 files)
/usr/local/Cellar/gettext/0.18.1.1/lib/ (8 other files)
/usr/local/Cellar/gettext/0.18.1.1/share/aclocal/ (31 files)
/usr/local/Cellar/gettext/0.18.1.1/share/doc/ (86 files)
/usr/local/Cellar/gettext/0.18.1.1/share/gettext/ (102 files)
/usr/local/Cellar/gettext/0.18.1.1/share/info/ (3 files)
/usr/local/Cellar/gettext/0.18.1.1/share/locale/ (75 files)
/usr/local/Cellar/gettext/0.18.1.1/share/man/ (30 files)
brew install gettext 
Warning: Formula already installed: gettext
ghost commented 13 years ago

Same here...

steveklabnik commented 13 years ago

How strange. So you do have stuff installed... I wonder if it's picking up the environment variable stuff. @wasnotrice, any ideas?

steveklabnik commented 13 years ago

It says it's executing the boostrap env task too...

ghost commented 13 years ago

Is it by any chance llvm-gcc vs gcc issue, as gcc in Lion is linked to llvm-gcc ?

$ ls -l /usr/bin/gcc   
lrwxr-xr-x  1 root  wheel  12 Aug  9 15:56 /usr/bin/gcc -> llvm-gcc-4.2
ghost commented 13 years ago

as the command fail status is a gcc returning status 1 when running rake

Command failed with status (1): [gcc -I. -c -oshoes/app.o -Wall -I/usr/incl...]
ghost commented 13 years ago

No, I'm on Snow Leopard.

ghost commented 13 years ago
 lrwxr-xr-x  1 root  wheel  7 Mar 13 11:46 /usr/bin/gcc@ -> gcc-4.2
steveklabnik commented 13 years ago

I'm slightly concerned by shoes/app.c:143: warning: implicit conversion shortens 64-bit value into a 32-bit value.

Are you on a 32 bit system?

ghost commented 13 years ago

I noticed that too, when I was building for 32-bit; but I don't know C so an't can't really tell what is supposed to be fixed here.

steveklabnik commented 13 years ago

Ah! Right now, it's hardcoded for 64. So... yeah. We'll need to make a patch. If you're interested, grep the makefiles for x86_64, it should be i386 instead.

wasnotrice commented 13 years ago

The error I see here is

./shoes/config.h:97:26: error: cairo-quartz.h: No such file or directory

I think this is because homebrew's pango builds against the system's cairo (which, strangely, doesn't seem to have cairo-quartz.h), so we have 2 cairo libs in play.

I think the 64-bit to 32-bit warning is an implicit double -> float conversion (haven't checked that to be sure, though), but I see lots of those on both 32-bit and 64-bit systems.

ghost commented 13 years ago

I'm running 64-bit system

$ uname -a
Darwin Punjab 11.1.0 Darwin Kernel Version 11.1.0: Tue Jul 26 16:07:11 PDT 2011; root:xnu-1699.22.81~1/RELEASE_X86_64 x86_64

I tried to change corresponding make directions in env.rb to

...
else
  LINUX_CFLAGS << " -isysroot /Developer/SDKs/MacOSX10.7.sdk -arch x86_64"
  LINUX_LDFLAGS << " -arch x86_64"
  ENV['MACOSX_DEPLOYMENT_TARGET'] = '10.7'  
end

Still same issues!

ghost commented 13 years ago

@wasnotrice Ah yes, I think there was a thread about this on the Homebrew mailing list and I totally forgot.

wasnotrice commented 13 years ago

Really?! I need to check that Homebrew thread out. Thanks.

On Aug 20, 2011, at 7:23 AM, secondplanet reply@reply.github.com wrote:

@wasnotrice Ah yes, I think there was a thread about this on the Homebrew mailing list and I totally forgot.

Reply to this email directly or view it on GitHub: https://github.com/shoes/shoes/issues/125#issuecomment-1859297

ghost commented 13 years ago

These three threads are actually all somewhat relevant:

http://librelist.com/browser//homebrew/2010/11/14/gtk+-native-build/#bfee2670e738a97134fc038c4de3aeb6 https://github.com/mxcl/homebrew/issues/854 https://github.com/mxcl/homebrew/issues/1442

(The last being the most recently ongoing)

ghost commented 13 years ago

Maybe installing cairo from this fork can help?

https://github.com/codebutler/homebrew/blob/master/Library/Formula/cairo.rb

Brew install should work on the raw url.

ghost commented 13 years ago

No wait, that's a bit out of date; try this:

https://github.com/secondplanet/homebrew/blob/patch-5/Library/Formula/cairo.rb

ghost commented 13 years ago

And here's pango...

https://raw.github.com/codebutler/homebrew/master/Library/Formula/pango.rb

Trying this out now; I hope this does it.

ghost commented 13 years ago

Sorry, needed to edit that a bit as well...

https://raw.github.com/secondplanet/homebrew/patch-6/Library/Formula/pango.rb

ghost commented 13 years ago

Ok, so I installed quartz pango and cairo, but the error persists. I bet there is an environment variable or something. Does anyone else have a suggestion as to what to try next?

steveklabnik commented 13 years ago

When we were talking about it on irc, we guessed that it's just getting linked against the system one somehow. You'd have to dig into the Rakefile stuff to figure it out. :/

I still can't reproduce it myself, so I'm not too much help, but if you want to dig into it, I can help be a guide.

wasnotrice commented 13 years ago

OK. Here's the problem (note: this is hard won knowledge :) ). Notice in the rake trace above:

gcc -I. -c -oshoes/app.o -Wall -I/usr/include -I/usr/local/Cellar/pixman/0.22.0/include/pixman-1 -I/usr/X11/include/cairo -I/usr/X11/include -I/usr/X11/include/freetype2 -I/usr/X11/include/libpng15 -D_REENTRANT -I/usr/local/Cellar/pango/1.28.4/include/pango-1.0 -I/usr/local/Cellar/glib/2.28.8/include/glib-2.0 -I/usr/local/Cellar/glib/2.28.8/lib/glib-2.0/include -I/usr/local/Cellar/gettext/0.18.1.1/include -I/usr/local/Cellar/glib/2.28.8/include  -I/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/x86_64-darwin11.0.0 -I/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1 -I/Users/punjab/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/x86_64-darwin11.0.0 -O  -DRUBY_1_9 -DSHOES_QUARTZ -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -fpascal-strings  -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wshorten-64-to-32 -Wno-long-long  -fno-common -pipe -x objective-c -fobjc-exceptions -isysroot /Developer/SDKs/MacOSX10.6.sdk -arch x86_64 shoes/app.c

The first include path is -I/usr/include. That's wrong. There's no cairo anything there. Also note that there are some cairo include paths, but they are for the X11 version (the OS X stock version), and there's no cairo-quartz.h there. This happens because the use-brew script was removed and that env manipulation was put into a rake task, which is great, except that there is a bunch of environmental stuff set in make/darwin/env.rb, which is processed before any rake tasks. So the SHOES_DEPS_PATH and CAIRO_CFLAGS constants are set to default (wrong) values before the rake task, and the rake task sets the env vars, not the constants, and by then it's too late. Note that if you cleared out your Homebrew install, and had no pkg-config, the whole rake task would bomb.

I think I have fixed the issue in this commit: https://github.com/wasnotrice/shoes/commit/d063dfb0dc0340a17f09237c1236f5b23d60234a. I don't think you will be able to build a wearable Shoes yet, but you should get past the cairo-quartz.h business :) Please try it out.

steveklabnik commented 13 years ago

This issue was also affecting me, and now my Shoes builds properly again.

steveklabnik commented 13 years ago

I've ported it to the develop branch, so all of this stuff should be on develop now.

ghost commented 13 years ago

Cool, I'll try it with the forked Homebrew and see if this works.

ghost commented 13 years ago

Gets a little further along but still cannot compile. https://gist.github.com/1160752. By the way, before I forget thank you steveklabnik, secondplanet and wasnotrice for looking at the issue.

wasnotrice commented 13 years ago

secondplanet: In principle, it would be nice to stay with the standard Homebrew packages as much as possible (simpler!). If we brew link cairo, then pango can find Homebrew's cairo without modifying the pango formula. That said, it's possible that we need the additional compile flags on your cairo formula fork. My build is hung up on libiconv at the moment, so I can't tell yet ;)

wasnotrice commented 13 years ago

punjab: I have recreated your error:

gcc-4.2 -o dist/libshoes.dylib shoes/app.o shoes/canvas.o shoes/effects.o shoes/image.o shoes/internal.o shoes/ruby.o shoes/world.o shoes/native/cocoa.o shoes/http/nsurl.o -framework Cocoa -framework Carbon -dynamiclib -Wl,-single_module -L.  -install_name @executable_path/libshoes.dylib -arch x86_64 -lruby.1.9.1 -lcairo -lpangocairo-1.0 -lgif -lpixman-1 -ljpeg.8 -L/Users/eric/.rvm/rubies/ruby-1.9.2-p290/lib -L/usr/X11/lib -lcairo -L/usr/local/Cellar/pango/1.28.4/lib -L/usr/local/Cellar/glib/2.28.8/lib -L/usr/local/Cellar/gettext/0.18.1.1/lib -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lglib-2.0 -lintl
Undefined symbols for architecture x86_64:
  "_cairo_quartz_surface_create_for_cg_context", referenced from:
      _shoes_cairo_create in cocoa.o
ld: symbol(s) not found for architecture x86_64

Let's see if we can solve it!

wasnotrice commented 13 years ago

punjab: try

brew link cairo

That should get you a little further.

indytechcook commented 13 years ago

I was able to get it to compile with the "brew link cairo" (with tons of warnings) but on launch it crashes. It appears as if the app required pixman 0.23 but brew only contains .22

https://gist.github.com/7b938145e0eba579daa8

Wanted to add a big thank you!

wasnotrice commented 13 years ago

Great! We're getting closer. The warnings are another issue that we're working on :)

I know what the problem is here, and I almost have a solution. Thanks for bearing with us! On Aug 24, 2011, at 4:05 PM, indytechcook wrote:

I was able to get it to compile with the "brew link cairo" (with tons of warnings) but on launch it crashes. It appears as if the app required pixman 0.23 but brew only contains .22

https://gist.github.com/7b938145e0eba579daa8

Reply to this email directly or view it on GitHub: https://github.com/shoes/shoes/issues/125#issuecomment-1894325

indytechcook commented 13 years ago

FYI, I used the default homebrew repo for cairo and pango. want me to try the other versions and recompile?

wasnotrice commented 13 years ago

Grab the lion-homebrew branch from my repo and try this

brew uninstall libiconv glib pango
rake osx:deps:install
rake clean && rake

Hopefully, that will pull in alternate formulas for glib and pango automatically. Let me know if it works!

On Aug 24, 2011, at 4:24 PM, indytechcook wrote:

FYI, I used the default homebrew repo for cairo and pango. want me to try the other versions and recompile?

Reply to this email directly or view it on GitHub: https://github.com/shoes/shoes/issues/125#issuecomment-1894551

indytechcook commented 13 years ago

It compiled but I had to uninstall pixman also.

Here is the output https://gist.github.com/25f8bf73660308f52205

Still crashing but different issue. https://gist.github.com/81ed47acdd274bb15f06

Issue with my cups library? maybe use

wasnotrice commented 13 years ago

Hmm. It's trying to use homebrew's libiconv. I'm assuming you uninstalled it, which means that glib must have reinstalled it. Which means you didn't get the updated formula. Try pulling from my repo again. I made one more commit since my last post which might have fixes the problem: https://github.com/wasnotrice/shoes/commit/2be3a77cf7077ac32c037a16477cc380ef533337

indytechcook commented 13 years ago

Ugh. the libiconv curse. I used to have this issue with python all the time.

Pull the updates and compiling.

indytechcook commented 13 years ago

wasnotric++

App launched but the characters aren't working https://skitch.com/indytechcook/futn5/shoes

It looks like pango couldn't load the fonts. https://gist.github.com/a92e610cb05769746d4b

I'll see if i can find them.

wasnotrice commented 13 years ago

I had a coupleof errors like those, but I thought the new pango formula fixed them. Does your usr/local/Library/Formulas/pango.rb look like this: https://github.com/wasnotrice/homebrew/blob/shoes/Library/Formula/pango.rb ? (I'm looking for the --without-x flag

steveklabnik commented 13 years ago

Merging in your latest, since it still builds fine on Snow Leopard.

indytechcook commented 13 years ago

wasnotrice Yes it's the same.

wasnotrice commented 13 years ago

Indytechcook: I'll uninstall all my homebrew stuff and try a fresh build tonight to see if I can reproduce your error. Thanks for helping out!

On Aug 24, 2011, at 6:58 PM, indytechcook reply@reply.github.com wrote:

wasnotrice Yes it's the same.

Reply to this email directly or view it on GitHub: https://github.com/shoes/shoes/issues/125#issuecomment-1895710

ghost commented 13 years ago

Linking now, and trying the latest Shoes. Thanks, @wasnotrice for making some of those errors work out. However, I still get the same error on 32-bit Snow Leopard.