Hi Laurent. I have been trying to compile the VM directly from your sources, but I found some problems.
The first one was that I haven't installed cmake. Thus, I have to do a sudo apt-get install cmake. After that, it could do the configure. Then, the second error is that when trying to configure, there are some libraries or headers not found. I attach the output of the configure command. In addition, is the output of the configure written somewhere like config.log or similar ? If you notice the file, there are several things not found, for example: !! XDisplayControlPlugin disabled !! vm-display-Quartz disabled !! vm-sound-MacOSX disabled -- vm-sound-Sun: sys/audioio.h not found -- vm-sound-Sun: sun/audioio.h not found -- vm-sound-Sun: /usr/include/stropts.h !! vm-sound-Sun disabled -- Looking for sys/select.h -- Looking for sys/select.h - found !! vm-display-X11 disabled -- vm-sound-NAS: audio/audio.h not found -- vm-sound-NAS: libaudio not found !! vm-sound-NAS disabled -- vm-display-fbdev: /usr/include/linux/fb.h -- vm-sound-pulse: libpulse-simple not found !! vm-sound-pulse disabled -- vm-sound-ALSA: alsa/asoundlib.h not found -- vm-sound-ALSA: libasound not found !! vm-sound-ALSA disabled -- vm-sound-OSS: alsa/asoundlib.h not found -- vm-sound-OSS: libasound not found !! vm-sound-OSS disabled See that it cannot find the vm-sound-OSS. Then, I did a make and a make install. But when trying to run squeak, I have this error: ubu...@ubuntu-desktop:~/Pharo/vm/Squeak-3.11.3.2135-pharo-src/build$ squeak + exec padsp /usr/local/lib/squeak/3.11.13-2135/squeakvm -pathenc UTF-8 -encoding UTF-8 -plugins /usr/local/lib/squeak/3.11.13-2135 -vm-sound-oss could not find module vm-sound-OSS Aborted Of course it cannto find it..as I already know that from the configure. So..here I have 2 questions: 1) how can I install the things I am missing ? 2) why the "squeak" executable has "hardcoded" the parameters "-pathenc UTF-8 -encoding UTF-8 -plugins /usr/local/lib/squeak/3.11.13-2135 -vm-sound-oss" is that correct ? do I ALWAYS want all those parameters ? And if I don't want them, how can I execute a "clean" squeak ? Finally, in another thread, Eliot told me how to be able to debug SqueakVM with Gdb and threads. He told me to do: ../unix/cmake/configure CFLAGS="-g3 -pthread" LIBS=-lpthread but configure says: unknown option: CFLAGS=-g3 -pthread unknown option: LIBS=-lpthread Do you know how can I do this ? should I send this email to vm mailing list ? Thanks a lot in advance! Mariano On Sun, Mar 28, 2010 at 12:50 PM, Levente Uzonyi <le...@elte.hu> wrote: > Your optimization flags are probably ignored by cmake: see this thread > http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003736.html > > You could also give these flags a try on x86 cpus: -O3 -fomit-frame-pointer > -mfpmath=sse -march=native > > > Levente > > > On Sun, 28 Mar 2010, laurent laffont wrote: > > More benchmarks. >> >> Updated procedure with gcc optimizations activated: >> wget >> http://lolgzs.free.fr/pharo/squeak-vm/Squeak-3.11.3.2135-pharo-src.tar.gz >> tar -xvzf Squeak-3.11.3.2135-pharo-src.tar.gz >> cd Squeak-3.11.3.2135-pharo-src/ >> mkdir build && cd build >> ../unix/cmake/configure --CFLAGS="-O2" >> make >> sudo make install >> >> >> Squeak VM 3.11.3 -r 2135 + FT2Plugin >> ========================================== >> 334421946 bytecodes/sec; 8026581 sends/sec >> 334640522 bytecodes/sec; 7449884 sends/sec >> 334421946 bytecodes/sec; 7449884 sends/sec >> 334421946 bytecodes/sec; 7675486 sends/sec >> 327156549 bytecodes/sec; 7598782 sends/sec >> >> Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O2 >> ========================================== >> 330109606 bytecodes/sec; 9183392 sends/sec >> 331177231 bytecodes/sec; 9190792 sends/sec >> 330535829 bytecodes/sec; 9198204 sends/sec >> 329896907 bytecodes/sec; 9220511 sends/sec >> 330963154 bytecodes/sec; 8973857 sends/sec >> >> Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O3 >> ========================================== >> 296811594 bytecodes/sec; 10138464 sends/sec >> 296467863 bytecodes/sec; 10129460 sends/sec >> 296639629 bytecodes/sec; 10138464 sends/sec >> 296124927 bytecodes/sec; 7920675 sends/sec >> 296296296 bytecodes/sec; 7926179 sends/sec >> >> Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification >> ========================================== >> 306586826 bytecodes/sec; 7218843 sends/sec >> 308248043 bytecodes/sec; 7209717 sends/sec >> 308805790 bytecodes/sec; 7223415 sends/sec >> 309552599 bytecodes/sec; 7218843 sends/sec >> 309927360 bytecodes/sec; 7269453 sends/sec >> >> Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification + CFLAGS=-O2 >> ========================================== >> 293073840 bytecodes/sec; 8807546 sends/sec >> 292070735 bytecodes/sec; 8841684 sends/sec >> 281628162 bytecodes/sec; 8896858 sends/sec >> 294422081 bytecodes/sec; 8903804 sends/sec >> >> Laurent Laffont >> >> >> 2010/3/28 Mariano Martinez Peck <marianop...@gmail.com> >> >> >>> >>> 2010/3/27 laurent laffont <laurent.laff...@gmail.com> >>> >>> OK, I've tried the Smalltalk one... >>> >>>> >>>> With rev 2151 gnuification (awk) is done as I have gnu-interp.c >>>> and gnu-interp.c.log in my build directory. >>>> >>>> Benchmark gives me: >>>> >>>> Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification >>>> ========================================== >>>> 312385600 bytecodes/sec; 7320778 sends/sec >>>> 310868245 bytecodes/sec; 8271046 sends/sec >>>> 310679611 bytecodes/sec; 8271046 sends/sec >>>> 310868245 bytecodes/sec; 7232576 sends/sec >>>> 310491206 bytecodes/sec; 8271046 sends/sec >>>> >>>> compared to >>>> >>>> Squeak VM 3.11.3 -r 2135 + FT2Plugin >>>> ========================================== >>>> 334421946 bytecodes/sec; 8026581 sends/sec >>>> 334640522 bytecodes/sec; 7449884 sends/sec >>>> 334421946 bytecodes/sec; 7449884 sends/sec >>>> 334421946 bytecodes/sec; 7675486 sends/sec >>>> 327156549 bytecodes/sec; 7598782 sends/sec >>>> >>>> so it seems that on my machine rev 2135 without gnuification is a little >>>> better. I have GCC 4.4.3, Linux 32bits. >>>> >>>> >>>> I don't understand....it is slower with the gnuification ? >>> >>> weird.... >>> >>> >>> >>> >>> Laurent Laffont >>>> >>>> >>>> >>>> On Sat, Mar 27, 2010 at 8:55 PM, Levente Uzonyi <le...@elte.hu> wrote: >>>> >>>> On Sat, 27 Mar 2010, laurent laffont wrote: >>>>> >>>>> I've tried gnuification on rev 2151. cmake/configure OK. But while >>>>> >>>>>> building: >>>>>> >>>>>> >>>>>> >>>>>> /home/lol/sandbox/squeakvm/Squeak-3.11.3.2151-pharo-src/build/gnu-interp.c:25104:2: >>>>>> erreur: #error GNUIFICATION FAILED ( 0 ) >>>>>> >>>>>> >>>>> Which gnuification method did you try? >>>>> There are two different versions. The origial version is an awk script >>>>> which is run when you're building the vm with make. This is executed by >>>>> default if you have awk installed. >>>>> There's another version written in smalltalk (linked by Mariano into >>>>> this >>>>> thread) which is not used by VMMAker at the moment, you probably don't >>>>> need >>>>> that. If you applied the latter one, you have to make sure that the >>>>> first >>>>> one is not executed. You can't gnuifying the sources twice. >>>>> Since both do the same, the best you can do now is to ignore the >>>>> smalltalk version. If VMMaker will adopt Gnuifier.st we can remove the >>>>> awk >>>>> dependency from the build process, until then you shouldn't apply it if >>>>> your >>>>> platform has awk installed. >>>>> >>>>> >>>>> Levente >>>>> >>>>> >>>>> >>>>> >>>>>> Laurent Laffont >>>>>> >>>>>> >>>>>> On Sat, Mar 27, 2010 at 6:47 PM, laurent laffont >>>>>> <laurent.laff...@gmail.com>wrote: >>>>>> >>>>>> Does it mean latest SVN source is already "Gnuified" ? With latest >>>>>> >>>>>>> rev. >>>>>>>> I >>>>>>>> >>>>>>>> have a little drop in benchmarks. However I'd rather put a stable >>>>>>>>> >>>>>>>>> release >>>>>>>> >>>>>>>> for Pharo 1.0 than latest trunk. What do you think ? >>>>>>>>> >>>>>>>>> >>>>>>>> The so-called "gnuification" is a transformation of the interp.c >>>>>>>> file. >>>>>>>> So >>>>>>>> this is done after generating the sources with VMMaker. The cmake >>>>>>>> configuration that comes with revision 2135 does not have this step >>>>>>>> enabled, >>>>>>>> and the more recent version that I used, revision 2151, has it. The >>>>>>>> magic is >>>>>>>> in the awk script in unix/cmake/gnuify.awk which produes >>>>>>>> gnu-interp.c. >>>>>>>> >>>>>>>> >>>>>>>> OK thanks. I will take a look. >>>>>>> >>>>>>> Laurent Laffont >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> Cheers, >>>>>>>> Adrian >>>>>>>> >>>>>>>> >>>>>>>> Laurent Laffont >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> Adrian >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> _______________________________________________ >>>>>>>>>> Pharo-project mailing list >>>>>>>>>> Pharo-project@lists.gforge.inria.fr >>>>>>>>>> >>>>>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >>>>>>>>>> >>>>>>>>>> _______________________________________________ >>>>>>>>>> >>>>>>>>> Pharo-project mailing list >>>>>>>>> Pharo-project@lists.gforge.inria.fr >>>>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Pharo-project mailing list >>>>>>>> Pharo-project@lists.gforge.inria.fr >>>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>> _______________________________________________ >>>>> Pharo-project mailing list >>>>> Pharo-project@lists.gforge.inria.fr >>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >>>>> >>>>> >>>> >>>> _______________________________________________ >>>> Pharo-project mailing list >>>> Pharo-project@lists.gforge.inria.fr >>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >>>> >>>> >>> >>> _______________________________________________ >>> Pharo-project mailing list >>> Pharo-project@lists.gforge.inria.fr >>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >>> >>> >> > _______________________________________________ > Pharo-project mailing list > Pharo-project@lists.gforge.inria.fr > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project