librelist archives

« back to archive

Issue with packager/binject (x86_64)

Issue with packager/binject (x86_64)

From:
Cecil Coupe
Date:
2010-03-15 @ 03:30
My turn to report a problem.

I rebuilt an my copy of shoes r1157 on my system  (Ubuntu 9.10, 64 bit)
and the packager works except for pointing to the wrong website. Rather
than fix that problem in an old version I thought I'd try the latest
shoes r1314.

It compiled and it seems to runs but the packager segfaults
ccoupe@twb:~/Projects/shoes$ dist/shoes -p
/home/ccoupe/Projects/shoes/dist/lib/shoes/pack.rb:85: [BUG]
Segmentation fault
ruby 1.8.7 (2009-06-12 patchlevel 174) [x86_64-linux]

dist/shoes: line 22: 24643 Aborted                 LD_LIBRARY_PATH=
$APPPATH $APPPATH/shoes-bin "$@"

Line 85 is a call to binject.new(). Comparing the two versions of
binject only the binject.c appears to have changed but all the .o files
differ in sizes.  That's disturbing. The newer binject.c has some
conditional includes that I'm assuming are 1.8.x vs 1.9.x and I'm
guessing something is amiss or unfinished. Good enough to compile and
link but not good enough to run.

Before I track it down farther is r1314 only good for Ruby 1.9.1 or
should it work with 1.8.7 too? 

Further both ruby 1.8.7 and 1.9 are installed but 1.8.7 is the active
one - an Ubuntu thing. Can that confuse the rakefile so it builds
binject improperly?

--Cecil

Re: [shoes] Issue with packager/binject (x86_64)

From:
Csomay Mihaly
Date:
2010-03-15 @ 08:46
Cecil Coupe <ccoupe@cableone.net> writes:

> My turn to report a problem.
>
> I rebuilt an my copy of shoes r1157 on my system  (Ubuntu 9.10, 64 bit)
> and the packager works except for pointing to the wrong website. Rather
> than fix that problem in an old version I thought I'd try the latest
> shoes r1314.
>
> It compiled and it seems to runs but the packager segfaults
> ccoupe@twb:~/Projects/shoes$ dist/shoes -p
> /home/ccoupe/Projects/shoes/dist/lib/shoes/pack.rb:85: [BUG]
> Segmentation fault
> ruby 1.8.7 (2009-06-12 patchlevel 174) [x86_64-linux]
>
> dist/shoes: line 22: 24643 Aborted                 LD_LIBRARY_PATH=
> $APPPATH $APPPATH/shoes-bin "$@"

It's probably the same problem I had, you have to comment out the
ruby_sysinit call in shoes/world.c, see the comment here:
http://github.com/shoes/shoes/commit/1fc71d0f4343f7adb740aed59b90ef93024ef5b6

> Further both ruby 1.8.7 and 1.9 are installed but 1.8.7 is the active
> one - an Ubuntu thing. Can that confuse the rakefile so it builds
> binject improperly?

Why don't you use rvm if you have/want multiple versions of ruby?
http://rvm.beginrescueend.com/

csm

Re: [shoes] Issue with packager/binject (x86_64)

From:
Devyn Cairns
Date:
2010-03-15 @ 21:15
Well, actually... as long as you run (I think) 'rake1.9' command it should
work okay. Either that, or it's 'rake19'. I don't know. I haven't used
Ubuntu in a long time. Most recently, I used Arch, now I'm on OS X.

On Mon, Mar 15, 2010 at 1:46 AM, Csomay Mihaly <list@csomay.hu> wrote:

> Cecil Coupe <ccoupe@cableone.net> writes:
>
> > My turn to report a problem.
> >
> > I rebuilt an my copy of shoes r1157 on my system  (Ubuntu 9.10, 64 bit)
> > and the packager works except for pointing to the wrong website. Rather
> > than fix that problem in an old version I thought I'd try the latest
> > shoes r1314.
> >
> > It compiled and it seems to runs but the packager segfaults
> > ccoupe@twb:~/Projects/shoes$ dist/shoes -p
> > /home/ccoupe/Projects/shoes/dist/lib/shoes/pack.rb:85: [BUG]
> > Segmentation fault
> > ruby 1.8.7 (2009-06-12 patchlevel 174) [x86_64-linux]
> >
> > dist/shoes: line 22: 24643 Aborted                 LD_LIBRARY_PATH=
> > $APPPATH $APPPATH/shoes-bin "$@"
>
> It's probably the same problem I had, you have to comment out the
> ruby_sysinit call in shoes/world.c, see the comment here:
>
> http://github.com/shoes/shoes/commit/1fc71d0f4343f7adb740aed59b90ef93024ef5b6
>
> > Further both ruby 1.8.7 and 1.9 are installed but 1.8.7 is the active
> > one - an Ubuntu thing. Can that confuse the rakefile so it builds
> > binject improperly?
>
> Why don't you use rvm if you have/want multiple versions of ruby?
> http://rvm.beginrescueend.com/
>
> csm
>



