Squeak VM for Darwin/X11R6 for PPC?

John M McIntosh johnmci at smalltalkconsulting.com
Sat Mar 9 21:30:40 UTC 2002


>Hi!
>
>Anyone out there have a binary of the Squeak VM for Darwin/PPC using
>X11R6, rather than for Carbon/Cocoa?  Using the tarball from Lex's size
>(squeak-3.2.4653.orig.tgz), it seems there are problems compiling the mpeg
>plugin and the fileplugin.
>
>File plugin dies with:
>../platforms/unix/misc/../../../platforms/Cross/plugins/FilePlugin/sqFilePluginBasicPrims.c:258:
>invalid type argument of `->'

Ah is that

  	if (sqFTruncate(fileno(f->file),offset)) {


It's a bit magical right here to help truncate unaware unmentionable 
operating systems lie about file truncation.

I see in sq.h
#define sqFTruncate(filenum, fileoffset) true

That lies by default.


#ifdef macintoshSqueak has

#undef sqFTruncate
#define sqFTruncate(f,o) ftruncate(f, o)

but somehow I doubt you are getting the macintoshSqueak defined.

so you must be getting the unix one?

#undef sqFTruncate
#define sqFTruncate(fp, offs) ftruncate(fileno(fp),offs)


But I'm a bit confused here because the code here reads 
sqFTruncate(fileno(f->file),offset) *AND* the #define has fileno in 
it too!!!!

So maybe one of the Unix folks can tell me why it compiles on 
Linux????? I see Tim has a comment about dropping the fileno in 
sqFilePluginBasicPrims.c but that appears to be incorrect. Mind I 
seem to have check it? Surely it's been compiled on Linux machines by 
now?

Try changing the
if (sqFTruncate(fileno(f->file),offset)) {

to
if (sqFTruncate(f->file,offset)) {

but we'll need to review why it's not been a reported issue.


So what's the problem with the mpeg plugin?
-- 
--
===========================================================================
John M. McIntosh <johnmci at smalltalkconsulting.com> 1-800-477-2659
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
===========================================================================



More information about the Squeak-dev mailing list