FFI load script no longer works .... (Re: [squeak-dev] ODBC package and mySQL driver for 4.4?)

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

FFI load script no longer works .... (Re: [squeak-dev] ODBC package and mySQL driver for 4.4?)

Hannes Hirzel
Benoit,

yes, indeed,

(Installer repository: 'http://source.squeak.org/FFI')
  install: 'FFI-Pools';
  install: 'FFI-Kernel';
  install: 'FFI-Tests';
  install: 'FFI-Win32';
  install: 'FFI-MacOS';
  install: 'FFI-Unix'.

No longer works with 4.4-12320.

It used to work two or three months ago...

--Hannes

--Hannes

On 12/21/12, Benoit St-Jean <[hidden email]> wrote:

> Hi Hannes,
>
> Just tried what you told me...  Well, there's a MNU when loading in 4.4.
> Here's the stack:
>
> -----------------------------------------------------------------------------------------
>
> To: [hidden email]
> Subject: [BUG]ClassBuilder(Object)>>error:
>
> here insert explanation of what you were doing, suspect changes you've made
> and so forth.
>
> 21 December 2012 5:31:33.375 pm
>
> VM: Win32 - Smalltalk
> Image: Squeak4.3 [latest update: #11864]
>
> SecurityManager state:
> Restricted: false
> FileAccess: true
> SocketAccess: true
> Working Dir C:\Data\Squeak\Squeak 4.3 All-In-One\Contents\Resources
> Trusted Dir C:\Data\Squeak\Squeak 4.3 All-In-One\Contents\Resources\Benoit
> St-Jean
> Untrusted Dir C:\Documents and Settings\Benoit St-Jean\My Documents\My
> Squeak
>
> ClassBuilder(Object)>>error:
>     Receiver: a ClassBuilder
>     Arguments and temporary variables:
>         aString:     'WS is multiply defined'
>     Receiver's instance variables:
>         environ:     Smalltalk globals "a SystemDictionary with lots of
> globals"
>         classMap:     nil
>         instVarMap:     an IdentityDictionary()
>         progress:     nil
>         maxClassIndex:     nil
>         currentClassIndex:     nil
>
> ClassBuilder>>validateClassvars:from:forSuper:
>     Receiver: a ClassBuilder
>     Arguments and temporary variables:
> <<error during printing>
>     Receiver's instance variables:
>         environ:     Smalltalk globals "a SystemDictionary with lots of
> globals"
>         classMap:     nil
>         instVarMap:     an IdentityDictionary()
>         progress:     nil
>         maxClassIndex:     nil
>         currentClassIndex:     nil
>
> [] in
> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classVariableNames:poolDictionaries:category:unsafe:
>     Receiver: a ClassBuilder
>     Arguments and temporary variables:
> <<error during printing>
>     Receiver's instance variables:
>         environ:     Smalltalk globals "a SystemDictionary with lots of
> globals"
>         classMap:     nil
>         instVarMap:     an IdentityDictionary()
>         progress:     nil
>         maxClassIndex:     nil
>         currentClassIndex:     nil
>
> BlockClosure>>ensure:
>     Receiver: [closure] in
> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classV...etc...
>     Arguments and temporary variables:
>         aBlock:     [closure] in
> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceV...etc...
>         complete:     nil
>         returnValue:     nil
>     Receiver's instance variables:
>         outerContext:
> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariable...etc...
>         startpc:     332
>         numArgs:     0
>
> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classVariableNames:poolDictionaries:category:unsafe:
>     Receiver: a ClassBuilder
>     Arguments and temporary variables:
>         className:     #Win32Constants
>         env:     Smalltalk globals "a SystemDictionary with lots of globals"
>         newSuper:     SharedPool
>         type:     #normal
>         instVarString:     ''
>         classVarString:     'COLOR_ACTIVEBORDER COLOR_ACTIVECAPTION
> COLOR_APPWORKSPACE COLO...etc...
>         poolString:     ''
>         category:     #'FFI-Win32-Examples'
>         unsafe:     false
>         oldClass:     nil
>         instVars:     #()
>         classVars:     #(#COLOR #ACTIVEBORDER #COLOR #ACTIVECAPTION #COLOR
> #APPWORKSPACE #C...etc...
>         copyOfOldClass:     nil
>         newClass:     #(nil)
>     Receiver's instance variables:
>         environ:     Smalltalk globals "a SystemDictionary with lots of
> globals"
>         classMap:     nil
>         instVarMap:     an IdentityDictionary()
>         progress:     nil
>         maxClassIndex:     nil
>         currentClassIndex:     nil
>
> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classVariableNames:poolDictionaries:category:
>     Receiver: a ClassBuilder
>     Arguments and temporary variables:
>         className:     #Win32Constants
>         env:     Smalltalk globals "a SystemDictionary with lots of globals"
>         newSuper:     SharedPool
>         type:     #normal
>         instVarString:     ''
>         classVarString:     'COLOR_ACTIVEBORDER COLOR_ACTIVECAPTION
> COLOR_APPWORKSPACE COLO...etc...
>         poolString:     ''
>         category:     #'FFI-Win32-Examples'
>     Receiver's instance variables:
>         environ:     Smalltalk globals "a SystemDictionary with lots of
> globals"
>         classMap:     nil
>         instVarMap:     an IdentityDictionary()
>         progress:     nil
>         maxClassIndex:     nil
>         currentClassIndex:     nil
>
> [] in MCClassDefinition>>createClass
>     Receiver: a MCClassDefinition(Win32Constants)
>     Arguments and temporary variables:
> <<error during printing>
>     Receiver's instance variables:
>         name:     #Win32Constants
>         superclassName:     #SharedPool
>         variables:     an OrderedCollection(a
> MCClassVariableDefinition(COLOR_ACTIVEBORDER)...etc...
>         category:     #'FFI-Win32-Examples'
>         type:     #normal
>         comment:     ''
>         commentStamp:     ''
>         traitComposition:     nil
>         classTraitComposition:     nil
>
> BlockClosure>>on:do:
>     Receiver: [closure] in MCClassDefinition>>createClass
>     Arguments and temporary variables:
>         exception:     an ExceptionSet
>         handlerAction:     [closure] in MCClassDefinition>>createClass
>         handlerActive:     true
>     Receiver's instance variables:
>         outerContext:     MCClassDefinition>>createClass
>         startpc:     120
>         numArgs:     0
>
> MCClassDefinition>>createClass
>     Receiver: a MCClassDefinition(Win32Constants)
>     Arguments and temporary variables:
>         superClass:     SharedPool
>         composition:     nil
>         class:     #(nil)
>     Receiver's instance variables:
>         name:     #Win32Constants
>         superclassName:     #SharedPool
>         variables:     an OrderedCollection(a
> MCClassVariableDefinition(COLOR_ACTIVEBORDER)...etc...
>         category:     #'FFI-Win32-Examples'
>         type:     #normal
>         comment:     ''
>         commentStamp:     ''
>         traitComposition:     nil
>         classTraitComposition:     nil
>
> MCClassDefinition>>load
>     Receiver: a MCClassDefinition(Win32Constants)
>     Arguments and temporary variables:
>         class:     nil
>     Receiver's instance variables:
>         name:     #Win32Constants
>         superclassName:     #SharedPool
>         variables:     an OrderedCollection(a
> MCClassVariableDefinition(COLOR_ACTIVEBORDER)...etc...
>         category:     #'FFI-Win32-Examples'
>         type:     #normal
>         comment:     ''
>         commentStamp:     ''
>         traitComposition:     nil
>         classTraitComposition:     nil
>
> [] in [] in [] in MCPackageLoader>>basicLoad
>     Receiver: a MCPackageLoader
>     Arguments and temporary variables:
> <<error during printing>
>     Receiver's instance variables:
>         requirements:     #()
>         unloadableDefinitions:     a SortedCollection()
>         obsoletions:     a Dictionary()
>         additions:     an OrderedCollection(a
> MCOrganizationDefinition(#(#'FFI-Win32-Exampl...etc...
>         removals:     an OrderedCollection()
>         errorDefinitions:     an OrderedCollection(a
> MCClassDefinition(Win32Constants))
>         provisions:     a Set(#UpdatingRectangleMorph #FormTest
> #SystemDictionary #HSVColor...etc...
>         methodAdditions:     an OrderedCollection(a MethodAddition a
> MethodAddition a Metho...etc...
>
> [] in [] in OrderedCollection(Collection)>>do:displayingProgress:every:
>     Receiver: an OrderedCollection(a MCClassDefinition(Win32Constants))
>     Arguments and temporary variables:
> <<error during printing>
>     Receiver's instance variables:
>         array:     {a MCClassDefinition(Win32Constants) . nil . nil . nil .
> nil . nil . nil...etc...
>         firstIndex:     1
>         lastIndex:     1
>
> OrderedCollection>>do:
>     Receiver: an OrderedCollection(a MCClassDefinition(Win32Constants))
>     Arguments and temporary variables:
>         aBlock:     [closure] in [] in
> OrderedCollection(Collection)>>do:displayingProgress...etc...
>         index:     1
>     Receiver's instance variables:
>         array:     {a MCClassDefinition(Win32Constants) . nil . nil . nil .
> nil . nil . nil...etc...
>         firstIndex:     1
>         lastIndex:     1
>
> [] in OrderedCollection(Collection)>>do:displayingProgress:every:
>     Receiver: an OrderedCollection(a MCClassDefinition(Win32Constants))
>     Arguments and temporary variables:
> <<error during printing>
>     Receiver's instance variables:
>         array:     {a MCClassDefinition(Win32Constants) . nil . nil . nil .
> nil . nil . nil...etc...
>         firstIndex:     1
>         lastIndex:     1
>
> [] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
>     Receiver: a MorphicUIManager
>     Arguments and temporary variables:
> <<error during printing>
>     Receiver's instance variables:
>         toolBuilder:     nil
>
> BlockClosure>>on:do:
>     Receiver: [closure] in [] in
> MorphicUIManager>>displayProgress:at:from:to:during:
>     Arguments and temporary variables:
>         exception:     ProgressNotification
>         handlerAction:     [closure] in [] in
> MorphicUIManager>>displayProgress:at:from:to:...etc...
>         handlerActive:     true
>     Receiver's instance variables:
>         outerContext:     [] in
> MorphicUIManager>>displayProgress:at:from:to:during:
>         startpc:     86
>         numArgs:     0
>
> [] in MorphicUIManager>>displayProgress:at:from:to:during:
>     Receiver: a MorphicUIManager
>     Arguments and temporary variables:
> <<error during printing>
>     Receiver's instance variables:
>         toolBuilder:     nil
>
> BlockClosure>>ensure:
>     Receiver: [closure] in
> MorphicUIManager>>displayProgress:at:from:to:during:
>     Arguments and temporary variables:
>         aBlock:     [closure] in
> MorphicUIManager>>displayProgress:at:from:to:during:
>         complete:     nil
>         returnValue:     nil
>     Receiver's instance variables:
>         outerContext:
> MorphicUIManager>>displayProgress:at:from:to:during:
>         startpc:     79
>         numArgs:     0
>
> MorphicUIManager>>displayProgress:at:from:to:during:
>     Receiver: a MorphicUIManager
>     Arguments and temporary variables:
>         titleString:     ''
>         aPoint:     512@356
>         minVal:     0
>         maxVal:     1
>         workBlock:     [closure] in
> OrderedCollection(Collection)>>do:displayingProgress:ev...etc...
>         progress:     [closure] in
> SystemProgressMorph>>position:label:min:max:
>         result:     #(nil)
>     Receiver's instance variables:
>         toolBuilder:     nil
>
>
> --- The full stack ---
> ClassBuilder(Object)>>error:
> ClassBuilder>>validateClassvars:from:forSuper:
> [] in
> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classVariableNames:poolDictionaries:category:unsafe:
> BlockClosure>>ensure:
> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classVariableNames:poolDictionaries:category:unsafe:
> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classVariableNames:poolDictionaries:category:
> [] in MCClassDefinition>>createClass
> BlockClosure>>on:do:
> MCClassDefinition>>createClass
> MCClassDefinition>>load
> [] in [] in [] in MCPackageLoader>>basicLoad
> [] in [] in OrderedCollection(Collection)>>do:displayingProgress:every:
> OrderedCollection>>do:
> [] in OrderedCollection(Collection)>>do:displayingProgress:every:
> [] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
> BlockClosure>>on:do:
> [] in MorphicUIManager>>displayProgress:at:from:to:during:
> BlockClosure>>ensure:
> MorphicUIManager>>displayProgress:at:from:to:during:
>  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> ProgressInitiationException>>defaultResumeValue
> ProgressInitiationException(Exception)>>resume
> ProgressInitiationException>>defaultAction
> UndefinedObject>>handleSignal:
> MethodContext(ContextPart)>>handleSignal:
> MethodContext(ContextPart)>>handleSignal:
> MethodContext(ContextPart)>>handleSignal:
> MethodContext(ContextPart)>>handleSignal:
> ProgressInitiationException(Exception)>>signal
> ProgressInitiationException>>display:at:from:to:during:
> ProgressInitiationException class>>display:at:from:to:during:
> ByteString(String)>>displayProgressAt:from:to:during:
> ByteString(String)>>displayProgressFrom:to:during:
> OrderedCollection(Collection)>>do:displayingProgress:every:
> OrderedCollection(Collection)>>do:displayingProgress:
> [] in [] in MCPackageLoader>>basicLoad
> BlockClosure>>on:do:
> [] in MCPackageLoader>>basicLoad
> BlockClosure>>ensure:
> MCPackageLoader>>basicLoad
> [] in MCPackageLoader>>loadWithNameLike:
> BlockClosure>>ensure:
> MCPackageLoader>>useChangeSetNamed:during:
> MCPackageLoader>>useNewChangeSetNamedLike:during:
> MCPackageLoader>>loadWithNameLike:
> MCVersionLoader>>load
> [] in InstallerMonticello>>basicInstall
> BlockClosure>>on:do:
> BlockClosure>>valueSupplyingAnswers:
> BlockClosure>>valueSuppressingMessages:supplyingAnswers:
> InstallerMonticello(Installer)>>withAnswersDo:
> InstallerMonticello>>basicInstall
> [] in InstallerMonticello(Installer)>>installLogging
> InstallerMonticello(Installer)>>logErrorDuring:
> InstallerMonticello(Installer)>>installLogging
> InstallerMonticello(Installer)>>install
> InstallerMonticello(Installer)>>install:
> UndefinedObject>>DoIt
> Compiler>>evaluate:in:to:notifying:ifFail:logged:
> [] in SmalltalkEditor(TextEditor)>>evaluateSelectionAndDo:
> BlockClosure>>on:do:
> SmalltalkEditor(TextEditor)>>evaluateSelectionAndDo:
> -- and more not shown --
>
>
> -----------------------------------------------------------------------------------------
>
>
> -----------------
> Benoit St-Jean
> Yahoo! Messenger: bstjean
> A standpoint is an intellectual horizon of radius zero.
> (Albert Einstein)
>
>
>>________________________________
>> From: H. Hirzel <[hidden email]>
>>To: [hidden email]
>>Sent: Friday, December 21, 2012 4:16:12 PM
>>Subject: [squeak-dev] ODBC package and mySQL driver for 4.4?
>>
>>On 12/21/12, Benoit St-Jean <[hidden email]> wrote:
>>> The more urgent is the ODBC package.  We used to load it with a "prereq"
>>> of
>>> executing "ScriptLoader loadFFI" but the loadFFi method has vanished...
>>>
>>> Second items that is important, the MySQL Driver...  That one I have not
>>> tried yet...
>>
>>
>>For the FFI part
>>-----------------------
>>
>>To load the FFI see menu 'help' / 'extending the system' and there
>>
>>you find
>>
>>"FFI: http://source.squeak.org/FFI.html"
>>(Installer repository: 'http://source.squeak.org/FFI')
>>    install: 'FFI-Pools';
>>    install: 'FFI-Kernel';
>>    install: 'FFI-Tests';
>>    install: 'FFI-Win32';
>>    install: 'FFI-MacOS';
>>    install: 'FFI-Unix'.
>>
>>
>>--Hannes
>>
>>
>>
>>

Reply | Threaded
Open this post in threaded view
|

Re: FFI load script no longer works .... (Re: [squeak-dev] ODBC package and mySQL driver for 4.4?)

Frank Shearar-3
On 21 December 2012 22:46, H. Hirzel <[hidden email]> wrote:

> Benoit,
>
> yes, indeed,
>
> (Installer repository: 'http://source.squeak.org/FFI')
>   install: 'FFI-Pools';
>   install: 'FFI-Kernel';
>   install: 'FFI-Tests';
>   install: 'FFI-Win32';
>   install: 'FFI-MacOS';
>   install: 'FFI-Unix'.
>
> No longer works with 4.4-12320.
>
> It used to work two or three months ago...

You need the "allow underscore selectors" preference set to load the
FFI. I can't remember the magic to do that, but it ought to be part of
the install script.

frank

> --Hannes
>
> --Hannes
>
> On 12/21/12, Benoit St-Jean <[hidden email]> wrote:
>> Hi Hannes,
>>
>> Just tried what you told me...  Well, there's a MNU when loading in 4.4.
>> Here's the stack:
>>
>> -----------------------------------------------------------------------------------------
>>
>> To: [hidden email]
>> Subject: [BUG]ClassBuilder(Object)>>error:
>>
>> here insert explanation of what you were doing, suspect changes you've made
>> and so forth.
>>
>> 21 December 2012 5:31:33.375 pm
>>
>> VM: Win32 - Smalltalk
>> Image: Squeak4.3 [latest update: #11864]
>>
>> SecurityManager state:
>> Restricted: false
>> FileAccess: true
>> SocketAccess: true
>> Working Dir C:\Data\Squeak\Squeak 4.3 All-In-One\Contents\Resources
>> Trusted Dir C:\Data\Squeak\Squeak 4.3 All-In-One\Contents\Resources\Benoit
>> St-Jean
>> Untrusted Dir C:\Documents and Settings\Benoit St-Jean\My Documents\My
>> Squeak
>>
>> ClassBuilder(Object)>>error:
>>     Receiver: a ClassBuilder
>>     Arguments and temporary variables:
>>         aString:     'WS is multiply defined'
>>     Receiver's instance variables:
>>         environ:     Smalltalk globals "a SystemDictionary with lots of
>> globals"
>>         classMap:     nil
>>         instVarMap:     an IdentityDictionary()
>>         progress:     nil
>>         maxClassIndex:     nil
>>         currentClassIndex:     nil
>>
>> ClassBuilder>>validateClassvars:from:forSuper:
>>     Receiver: a ClassBuilder
>>     Arguments and temporary variables:
>> <<error during printing>
>>     Receiver's instance variables:
>>         environ:     Smalltalk globals "a SystemDictionary with lots of
>> globals"
>>         classMap:     nil
>>         instVarMap:     an IdentityDictionary()
>>         progress:     nil
>>         maxClassIndex:     nil
>>         currentClassIndex:     nil
>>
>> [] in
>> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classVariableNames:poolDictionaries:category:unsafe:
>>     Receiver: a ClassBuilder
>>     Arguments and temporary variables:
>> <<error during printing>
>>     Receiver's instance variables:
>>         environ:     Smalltalk globals "a SystemDictionary with lots of
>> globals"
>>         classMap:     nil
>>         instVarMap:     an IdentityDictionary()
>>         progress:     nil
>>         maxClassIndex:     nil
>>         currentClassIndex:     nil
>>
>> BlockClosure>>ensure:
>>     Receiver: [closure] in
>> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classV...etc...
>>     Arguments and temporary variables:
>>         aBlock:     [closure] in
>> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceV...etc...
>>         complete:     nil
>>         returnValue:     nil
>>     Receiver's instance variables:
>>         outerContext:
>> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariable...etc...
>>         startpc:     332
>>         numArgs:     0
>>
>> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classVariableNames:poolDictionaries:category:unsafe:
>>     Receiver: a ClassBuilder
>>     Arguments and temporary variables:
>>         className:     #Win32Constants
>>         env:     Smalltalk globals "a SystemDictionary with lots of globals"
>>         newSuper:     SharedPool
>>         type:     #normal
>>         instVarString:     ''
>>         classVarString:     'COLOR_ACTIVEBORDER COLOR_ACTIVECAPTION
>> COLOR_APPWORKSPACE COLO...etc...
>>         poolString:     ''
>>         category:     #'FFI-Win32-Examples'
>>         unsafe:     false
>>         oldClass:     nil
>>         instVars:     #()
>>         classVars:     #(#COLOR #ACTIVEBORDER #COLOR #ACTIVECAPTION #COLOR
>> #APPWORKSPACE #C...etc...
>>         copyOfOldClass:     nil
>>         newClass:     #(nil)
>>     Receiver's instance variables:
>>         environ:     Smalltalk globals "a SystemDictionary with lots of
>> globals"
>>         classMap:     nil
>>         instVarMap:     an IdentityDictionary()
>>         progress:     nil
>>         maxClassIndex:     nil
>>         currentClassIndex:     nil
>>
>> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classVariableNames:poolDictionaries:category:
>>     Receiver: a ClassBuilder
>>     Arguments and temporary variables:
>>         className:     #Win32Constants
>>         env:     Smalltalk globals "a SystemDictionary with lots of globals"
>>         newSuper:     SharedPool
>>         type:     #normal
>>         instVarString:     ''
>>         classVarString:     'COLOR_ACTIVEBORDER COLOR_ACTIVECAPTION
>> COLOR_APPWORKSPACE COLO...etc...
>>         poolString:     ''
>>         category:     #'FFI-Win32-Examples'
>>     Receiver's instance variables:
>>         environ:     Smalltalk globals "a SystemDictionary with lots of
>> globals"
>>         classMap:     nil
>>         instVarMap:     an IdentityDictionary()
>>         progress:     nil
>>         maxClassIndex:     nil
>>         currentClassIndex:     nil
>>
>> [] in MCClassDefinition>>createClass
>>     Receiver: a MCClassDefinition(Win32Constants)
>>     Arguments and temporary variables:
>> <<error during printing>
>>     Receiver's instance variables:
>>         name:     #Win32Constants
>>         superclassName:     #SharedPool
>>         variables:     an OrderedCollection(a
>> MCClassVariableDefinition(COLOR_ACTIVEBORDER)...etc...
>>         category:     #'FFI-Win32-Examples'
>>         type:     #normal
>>         comment:     ''
>>         commentStamp:     ''
>>         traitComposition:     nil
>>         classTraitComposition:     nil
>>
>> BlockClosure>>on:do:
>>     Receiver: [closure] in MCClassDefinition>>createClass
>>     Arguments and temporary variables:
>>         exception:     an ExceptionSet
>>         handlerAction:     [closure] in MCClassDefinition>>createClass
>>         handlerActive:     true
>>     Receiver's instance variables:
>>         outerContext:     MCClassDefinition>>createClass
>>         startpc:     120
>>         numArgs:     0
>>
>> MCClassDefinition>>createClass
>>     Receiver: a MCClassDefinition(Win32Constants)
>>     Arguments and temporary variables:
>>         superClass:     SharedPool
>>         composition:     nil
>>         class:     #(nil)
>>     Receiver's instance variables:
>>         name:     #Win32Constants
>>         superclassName:     #SharedPool
>>         variables:     an OrderedCollection(a
>> MCClassVariableDefinition(COLOR_ACTIVEBORDER)...etc...
>>         category:     #'FFI-Win32-Examples'
>>         type:     #normal
>>         comment:     ''
>>         commentStamp:     ''
>>         traitComposition:     nil
>>         classTraitComposition:     nil
>>
>> MCClassDefinition>>load
>>     Receiver: a MCClassDefinition(Win32Constants)
>>     Arguments and temporary variables:
>>         class:     nil
>>     Receiver's instance variables:
>>         name:     #Win32Constants
>>         superclassName:     #SharedPool
>>         variables:     an OrderedCollection(a
>> MCClassVariableDefinition(COLOR_ACTIVEBORDER)...etc...
>>         category:     #'FFI-Win32-Examples'
>>         type:     #normal
>>         comment:     ''
>>         commentStamp:     ''
>>         traitComposition:     nil
>>         classTraitComposition:     nil
>>
>> [] in [] in [] in MCPackageLoader>>basicLoad
>>     Receiver: a MCPackageLoader
>>     Arguments and temporary variables:
>> <<error during printing>
>>     Receiver's instance variables:
>>         requirements:     #()
>>         unloadableDefinitions:     a SortedCollection()
>>         obsoletions:     a Dictionary()
>>         additions:     an OrderedCollection(a
>> MCOrganizationDefinition(#(#'FFI-Win32-Exampl...etc...
>>         removals:     an OrderedCollection()
>>         errorDefinitions:     an OrderedCollection(a
>> MCClassDefinition(Win32Constants))
>>         provisions:     a Set(#UpdatingRectangleMorph #FormTest
>> #SystemDictionary #HSVColor...etc...
>>         methodAdditions:     an OrderedCollection(a MethodAddition a
>> MethodAddition a Metho...etc...
>>
>> [] in [] in OrderedCollection(Collection)>>do:displayingProgress:every:
>>     Receiver: an OrderedCollection(a MCClassDefinition(Win32Constants))
>>     Arguments and temporary variables:
>> <<error during printing>
>>     Receiver's instance variables:
>>         array:     {a MCClassDefinition(Win32Constants) . nil . nil . nil .
>> nil . nil . nil...etc...
>>         firstIndex:     1
>>         lastIndex:     1
>>
>> OrderedCollection>>do:
>>     Receiver: an OrderedCollection(a MCClassDefinition(Win32Constants))
>>     Arguments and temporary variables:
>>         aBlock:     [closure] in [] in
>> OrderedCollection(Collection)>>do:displayingProgress...etc...
>>         index:     1
>>     Receiver's instance variables:
>>         array:     {a MCClassDefinition(Win32Constants) . nil . nil . nil .
>> nil . nil . nil...etc...
>>         firstIndex:     1
>>         lastIndex:     1
>>
>> [] in OrderedCollection(Collection)>>do:displayingProgress:every:
>>     Receiver: an OrderedCollection(a MCClassDefinition(Win32Constants))
>>     Arguments and temporary variables:
>> <<error during printing>
>>     Receiver's instance variables:
>>         array:     {a MCClassDefinition(Win32Constants) . nil . nil . nil .
>> nil . nil . nil...etc...
>>         firstIndex:     1
>>         lastIndex:     1
>>
>> [] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
>>     Receiver: a MorphicUIManager
>>     Arguments and temporary variables:
>> <<error during printing>
>>     Receiver's instance variables:
>>         toolBuilder:     nil
>>
>> BlockClosure>>on:do:
>>     Receiver: [closure] in [] in
>> MorphicUIManager>>displayProgress:at:from:to:during:
>>     Arguments and temporary variables:
>>         exception:     ProgressNotification
>>         handlerAction:     [closure] in [] in
>> MorphicUIManager>>displayProgress:at:from:to:...etc...
>>         handlerActive:     true
>>     Receiver's instance variables:
>>         outerContext:     [] in
>> MorphicUIManager>>displayProgress:at:from:to:during:
>>         startpc:     86
>>         numArgs:     0
>>
>> [] in MorphicUIManager>>displayProgress:at:from:to:during:
>>     Receiver: a MorphicUIManager
>>     Arguments and temporary variables:
>> <<error during printing>
>>     Receiver's instance variables:
>>         toolBuilder:     nil
>>
>> BlockClosure>>ensure:
>>     Receiver: [closure] in
>> MorphicUIManager>>displayProgress:at:from:to:during:
>>     Arguments and temporary variables:
>>         aBlock:     [closure] in
>> MorphicUIManager>>displayProgress:at:from:to:during:
>>         complete:     nil
>>         returnValue:     nil
>>     Receiver's instance variables:
>>         outerContext:
>> MorphicUIManager>>displayProgress:at:from:to:during:
>>         startpc:     79
>>         numArgs:     0
>>
>> MorphicUIManager>>displayProgress:at:from:to:during:
>>     Receiver: a MorphicUIManager
>>     Arguments and temporary variables:
>>         titleString:     ''
>>         aPoint:     512@356
>>         minVal:     0
>>         maxVal:     1
>>         workBlock:     [closure] in
>> OrderedCollection(Collection)>>do:displayingProgress:ev...etc...
>>         progress:     [closure] in
>> SystemProgressMorph>>position:label:min:max:
>>         result:     #(nil)
>>     Receiver's instance variables:
>>         toolBuilder:     nil
>>
>>
>> --- The full stack ---
>> ClassBuilder(Object)>>error:
>> ClassBuilder>>validateClassvars:from:forSuper:
>> [] in
>> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classVariableNames:poolDictionaries:category:unsafe:
>> BlockClosure>>ensure:
>> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classVariableNames:poolDictionaries:category:unsafe:
>> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classVariableNames:poolDictionaries:category:
>> [] in MCClassDefinition>>createClass
>> BlockClosure>>on:do:
>> MCClassDefinition>>createClass
>> MCClassDefinition>>load
>> [] in [] in [] in MCPackageLoader>>basicLoad
>> [] in [] in OrderedCollection(Collection)>>do:displayingProgress:every:
>> OrderedCollection>>do:
>> [] in OrderedCollection(Collection)>>do:displayingProgress:every:
>> [] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
>> BlockClosure>>on:do:
>> [] in MorphicUIManager>>displayProgress:at:from:to:during:
>> BlockClosure>>ensure:
>> MorphicUIManager>>displayProgress:at:from:to:during:
>>  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
>> ProgressInitiationException>>defaultResumeValue
>> ProgressInitiationException(Exception)>>resume
>> ProgressInitiationException>>defaultAction
>> UndefinedObject>>handleSignal:
>> MethodContext(ContextPart)>>handleSignal:
>> MethodContext(ContextPart)>>handleSignal:
>> MethodContext(ContextPart)>>handleSignal:
>> MethodContext(ContextPart)>>handleSignal:
>> ProgressInitiationException(Exception)>>signal
>> ProgressInitiationException>>display:at:from:to:during:
>> ProgressInitiationException class>>display:at:from:to:during:
>> ByteString(String)>>displayProgressAt:from:to:during:
>> ByteString(String)>>displayProgressFrom:to:during:
>> OrderedCollection(Collection)>>do:displayingProgress:every:
>> OrderedCollection(Collection)>>do:displayingProgress:
>> [] in [] in MCPackageLoader>>basicLoad
>> BlockClosure>>on:do:
>> [] in MCPackageLoader>>basicLoad
>> BlockClosure>>ensure:
>> MCPackageLoader>>basicLoad
>> [] in MCPackageLoader>>loadWithNameLike:
>> BlockClosure>>ensure:
>> MCPackageLoader>>useChangeSetNamed:during:
>> MCPackageLoader>>useNewChangeSetNamedLike:during:
>> MCPackageLoader>>loadWithNameLike:
>> MCVersionLoader>>load
>> [] in InstallerMonticello>>basicInstall
>> BlockClosure>>on:do:
>> BlockClosure>>valueSupplyingAnswers:
>> BlockClosure>>valueSuppressingMessages:supplyingAnswers:
>> InstallerMonticello(Installer)>>withAnswersDo:
>> InstallerMonticello>>basicInstall
>> [] in InstallerMonticello(Installer)>>installLogging
>> InstallerMonticello(Installer)>>logErrorDuring:
>> InstallerMonticello(Installer)>>installLogging
>> InstallerMonticello(Installer)>>install
>> InstallerMonticello(Installer)>>install:
>> UndefinedObject>>DoIt
>> Compiler>>evaluate:in:to:notifying:ifFail:logged:
>> [] in SmalltalkEditor(TextEditor)>>evaluateSelectionAndDo:
>> BlockClosure>>on:do:
>> SmalltalkEditor(TextEditor)>>evaluateSelectionAndDo:
>> -- and more not shown --
>>
>>
>> -----------------------------------------------------------------------------------------
>>
>>
>> -----------------
>> Benoit St-Jean
>> Yahoo! Messenger: bstjean
>> A standpoint is an intellectual horizon of radius zero.
>> (Albert Einstein)
>>
>>
>>>________________________________
>>> From: H. Hirzel <[hidden email]>
>>>To: [hidden email]
>>>Sent: Friday, December 21, 2012 4:16:12 PM
>>>Subject: [squeak-dev] ODBC package and mySQL driver for 4.4?
>>>
>>>On 12/21/12, Benoit St-Jean <[hidden email]> wrote:
>>>> The more urgent is the ODBC package.  We used to load it with a "prereq"
>>>> of
>>>> executing "ScriptLoader loadFFI" but the loadFFi method has vanished...
>>>>
>>>> Second items that is important, the MySQL Driver...  That one I have not
>>>> tried yet...
>>>
>>>
>>>For the FFI part
>>>-----------------------
>>>
>>>To load the FFI see menu 'help' / 'extending the system' and there
>>>
>>>you find
>>>
>>>"FFI: http://source.squeak.org/FFI.html"
>>>(Installer repository: 'http://source.squeak.org/FFI')
>>>    install: 'FFI-Pools';
>>>    install: 'FFI-Kernel';
>>>    install: 'FFI-Tests';
>>>    install: 'FFI-Win32';
>>>    install: 'FFI-MacOS';
>>>    install: 'FFI-Unix'.
>>>
>>>
>>>--Hannes
>>>
>>>
>>>
>>>
>

Reply | Threaded
Open this post in threaded view
|

Re: FFI load script no longer works .... (Re: [squeak-dev] ODBC package and mySQL driver for 4.4?)

Benoit St-Jean
Thanks Hannes, it worked!

 
-----------------
Benoit St-Jean
Yahoo! Messenger: bstjean
A standpoint is an intellectual horizon of radius zero.
(Albert Einstein)

From: Frank Shearar <[hidden email]>
To: The general-purpose Squeak developers list <[hidden email]>
Sent: Friday, December 21, 2012 5:58:17 PM
Subject: Re: FFI load script no longer works .... (Re: [squeak-dev] ODBC package and mySQL driver for 4.4?)

On 21 December 2012 22:46, H. Hirzel <[hidden email]> wrote:

> Benoit,
>
> yes, indeed,
>
> (Installer repository: 'http://source.squeak.org/FFI')
>  install: 'FFI-Pools';
>  install: 'FFI-Kernel';
>  install: 'FFI-Tests';
>  install: 'FFI-Win32';
>  install: 'FFI-MacOS';
>  install: 'FFI-Unix'.
>
> No longer works with 4.4-12320.
>
> It used to work two or three months ago...

You need the "allow underscore selectors" preference set to load the
FFI. I can't remember the magic to do that, but it ought to be part of
the install script.

frank

> --Hannes
>
> --Hannes
>
> On 12/21/12, Benoit St-Jean <[hidden email]> wrote:
>> Hi Hannes,
>>
>> Just tried what you told me...  Well, there's a MNU when loading in 4.4.
>> Here's the stack:
>>
>> -----------------------------------------------------------------------------------------
>>
>> To: [hidden email]
>> Subject: [BUG]ClassBuilder(Object)>>error:
>>
>> here insert explanation of what you were doing, suspect changes you've made
>> and so forth.
>>
>> 21 December 2012 5:31:33.375 pm
>>
>> VM: Win32 - Smalltalk
>> Image: Squeak4.3 [latest update: #11864]
>>
>> SecurityManager state:
>> Restricted: false
>> FileAccess: true
>> SocketAccess: true
>> Working Dir C:\Data\Squeak\Squeak 4.3 All-In-One\Contents\Resources
>> Trusted Dir C:\Data\Squeak\Squeak 4.3 All-In-One\Contents\Resources\Benoit
>> St-Jean
>> Untrusted Dir C:\Documents and Settings\Benoit St-Jean\My Documents\My
>> Squeak
>>
>> ClassBuilder(Object)>>error:
>>    Receiver: a ClassBuilder
>>    Arguments and temporary variables:
>>        aString:    'WS is multiply defined'
>>    Receiver's instance variables:
>>        environ:    Smalltalk globals "a SystemDictionary with lots of
>> globals"
>>        classMap:    nil
>>        instVarMap:    an IdentityDictionary()
>>        progress:    nil
>>        maxClassIndex:    nil
>>        currentClassIndex:    nil
>>
>> ClassBuilder>>validateClassvars:from:forSuper:
>>    Receiver: a ClassBuilder
>>    Arguments and temporary variables:
>> <<error during printing>
>>    Receiver's instance variables:
>>        environ:    Smalltalk globals "a SystemDictionary with lots of
>> globals"
>>        classMap:    nil
>>        instVarMap:    an IdentityDictionary()
>>        progress:    nil
>>        maxClassIndex:    nil
>>        currentClassIndex:    nil
>>
>> [] in
>> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classVariableNames:poolDictionaries:category:unsafe:
>>    Receiver: a ClassBuilder
>>    Arguments and temporary variables:
>> <<error during printing>
>>    Receiver's instance variables:
>>        environ:    Smalltalk globals "a SystemDictionary with lots of
>> globals"
>>        classMap:    nil
>>        instVarMap:    an IdentityDictionary()
>>        progress:    nil
>>        maxClassIndex:    nil
>>        currentClassIndex:    nil
>>
>> BlockClosure>>ensure:
>>    Receiver: [closure] in
>> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classV...etc...
>>    Arguments and temporary variables:
>>        aBlock:    [closure] in
>> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceV...etc...
>>        complete:    nil
>>        returnValue:    nil
>>    Receiver's instance variables:
>>        outerContext:
>> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariable...etc...
>>        startpc:    332
>>        numArgs:    0
>>
>> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classVariableNames:poolDictionaries:category:unsafe:
>>    Receiver: a ClassBuilder
>>    Arguments and temporary variables:
>>        className:    #Win32Constants
>>        env:    Smalltalk globals "a SystemDictionary with lots of globals"
>>        newSuper:    SharedPool
>>        type:    #normal
>>        instVarString:    ''
>>        classVarString:    'COLOR_ACTIVEBORDER COLOR_ACTIVECAPTION
>> COLOR_APPWORKSPACE COLO...etc...
>>        poolString:    ''
>>        category:    #'FFI-Win32-Examples'
>>        unsafe:    false
>>        oldClass:    nil
>>        instVars:    #()
>>        classVars:    #(#COLOR #ACTIVEBORDER #COLOR #ACTIVECAPTION #COLOR
>> #APPWORKSPACE #C...etc...
>>        copyOfOldClass:    nil
>>        newClass:    #(nil)
>>    Receiver's instance variables:
>>        environ:    Smalltalk globals "a SystemDictionary with lots of
>> globals"
>>        classMap:    nil
>>        instVarMap:    an IdentityDictionary()
>>        progress:    nil
>>        maxClassIndex:    nil
>>        currentClassIndex:    nil
>>
>> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classVariableNames:poolDictionaries:category:
>>    Receiver: a ClassBuilder
>>    Arguments and temporary variables:
>>        className:    #Win32Constants
>>        env:    Smalltalk globals "a SystemDictionary with lots of globals"
>>        newSuper:    SharedPool
>>        type:    #normal
>>        instVarString:    ''
>>        classVarString:    'COLOR_ACTIVEBORDER COLOR_ACTIVECAPTION
>> COLOR_APPWORKSPACE COLO...etc...
>>        poolString:    ''
>>        category:    #'FFI-Win32-Examples'
>>    Receiver's instance variables:
>>        environ:    Smalltalk globals "a SystemDictionary with lots of
>> globals"
>>        classMap:    nil
>>        instVarMap:    an IdentityDictionary()
>>        progress:    nil
>>        maxClassIndex:    nil
>>        currentClassIndex:    nil
>>
>> [] in MCClassDefinition>>createClass
>>    Receiver: a MCClassDefinition(Win32Constants)
>>    Arguments and temporary variables:
>> <<error during printing>
>>    Receiver's instance variables:
>>        name:    #Win32Constants
>>        superclassName:    #SharedPool
>>        variables:    an OrderedCollection(a
>> MCClassVariableDefinition(COLOR_ACTIVEBORDER)...etc...
>>        category:    #'FFI-Win32-Examples'
>>        type:    #normal
>>        comment:    ''
>>        commentStamp:    ''
>>        traitComposition:    nil
>>        classTraitComposition:    nil
>>
>> BlockClosure>>on:do:
>>    Receiver: [closure] in MCClassDefinition>>createClass
>>    Arguments and temporary variables:
>>        exception:    an ExceptionSet
>>        handlerAction:    [closure] in MCClassDefinition>>createClass
>>        handlerActive:    true
>>    Receiver's instance variables:
>>        outerContext:    MCClassDefinition>>createClass
>>        startpc:    120
>>        numArgs:    0
>>
>> MCClassDefinition>>createClass
>>    Receiver: a MCClassDefinition(Win32Constants)
>>    Arguments and temporary variables:
>>        superClass:    SharedPool
>>        composition:    nil
>>        class:    #(nil)
>>    Receiver's instance variables:
>>        name:    #Win32Constants
>>        superclassName:    #SharedPool
>>        variables:    an OrderedCollection(a
>> MCClassVariableDefinition(COLOR_ACTIVEBORDER)...etc...
>>        category:    #'FFI-Win32-Examples'
>>        type:    #normal
>>        comment:    ''
>>        commentStamp:    ''
>>        traitComposition:    nil
>>        classTraitComposition:    nil
>>
>> MCClassDefinition>>load
>>    Receiver: a MCClassDefinition(Win32Constants)
>>    Arguments and temporary variables:
>>        class:    nil
>>    Receiver's instance variables:
>>        name:    #Win32Constants
>>        superclassName:    #SharedPool
>>        variables:    an OrderedCollection(a
>> MCClassVariableDefinition(COLOR_ACTIVEBORDER)...etc...
>>        category:    #'FFI-Win32-Examples'
>>        type:    #normal
>>        comment:    ''
>>        commentStamp:    ''
>>        traitComposition:    nil
>>        classTraitComposition:    nil
>>
>> [] in [] in [] in MCPackageLoader>>basicLoad
>>    Receiver: a MCPackageLoader
>>    Arguments and temporary variables:
>> <<error during printing>
>>    Receiver's instance variables:
>>        requirements:    #()
>>        unloadableDefinitions:    a SortedCollection()
>>        obsoletions:    a Dictionary()
>>        additions:    an OrderedCollection(a
>> MCOrganizationDefinition(#(#'FFI-Win32-Exampl...etc...
>>        removals:    an OrderedCollection()
>>        errorDefinitions:    an OrderedCollection(a
>> MCClassDefinition(Win32Constants))
>>        provisions:    a Set(#UpdatingRectangleMorph #FormTest
>> #SystemDictionary #HSVColor...etc...
>>        methodAdditions:    an OrderedCollection(a MethodAddition a
>> MethodAddition a Metho...etc...
>>
>> [] in [] in OrderedCollection(Collection)>>do:displayingProgress:every:
>>    Receiver: an OrderedCollection(a MCClassDefinition(Win32Constants))
>>    Arguments and temporary variables:
>> <<error during printing>
>>    Receiver's instance variables:
>>        array:    {a MCClassDefinition(Win32Constants) . nil . nil . nil .
>> nil . nil . nil...etc...
>>        firstIndex:    1
>>        lastIndex:    1
>>
>> OrderedCollection>>do:
>>    Receiver: an OrderedCollection(a MCClassDefinition(Win32Constants))
>>    Arguments and temporary variables:
>>        aBlock:    [closure] in [] in
>> OrderedCollection(Collection)>>do:displayingProgress...etc...
>>        index:    1
>>    Receiver's instance variables:
>>        array:    {a MCClassDefinition(Win32Constants) . nil . nil . nil .
>> nil . nil . nil...etc...
>>        firstIndex:    1
>>        lastIndex:    1
>>
>> [] in OrderedCollection(Collection)>>do:displayingProgress:every:
>>    Receiver: an OrderedCollection(a MCClassDefinition(Win32Constants))
>>    Arguments and temporary variables:
>> <<error during printing>
>>    Receiver's instance variables:
>>        array:    {a MCClassDefinition(Win32Constants) . nil . nil . nil .
>> nil . nil . nil...etc...
>>        firstIndex:    1
>>        lastIndex:    1
>>
>> [] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
>>    Receiver: a MorphicUIManager
>>    Arguments and temporary variables:
>> <<error during printing>
>>    Receiver's instance variables:
>>        toolBuilder:    nil
>>
>> BlockClosure>>on:do:
>>    Receiver: [closure] in [] in
>> MorphicUIManager>>displayProgress:at:from:to:during:
>>    Arguments and temporary variables:
>>        exception:    ProgressNotification
>>        handlerAction:    [closure] in [] in
>> MorphicUIManager>>displayProgress:at:from:to:...etc...
>>        handlerActive:    true
>>    Receiver's instance variables:
>>        outerContext:    [] in
>> MorphicUIManager>>displayProgress:at:from:to:during:
>>        startpc:    86
>>        numArgs:    0
>>
>> [] in MorphicUIManager>>displayProgress:at:from:to:during:
>>    Receiver: a MorphicUIManager
>>    Arguments and temporary variables:
>> <<error during printing>
>>    Receiver's instance variables:
>>        toolBuilder:    nil
>>
>> BlockClosure>>ensure:
>>    Receiver: [closure] in
>> MorphicUIManager>>displayProgress:at:from:to:during:
>>    Arguments and temporary variables:
>>        aBlock:    [closure] in
>> MorphicUIManager>>displayProgress:at:from:to:during:
>>        complete:    nil
>>        returnValue:    nil
>>    Receiver's instance variables:
>>        outerContext:
>> MorphicUIManager>>displayProgress:at:from:to:during:
>>        startpc:    79
>>        numArgs:    0
>>
>> MorphicUIManager>>displayProgress:at:from:to:during:
>>    Receiver: a MorphicUIManager
>>    Arguments and temporary variables:
>>        titleString:    ''
>>        aPoint:    512@356
>>        minVal:    0
>>        maxVal:    1
>>        workBlock:    [closure] in
>> OrderedCollection(Collection)>>do:displayingProgress:ev...etc...
>>        progress:    [closure] in
>> SystemProgressMorph>>position:label:min:max:
>>        result:    #(nil)
>>    Receiver's instance variables:
>>        toolBuilder:    nil
>>
>>
>> --- The full stack ---
>> ClassBuilder(Object)>>error:
>> ClassBuilder>>validateClassvars:from:forSuper:
>> [] in
>> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classVariableNames:poolDictionaries:category:unsafe:
>> BlockClosure>>ensure:
>> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classVariableNames:poolDictionaries:category:unsafe:
>> ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classVariableNames:poolDictionaries:category:
>> [] in MCClassDefinition>>createClass
>> BlockClosure>>on:do:
>> MCClassDefinition>>createClass
>> MCClassDefinition>>load
>> [] in [] in [] in MCPackageLoader>>basicLoad
>> [] in [] in OrderedCollection(Collection)>>do:displayingProgress:every:
>> OrderedCollection>>do:
>> [] in OrderedCollection(Collection)>>do:displayingProgress:every:
>> [] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
>> BlockClosure>>on:do:
>> [] in MorphicUIManager>>displayProgress:at:from:to:during:
>> BlockClosure>>ensure:
>> MorphicUIManager>>displayProgress:at:from:to:during:
>>  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
>> ProgressInitiationException>>defaultResumeValue
>> ProgressInitiationException(Exception)>>resume
>> ProgressInitiationException>>defaultAction
>> UndefinedObject>>handleSignal:
>> MethodContext(ContextPart)>>handleSignal:
>> MethodContext(ContextPart)>>handleSignal:
>> MethodContext(ContextPart)>>handleSignal:
>> MethodContext(ContextPart)>>handleSignal:
>> ProgressInitiationException(Exception)>>signal
>> ProgressInitiationException>>display:at:from:to:during:
>> ProgressInitiationException class>>display:at:from:to:during:
>> ByteString(String)>>displayProgressAt:from:to:during:
>> ByteString(String)>>displayProgressFrom:to:during:
>> OrderedCollection(Collection)>>do:displayingProgress:every:
>> OrderedCollection(Collection)>>do:displayingProgress:
>> [] in [] in MCPackageLoader>>basicLoad
>> BlockClosure>>on:do:
>> [] in MCPackageLoader>>basicLoad
>> BlockClosure>>ensure:
>> MCPackageLoader>>basicLoad
>> [] in MCPackageLoader>>loadWithNameLike:
>> BlockClosure>>ensure:
>> MCPackageLoader>>useChangeSetNamed:during:
>> MCPackageLoader>>useNewChangeSetNamedLike:during:
>> MCPackageLoader>>loadWithNameLike:
>> MCVersionLoader>>load
>> [] in InstallerMonticello>>basicInstall
>> BlockClosure>>on:do:
>> BlockClosure>>valueSupplyingAnswers:
>> BlockClosure>>valueSuppressingMessages:supplyingAnswers:
>> InstallerMonticello(Installer)>>withAnswersDo:
>> InstallerMonticello>>basicInstall
>> [] in InstallerMonticello(Installer)>>installLogging
>> InstallerMonticello(Installer)>>logErrorDuring:
>> InstallerMonticello(Installer)>>installLogging
>> InstallerMonticello(Installer)>>install
>> InstallerMonticello(Installer)>>install:
>> UndefinedObject>>DoIt
>> Compiler>>evaluate:in:to:notifying:ifFail:logged:
>> [] in SmalltalkEditor(TextEditor)>>evaluateSelectionAndDo:
>> BlockClosure>>on:do:
>> SmalltalkEditor(TextEditor)>>evaluateSelectionAndDo:
>> -- and more not shown --
>>
>>
>> -----------------------------------------------------------------------------------------
>>
>>
>> -----------------
>> Benoit St-Jean
>> Yahoo! Messenger: bstjean
>> A standpoint is an intellectual horizon of radius zero.
>> (Albert Einstein)
>>
>>
>>>________________________________
>>> From: H. Hirzel <[hidden email]>
>>>To: [hidden email]
>>>Sent: Friday, December 21, 2012 4:16:12 PM
>>>Subject: [squeak-dev] ODBC package and mySQL driver for 4.4?
>>>
>>>On 12/21/12, Benoit St-Jean <[hidden email]> wrote:
>>>> The more urgent is the ODBC package.  We used to load it with a "prereq"
>>>> of
>>>> executing "ScriptLoader loadFFI" but the loadFFi method has vanished...
>>>>
>>>> Second items that is important, the MySQL Driver...  That one I have not
>>>> tried yet...
>>>
>>>
>>>For the FFI part
>>>-----------------------
>>>
>>>To load the FFI see menu 'help' / 'extending the system' and there
>>>
>>>you find
>>>
>>>"FFI: http://source.squeak.org/FFI.html"
>>>(Installer repository: 'http://source.squeak.org/FFI')
>>>    install: 'FFI-Pools';
>>>    install: 'FFI-Kernel';
>>>    install: 'FFI-Tests';
>>>    install: 'FFI-Win32';
>>>    install: 'FFI-MacOS';
>>>    install: 'FFI-Unix'.
>>>
>>>
>>>--Hannes
>>>
>>>
>>>
>>>
>





Reply | Threaded
Open this post in threaded view
|

Re: FFI load script no longer works ....

Bert Freudenberg
In reply to this post by Frank Shearar-3

On 2012-12-21, at 23:58, Frank Shearar <[hidden email]> wrote:

> On 21 December 2012 22:46, H. Hirzel <[hidden email]> wrote:
>> Benoit,
>>
>> yes, indeed,
>>
>> (Installer repository: 'http://source.squeak.org/FFI')
>>  install: 'FFI-Pools';
>>  install: 'FFI-Kernel';
>>  install: 'FFI-Tests';
>>  install: 'FFI-Win32';
>>  install: 'FFI-MacOS';
>>  install: 'FFI-Unix'.
>>
>> No longer works with 4.4-12320.
>>
>> It used to work two or three months ago...
>
> You need the "allow underscore selectors" preference set to load the
> FFI. I can't remember the magic to do that, but it ought to be part of
> the install script.
>
> frank


This appears to be only because a gazillion Windows constants got added to the Win32 examples. To me it looks like it tries to provide an actual API now, instead of just being a demonstration of how FFI works. 81 of the 85 defined constants are unused. Is this good?

- Bert -