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: