Andreas, John, anybody, I need to find the address of a "function" (it is in fact a global structure pointer somewhere in memory) and pass it to another function.
Suppose the structure is called Type and the function allocate_one(). I call the function something like allocateOne:type size:anInt <cdecl: SomeOtherStruct* 'allocate_one' ( Type* long ) > but I am having an awful time getting the pointer to Type. Given that dlsym() will return a pointer to it, how can I represent that in Smalltalk? I have tried variations on "Indirectly call dlsym()" address := Library default getProcAddress:'name_of_global_struct'. "try to create Type* from the resulting address" type := Type fromHandle:address. type := Type fromHandle:address getHandle. type := ExternalData fromHandle:address type:Type externalType asPointerType. Something := Library default allocateOne:type size:2. and it either complains about bad arguments during the call or segment faults. Any ideas or similar examples? Bill _______________________________________________ Pharo-project mailing list [email protected] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
