Hello,

I posted here a few months ago about trying to get inline octave to work.
I received good inital feedback, but I am still stuck.

I know that i have inline installed as i can use inline c.  I am using
inline-octave-0.21

i am pretty sure i have inline octave installed.  My initial error when
running an inline octave perl script was:
I currently only know about the following languages:
    C, Foo, c, foo
etc.

To fix this i put the Octave.pm file in a location where i think makes
inline happy (ie. i don't see the above error message anymore).

However when i run nmake test  the first test hangs.

I have put print STDERR everywhere in the Octave.pm file to see where my
problem is.

I have pinpointed the problem (problem might not be the best word) to be
in  sub interpret
I think this routine is called from the sub load.

sub interpret {
...
...

   my $input;
   my $marker_len= length( $marker )+1;
   print STDERR "select can_read is $select\n";
   while ( 1 ) {
           #print STDERR "inside while loop\n";
      for my $fh ( $select->can_read() ) {
      print STDERR "inside for loop\n";
          if ($fh eq $Oerr) {
              process_errors();
          } else {
              sysread $fh, (my $line), 16386;
              $input.= $line;
              # delay if we're reading nothing, not sure why select
doesn't block
              select undef, undef, undef, 0.5 unless $line;
          }
      }
      last if substr( $input, -$marker_len, -1) eq $marker;
   }

...

what seems to be happening is that i enter this while loop and it never
leaves.  Actually the print in the for loop never prints, so the
$select->can_read() might not be returning anything

Any help would be greatly appreciated.

Thanks,
paul






Reply via email to