[Vm-dev] Compiling VM on Mac

Guido Chari charig at gmail.com
Mon Feb 5 13:18:41 UTC 2018


2018-02-02 18:53 GMT-03:00 Clément Bera <bera.clement at gmail.com>:

>
>
>
> On Fri, Feb 2, 2018 at 10:41 PM, Fabio Niephaus <lists at fniephaus.com>
> wrote:
>
>>
>>
>> On Fri, 2 Feb 2018 at 9:32 pm, Clément Bera <bera.clement at gmail.com>
>> wrote:
>>
>>> On Fri, Feb 2, 2018 at 8:04 PM, Fabio Niephaus <lists at fniephaus.com>
>>> wrote:
>>>
>>>>
>>>>
>>>> --
>>>>
>>>> On Fri, Feb 2, 2018 at 7:38 PM Guido Chari <charig at gmail.com> wrote:
>>>>
>>>>>
>>>>> Thanks Tobias for the quick response! That made it but I am stuck with
>>>>> another error (see below)
>>>>>
>>>>> @Clement: Yes, I am using opensmalltalk-vm. Now I remove my generated
>>>>> sources and I am trying with the original ones. Anyway, I'd like to change
>>>>> some things. Isn't that the proper way to generate sources?
>>>>>
>>>>> Current error:
>>>>>
>>>>> "cd builddbg/third-party/openssl-1.0.2m \
>>>>>
>>>>> && ./Configure darwin-i386-cc --prefix='/Users/guidochari/Do
>>>>> cuments/Projects/CogNOS/opensmalltalk-vm/.thirdparty-cache/macOS/i386'
>>>>> shared | grep -C10 "Error" \
>>>>>
>>>>> && LDFLAGS='-Wl,-rpath, at executable_path:@executable_path/Plugins'
>>>>> make | grep -C10 "Error" \
>>>>>
>>>>> && make install
>>>>>
>>>>> make[1]: *** [/Users/guidochari/Documents/P
>>>>> rojects/CogNOS/opensmalltalk-vm/.thirdparty-cache/macOS/i386/lib/libssl.1.0.0.dylib]
>>>>> Error 1
>>>>>
>>>>> rm builddbg/vm/libFloatMathPlugin.dylib builddbg/vm/libObjectiveCPlugin.dylib
>>>>> builddbg/vm/libJPEGReadWriter2Plugin.dylib
>>>>> builddbg/vm/libUUIDPlugin.dylib builddbg/vm/libFileAttributesPlugin.dylib
>>>>> builddbg/vm/libMpeg3Plugin.dylib builddbg/vm/libRePlugin.dylib
>>>>> builddbg/vm/libClipboardExtendedPlugin.dylib
>>>>> builddbg/vm/libSurfacePlugin.dylib builddbg/vm/libSerialPlugin.dylib
>>>>> builddbg/vm/libCroquetPlugin.dylib builddbg/vm/libFT2Plugin.dylib
>>>>> builddbg/vm/libB3DAcceleratorPlugin.dylib
>>>>> builddbg/vm/libSqueakSSL.dylib builddbg/vm/libLocalePlugin.dylib
>>>>> builddbg/vm/libEventsHandlerPlugin.dylib
>>>>> builddbg/vm/libJPEGReaderPlugin.dylib builddbg/vm/libSDL2DisplayPlug
>>>>> in.dylib
>>>>>
>>>>> make: *** [debug] Error 2
>>>>> "
>>>>>
>>>>
>>>> Hi Guido,
>>>> Currently, building the third-party libs for Pharo fails on macOS [1].
>>>> Looks like openssl didn't compile in your case. I'm unfortunately unable to
>>>> reproduce this locally, but it fails on TravisCI, too.
>>>> Feel free to comment on the issue if you find out why and how to fix it
>>>> :)
>>>>
>>>
>>> Hum right if it's only lib SSL, it's the problem I mention, if it's
>>> multiple plugins it might be the problem Fabio mentions.
>>>
>>
>> I wonder if it would be better to compile all third party libs for all
>> platforms once and then just download them when needed (for example when
>> the corresponding plugins or Metacello package is loaded).
>>
>
> No.
>
> Then you end up with all sorts of non-sense. Like 2 libs that are compiled
> with 2 different gcc versions ending up with low level indeterministic and
> uncommon bugs that you track down only after debugging the Assembly code
> looking at the hex during 9 months.
>

The error seems to be only combination of the grep and the && in the
makefile. I already added the comment to the corresponding issue in github.