-- 
   ~devyn

Re: [shoes] Issue with packager/binject (x86_64)

From:
Cecil Coupe
Date:
2010-03-16 @ 01:24
I managed to get Ruby 1.9.1 installed on Ubuntu 9.10 along with 1.8.7
Good hint for the Ubuntu crowd at:
http://michalf.me/blog:make-ruby-1-9-default-on-ubuntu-9-10-karmic-koala

Bad news using Ruby 1.9.1:  Shoes (r1314) compiles (with more warnings
than 1.8.7) and segfaults. Applied the sysinit patches mentioned
previously, Now it starts up. I loaded my script and things were working
until I got a error in the console 'invalid byte sequence:US-ASCII' It's
possible that the file I was reading is bad UTF-8 so that could be my
problem (and a very nasty one to find and fix) or a ruby 1.9.1 issue.

Trying 'shoes -p' to package the script brought up a blank window and a
shoes console message 'Uninitialized constant Shoes::App:I_NET' so I
never got the point of running the packager to see if binject dies.

At least I know how switch between ruby versions the Ubuntu way.


On Mon, 2010-03-15 at 14:15 -0700, Devyn Cairns wrote:
> Well, actually... as long as you run (I think) 'rake1.9' command it
> should work okay. Either that, or it's 'rake19'. I don't know. I
> haven't used Ubuntu in a long time. Most recently, I used Arch, now
> I'm on OS X.
> 
> On Mon, Mar 15, 2010 at 1:46 AM, Csomay Mihaly <list@csomay.hu> wrote:
>         Cecil Coupe <ccoupe@cableone.net> writes:
>         
>         > My turn to report a problem.
>         >
>         > I rebuilt an my copy of shoes r1157 on my system  (Ubuntu
>         9.10, 64 bit)
>         > and the packager works except for pointing to the wrong
>         website. Rather
>         > than fix that problem in an old version I thought I'd try
>         the latest
>         > shoes r1314.
>         >
>         > It compiled and it seems to runs but the packager segfaults
>         > ccoupe@twb:~/Projects/shoes$ dist/shoes -p
>         > /home/ccoupe/Projects/shoes/dist/lib/shoes/pack.rb:85: [BUG]
>         > Segmentation fault
>         > ruby 1.8.7 (2009-06-12 patchlevel 174) [x86_64-linux]
>         >
>         > dist/shoes: line 22: 24643 Aborted
>         LD_LIBRARY_PATH=
>         > $APPPATH $APPPATH/shoes-bin "$@"
>         
>         
>         It's probably the same problem I had, you have to comment out
>         the
>         ruby_sysinit call in shoes/world.c, see the comment here:
>         
http://github.com/shoes/shoes/commit/1fc71d0f4343f7adb740aed59b90ef93024ef5b6
>         
>         > Further both ruby 1.8.7 and 1.9 are installed but 1.8.7 is
>         the active
>         > one - an Ubuntu thing. Can that confuse the rakefile so it
>         builds
>         > binject improperly?
>         
>         
>         Why don't you use rvm if you have/want multiple versions of
>         ruby?
>         http://rvm.beginrescueend.com/
>         
>         csm
> 
> 
> 
> -- 
>    ~devyn

Re: [shoes] Issue with packager/binject (x86_64)

From:
Cecil Coupe
Date:
2010-03-16 @ 05:17
I don't like replying to myself, but... Back to my packager problems.
I suspect that I_NET (a ruby constant in lib/shoes/pack.rb ) is why
Shoes r1314 segfaults when compiled and run with 1.8.7 and packaging and
tosses a shoes uninitialized constant error in when compiled and run
with ruby 1.9.1 and packaging. Those constant declares could be out of
scope depending on the path one takes through the GUI and which version
of Ruby is used. 

Am I in some twisty passages, all the same.

On Mon, 2010-03-15 at 19:24 -0600, Cecil Coupe wrote:
> Trying 'shoes -p' to package the script brought up a blank window and
> a
> shoes console message 'Uninitialized constant Shoes::App:I_NET' so I
> never got the point of running the packager to see if binject dies.