Hi Esteban,

On Wed, Apr 12, 2017 at 06:08:56PM +0200, Esteban Lorenzano wrote:
> forget to say that iceberg will not work 100% yet :)
> but here, problem is because you need to install the threaded version, which 
> of course I forget to point :P
> 
> curl get.pharo.org/64/60+vmTLatest | bash
> 
> this is the correct one for linux users.

Thanks, I'm successfully past the Metacello load.

Next problem:

    PrimitiveFailed: primitive #integerAt:put:size:signed: in ExternalAddress 
failed

while executing:

        proc := OSSUnixSubprocess new
                command: 'git';
                arguments: #('config' '--global' 'user.name' 'AlistairGrant');
                runAndWaitOnExitDo: [ :cmd :out :err | self assert: cmd 
isSuccess ].

I'm going to have to learn about FFI some time...

Full stack below.

I should have also added I'm on Ubuntu 16.04, and this obviously all
works fine in the 32bit VM / image.

Cheers,
Alistair



ExternalAddress(Object)>>primitiveFailed:
ExternalAddress(Object)>>primitiveFailed
ExternalAddress(ByteArray)>>integerAt:put:size:signed:
ExternalAddress(ByteArray)>>unsignedLongAt:put:
ExternalAddress(ByteArray)>>nbUInt32AtOffset:put:
[ :string :index | 
| pointer |
"0 terminated"
pointer := ExternalAddress allocate: string size + 1.
self registerPointer: pointer.
LibC memCopy: string to: pointer size: string size.
pointer nbUInt8AtOffset: string size put: 0.    "string terminating null char"
aPointer
        nbUInt32AtOffset: (index - 1) * self systemAccessor sizeOfPointer
        put: pointer value ] in OSSUnixSubprocess>>collectArgumentPointersInto: 
in Block: [ :string :index | ...
OrderedCollection(SequenceableCollection)>>withIndexDo:
OSSUnixSubprocess>>collectArgumentPointersInto:
OSSUnixSubprocess>>buildPrimitiveArgVArgument
OSSUnixSubprocess>>internalRun
[ self internalRun ] in OSSUnixSubprocess>>run in Block: [ self internalRun ]
BlockClosure>>ensure:
OSSUnixSubprocess>>run
OSSUnixSubprocess>>runAndWaitOnExitDo:
UndefinedObject>>DoIt
OpalCompiler>>evaluate
DoItChunk>>importFor:
[ :declaration | 
requestor ifNotNil: [ requestor contents: declaration contents ].
value := declaration importFor: requestor ] in 
CodeImporter>>evaluateDeclarations in Block: [ :declaration | ...
OrderedCollection>>do:
CodeImporter>>evaluateDeclarations
CodeImporter class>>evaluateFileStream:
MultiByteFileStream(FileStream)>>fileIn
FileStream class>>fileIn:
SimpleServiceEntry>>performServiceFor:
PluggableButtonMorph>>performAction:
[ :m | 
(m containsPoint: evt cursorPoint)
        ifTrue: [ m enabled
                        ifTrue: [ m performAction: evt ] ] ] in 
PluggableButtonMorph>>mouseUp: in Block: [ :m | ...
Array(SequenceableCollection)>>do:
PluggableButtonMorph>>mouseUp:
PluggableButtonMorph(Morph)>>handleMouseUp:
MouseButtonEvent>>sentTo:

Reply via email to