>
>
>> Anyway, we need to make sure these third party libs compile, otherwise we
>> won't be able to ship them with the next release.
>>
>> Fabio
>>
>>
>>
>>>
>>>
>>>>
>>>> Best,
>>>> Fabio
>>>>
>>>> [1] https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/208
>>>>
>>>>
>>>>> Best,
>>>>> Guido.
>>>>>
>>>>>
>>>>> 2018-02-02 14:17 GMT-03:00 Tobias Pape <Das.Linux at gmx.de>:
>>>>>
>>>>>>
>>>>>>
>>>>>> > On 02.02.2018, at 18:08, Clément Bera <bera.clement at gmail.com>
>>>>>> wrote:
>>>>>> >
>>>>>> > Are you using opensmalltalk-vm repository ?
>>>>>> >
>>>>>>
>>>>>> yes, why?
>>>>>>
>>>>>> > On Feb 2, 2018 17:36, "Tobias Pape" <Das.Linux at gmx.de> wrote:
>>>>>> >
>>>>>> > Hi Guido,
>>>>>> >
>>>>>> >
>>>>>> > > On 02.02.2018, at 17:26, Guido Chari <charig at gmail.com> wrote:
>>>>>> > >
>>>>>> > > Hello,
>>>>>> > >
>>>>>> > > I follow the documentation but I was not able to compile the VM.
>>>>>> > >
>>>>>> > > I generated the sources using: 'CogSpur32VMBuilder buildMacOSX32.'
>>>>>> > >
>>>>>> > > Then, I went to the pharo.cog.spur directory and ran 'mvm -A'.
>>>>>> > >
>>>>>> > > The output is the following:
>>>>>> > >
>>>>>> > > clang -x c -MT build/vm/gcc3x-cointerp.o -MMD -MP -MF
>>>>>> deps/gcc3x-cointerp.Td -Wno-missing-field-initializers
>>>>>> -Wno-missing-prototypes -Wno-missing-braces -Wparentheses -Wswitch
>>>>>> -Wno-unused-function -Wno-unused-label -Wno-unused-parameter
>>>>>> -Wunused-variable -Wunused-value -Wno-empty-body -Wno-uninitialized
>>>>>> -Wno-unknown-pragmas -Wno-shadow -Wno-four-char-constants -Wno-conversion
>>>>>> -Wno-constant-conversion -Wno-int-conversion -Wno-bool-conversion
>>>>>> -Wno-enum-conversion -Wno-sign-conversion -Wno-shorten-64-to-32
>>>>>> -Wpointer-sign -Wno-newline-eof -Wno-trigraphs -Wdeprecated-declarations -g
>>>>>> -Os -DPharoVM=1 -DIMMUTABILITY=1 -DDEBUGVM=0 -DNDEBUG=1  -DPharoVM=1
>>>>>> -DIMMUTABILITY=1 -DUSE_GLOBAL_STRUCT=0 -DNO_ISNAN=1
>>>>>> -DUSE_INLINE_MEMORY_ACCESSORS -D'TZ="-03"' -D'VM_LABEL(foo)=0'
>>>>>> -DSQUEAK_BUILTIN_PLUGIN -DBUILD_FOR_OSX=1 -arch i386
>>>>>> -mmacosx-version-min=10.7 -msse4.2 -fvisibility=default -fwrapv
>>>>>> -fmacro-backtrace-limit=0 -fdiagnostics-show-note-include-stack
>>>>>> -fmessage-length=0 -fpascal-strings -fasm-blocks -fstrict-aliasing
>>>>>> -fobjc-weak  -isysroot  -include ../../platforms/iOS/vm/SqueakPureObjc_Prefix.pch
>>>>>> -I. -I../../spursrc/vm -I../../platforms/iOS/vm/Common
>>>>>> -I../../platforms/iOS/vm/Common/Classes -I../../platforms/iOS/vm/OSX
>>>>>> -I../../platforms/unix/vm -I../../platforms/Cross/vm
>>>>>> -I../../platforms/Cross/plugins/FilePlugin
>>>>>> -I../../platforms/Cross/plugins/HostWindowPlugin
>>>>>> -I../../platforms/Cross/plugins/SoundPlugin
>>>>>> -I../../platforms/iOS/plugins/FilePlugin
>>>>>> -I../../platforms/iOS/plugins/HostWindowPlugin
>>>>>> -I../../platforms/iOS/plugins/SoundPlugin -c
>>>>>> ../../spursrc/vm/gcc3x-cointerp.c -o build/vm/gcc3x-cointerp.o
>>>>>> > > clang: error: cannot specify -o when generating multiple output
>>>>>> files
>>>>>> > > clang: warning: no such sysroot directory: '-include'
>>>>>> [-Wmissing-sysroot]
>>>>>> > > make: *** [build/vm/gcc3x-cointerp.o] Error 1
>>>>>> > >
>>>>>> > > I'm running Sierra 10.13.2.
>>>>>> > >
>>>>>> > > Any ideas?
>>>>>> >
>>>>>> > Yes, please git pull and try again, I just pushed
>>>>>> 383040ff57f5b7ad233d9a0d7b7abe3ac2326178
>>>>>> >
>>>>>> > Best regards
>>>>>> >         -Tobias
>>>>>> >
>>>>>> >
>>>>>>
>>>>>>
>>>>>
>>>>
>>> --
>>> Clément Béra
>>> Pharo consortium engineer
>>> https://clementbera.wordpress.com/
>>> Bâtiment B 40, avenue Halley 59650 Villeneuve d'Ascq
>>>
>>
>>
>
>
> --
> Clément Béra
> Pharo consortium engineer
> https://clementbera.wordpress.com/
> Bâtiment B 40, avenue Halley 59650 Villeneuve d'Ascq
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20180205/5cb67408/attachment-0001.html>


More information about the Vm-dev mailing list