Hi,
I'm trying (and failing) to (re)compile Pharo VM used for P8, more specifically
this one (from `pharo -version): Date: Wed Feb 12 11:43:20 2020 CommitHash: 52202d8.
I'm targeting linux on x86_64.
Whether I use mvm (seems that it was used by Jenkins by then) or cmake I always end
up having following errors (just a few, there're loads of them):
/usr/bin/ld: vm/vm.a(cogit.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:377: multiple definition of debugCallbackInvokes'; vm/vm.a(gcc3x- cointerp.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:377: first defined here /usr/bin/ld: vm/vm.a(cogit.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:376: multiple definition of
checkForLeaks'; vm/vm.a(gcc3x-
cointerp.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:376: first defined here
/usr/bin/ld: vm/vm.a(cogit.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:375: multiple definition of checkedPluginName'; vm/vm.a(gcc3x- cointerp.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:375: first defined here /usr/bin/ld: vm/vm.a(cogit.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:374: multiple definition of
checkAllocFiller'; vm/vm.a(gcc3x-
cointerp.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:374: first defined here
/usr/bin/ld: vm/vm.a(cogit.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:371: multiple definition of `breakLookupClassTag'; vm/vm.a(gcc3x-
cointerp.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:371: first defined here
Does anyone have an idea? Is there a more detailed description of build
environment to use?
Thanks! Jan
Hi Jan,
could you share a link to the repo/commit you’re building?
Have you tried with this tag?
https://github.com/pharo-project/pharo-vm/tree/v8.6.1
G
El 1 sep. 2023, a las 14:32, Jan Vraný Jan.Vrany@labware.com escribió:
Hi,
I'm trying (and failing) to (re)compile Pharo VM used for P8, more specifically
this one (from `pharo -version): Date: Wed Feb 12 11:43:20 2020 CommitHash: 52202d8.
I'm targeting linux on x86_64.
Whether I use mvm (seems that it was used by Jenkins by then) or cmake I always end
up having following errors (just a few, there're loads of them):
/usr/bin/ld: vm/vm.a(cogit.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:377: multiple definition of debugCallbackInvokes'; vm/vm.a(gcc3x- cointerp.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:377: first defined here /usr/bin/ld: vm/vm.a(cogit.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:376: multiple definition of
checkForLeaks'; vm/vm.a(gcc3x-
cointerp.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:376: first defined here
/usr/bin/ld: vm/vm.a(cogit.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:375: multiple definition of checkedPluginName'; vm/vm.a(gcc3x- cointerp.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:375: first defined here /usr/bin/ld: vm/vm.a(cogit.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:374: multiple definition of
checkAllocFiller'; vm/vm.a(gcc3x-
cointerp.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:374: first defined here
/usr/bin/ld: vm/vm.a(cogit.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:371: multiple definition of `breakLookupClassTag'; vm/vm.a(gcc3x-
cointerp.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:371: first defined here
Does anyone have an idea? Is there a more detailed description of build
environment to use?
Thanks! Jan
Hi,
freshly downloaded zeroconf VM for P8 shows in pharo -version
:
Date: Wed Feb 12 11:43:20 2020 CommitHash: 52202d8.
so I tried this exact commit from https://github.com/pharo-project/pharo-vm.git :
commit 52202d80a407f05e9eb4bbd1001d21d913c4fc5b (tag: dev-7-20200212-2, origin/cog/dev-7)
Author: Pablo Tesone tesonep@gmail.com
Date: Wed Feb 12 11:43:20 2020 +0100
Adding B3D plugin dependencies
Just now also tried v8.6.1 as you suggested (from the same repo):
commit e829a1dabcea88556103ebe61f69e2a8fb1111ea (HEAD, tag: v8.6.1)
Author: Pablo Tesone tesonep@gmail.com
Date: Tue Oct 13 15:43:09 2020 +0200
Changing version to 8.6.1
using cmake:
git clone ... pharo-vm
cd pharo-vm
mkdir build
cd build
cmake ..
make
but got a bunch of errors too (though very different) - see below.
Jan
...
NewUndeclaredWarning: BalloonEnginePlugin>>primitiveAddRect (GEFWrongFill is Undeclared)
NewUndeclaredWarning: BalloonEnginePlugin>>primitiveAddRect (GEFEngineStopped is Undeclared)
NewUndeclaredWarning: BalloonEnginePlugin>>primitiveAddRect (GEFWorkTooBig is Undeclared)
NewUndeclaredWarning: BalloonEnginePlugin>>primitiveAddRect (GEFBadPoint is Undeclared)
NewUndeclaredWarning: BalloonEnginePlugin>>primitiveAddRect (GEFEntityLoadFailed is Undeclared)
MetacelloNotification: Loaded -> VMMaker-tonel.1 --- tonel:///home/jv/Projects/Pharo/pharo-vm/smalltalksrc --- cache
MetacelloNotification: Loading -> VMMakerCompatibilityForPharo6-tonel.1 --- tonel:///home/jv/Projects/Pharo/pharo-vm/smalltalksrc --- cache
Warning: This package depends on the following classes:
EncoderForV3
You must resolve these dependencies before you will be able to load these definitions:
EncoderForV3>>#extensionsAt:in:into:
MCPackageLoader(Object)>>notify:
MCPackageLoader>>warnAboutDependencies
MCPackageLoader>>validate
MCPackageLoader>>loadWithNameLike:
MCVersionLoader>>basicLoadWithNameLike:
[
...
adBlock goferLoad answers resolvedReference ...etc...
[:bar |
bar value: 1.
aBlock value.
bar value: 2 ] in IceMetacelloPharoPlatform(MetacelloPharoCommonPlatform)>>do:displaying: in Block: [:bar |...
*** Warning: Warning: This package depends on the following classes:
EncoderForV3
You must resolve these dependencies before you will be able to load these definitions:
EncoderForV3>>#extensionsAt:in:into:
NewUndeclaredWarning: OCAbstractScope>>childrenDo:after:suchThat: (children is Undeclared)
NewUndeclaredWarning: OCAbstractScope>>childrenDo:after:suchThat: (children is Undeclared)
NewUndeclaredWarning: OCAbstractScope>>childrenDo:suchThat: (children is Undeclared)
NewUndeclaredWarning: OCAbstractScope>>childrenDo:suchThat: (children is Undeclared)
NewUndeclaredWarning: DisplayText class>>text: (DefaultTextStyle is Undeclared)
...
MetacelloNotification: Loading -> FileAttributesPlugin-tonel.1 --- tonel:///home/jv/Projects/Pharo/pharo-vm/smalltalksrc --- cache
MetacelloNotification: Loaded -> FileAttributesPlugin-tonel.1 --- tonel:///home/jv/Projects/Pharo/pharo-vm/smalltalksrc --- cache
MetacelloNotification: ...finished baseline
[ 13%] Generating VM files for flavour: CoInterpreterWithQueueFFI
Generating #CoInterpreterWithQueueFFI in '/home/jv/Projects/Pharo/pharo-vm/build'...
NewUndeclaredWarning: VMMaker class>>forceNewFileNamed: (MultiByteFileStream is Undeclared)
NewUndeclaredWarning: VMMaker class>>forceNewFileNamed: (MultiByteFileStream is Undeclared)
#MultiByteFileStream is missing, and does not understand #forceNewFileNamed:
UndefinedObject>>doesNotUnderstand: #forceNewFileNamed:
VMMaker class>>forceNewFileNamed:
CCodeGeneratorGlobalStructure(CCodeGenerator)>>storeHeaderOnFile:contents:
...
FullBlockClosure(BlockClosure)>>on:do:
PharoCommandLineHandler(BasicCommandLineHandler)>>activateSubCommand:
PharoCommandLineHandler(BasicCommandLineHandler)>>handleSubcommand
PharoCommandLineHandler(BasicCommandLineHandler)>>handleArgument:
Syntax Error on line 1: 'Variable or expression expected'
---========================
1: er frameCallerSP: (interpreter frameCallerFP: interpreter framePointer).
^
2: aContext := interpreter ensureFrameIsMarried: framePointerToMarry SP: stackPointerToMarry.
3: interpreter externalDivorceFrame: framePointerToMarry andContext: aContext.
4: expectedDivorcedContext := interpreter frameCallerContext: interpreter stackPage baseFP.
5:
6: self assert: expectedDivorcedContext equals: aContext.
make[2]: *** [CMakeFiles/PharoVMCore.dir/build.make:74: generated/vm/src/cogit.c] Error 1
make[1]: *** [CMakeFiles/Makefile2:291: CMakeFiles/PharoVMCore.dir/all] Error 2
make: *** [Makefile:156: all] Error 2
On Mon, 2023-09-04 at 10:47 +0200, Guillermo Polito wrote:
Hi Jan,
could you share a link to the repo/commit you’re building?
Have you tried with this tag?
https://github.com/pharo-project/pharo-vm/tree/v8.6.1
G
El 1 sep. 2023, a las 14:32, Jan Vraný Jan.Vrany@labware.com escribió:
Hi,
I'm trying (and failing) to (re)compile Pharo VM used for P8, more specifically
this one (from `pharo -version): Date: Wed Feb 12 11:43:20 2020 CommitHash: 52202d8.
I'm targeting linux on x86_64.
Whether I use mvm (seems that it was used by Jenkins by then) or cmake I always end
up having following errors (just a few, there're loads of them):
/usr/bin/ld: vm/vm.a(cogit.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:377: multiple definition of debugCallbackInvokes'; vm/vm.a(gcc3x- cointerp.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:377: first defined here /usr/bin/ld: vm/vm.a(cogit.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:376: multiple definition of
checkForLeaks'; vm/vm.a(gcc3x-
cointerp.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:376: first defined here
/usr/bin/ld: vm/vm.a(cogit.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:375: multiple definition of checkedPluginName'; vm/vm.a(gcc3x- cointerp.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:375: first defined here /usr/bin/ld: vm/vm.a(cogit.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:374: multiple definition of
checkAllocFiller'; vm/vm.a(gcc3x-
cointerp.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:374: first defined here
/usr/bin/ld: vm/vm.a(cogit.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:371: multiple definition of `breakLookupClassTag'; vm/vm.a(gcc3x-
cointerp.o):/redacted/pharo-vm/spur64src/vm/cointerp.h:371: first defined here
Does anyone have an idea? Is there a more detailed description of build
environment to use?
Thanks! Jan