[Vm-dev] Compiling the windows 32 bits vm

Cyril Ferlicot D cyril at ferlicot.me
Thu Apr 5 00:02:21 UTC 2018


Le 04/04/2018 à 09:15, Nicolas Cellier a écrit :
> Hi Cyril,
> The setup-x86.exe -dgnqNO -R "E:\cygwin" -s command was not enough.
> You must add
> gcc-core,gcc-g++,binutils,make,libtool,libiconv,automake,autoconf and
> maybe a few others...
> The reason is that the build machines come with those packages
> pre-installed.
> 
> On the other hand, I don't remember why we still want to build
> pkg-config from sources, there is a prebuilt cygwin package if we want.
> Maybe it's a remnant from the time when mingw was used as build environment?
> 

Apparently the ML refuse my mails with an attachment so I resend it
without attachment:

Thank you Nicolas,

With your advices I could go further into the build. Now I install
cygwin with the batch copied at the end of this mail.

But now I face a new error:

cd builddbg/third-party/libgit2-0.25.1 \
        && cmake \

-DCMAKE_TOOLCHAIN_FILE=./Toolchain-cross-mingw32-cygwin.cmake \

-DCMAKE_INSTALL_PREFIX=/cygdrive/e/cog/oscogvm/.thirdparty-cache/windows/i386
\
                -DUSE_SSH=ON \
                -DBUILD_CLAR=OFF \
                -DLIBSSH2_FOUND=ON \

-DLIBSSH2_INCLUDE_DIRS=/cygdrive/e/cog/oscogvm/.thirdparty-cache/windows/i386/include
\

-DLIBSSH2_LIBRARIES=/cygdrive/e/cog/oscogvm/.thirdparty-cache/windows/i386/bin/libssh2-1.dll
\
                -DCMAKE_C_FLAGS="-m32 -static-libgcc -static-libstdc++" \
        && make \
        && make install
CMake Error: Could not find CMAKE_ROOT !!!
CMake has most likely not been installed correctly.
Modules directory not found in
/cygdrive/e/cygwin/share/cmake-3.6.2
CMake Error: Error executing cmake::LoadCache(). Aborting.

make[1]: *** [../third-party/Makefile.libgit2:24:
/cygdrive/e/cog/oscogvm/.thirdparty-cache/windows/i386/bin/libgit2.dll]
Error 1
make[1] : on quitte le répertoire «
/cygdrive/e/cog/oscogvm/build.win32x86/pharo.cog.spur »
make: *** [../common/Makefile:157: debug] Error 2



Since this is related to libgit2 compilation I guess it only happen in
Pharo builds.

I followed an advice from Clement and tried to compile a squeak.cog.spur
vm first since there is less plugins to build. But now I face yet
another issue.


i686-w64-mingw32-dlltool --input-def Squeak.def.in --output-def
build/vm/Squeak.def --output-exp build/vm/Squeak.exp --output-lib
build/vm/Squeak.lib build/vm/gcc3x-cointerp.o build/vm/cogit.o build/v
m/sqWin32DnsInfo.o build/vm/sqWin32SpurAlloc.o
build/vm/sqWin32Directory.o build/vm/sqWin32DirectInput.o
build/vm/sqWin32Backtrace.o build/vm/sqWin32Prefs.o
build/vm/sqWin32Stubs.o build/vm/sqWin32Ser
vice.o build/vm/sqWin32Exports.o build/vm/sqWin32Time.o
build/vm/version.o build/vm/sqWin32PluginSupport.o
build/vm/sqWin32ExternalPrims.o build/vm/sqWin32VMProfile.o
build/vm/sqWin32Main.o build/vm/s
qWin32Heartbeat.o build/vm/sqWin32Alloc.o build/vm/sqWin32Window.o
build/vm/sqWin32GUID.o build/vm/sqWin32Threads.o build/vm/sqWin32Utils.o
build/vm/sqTicker.o build/vm/sqVirtualMachine.o build/vm/sqN
amedPrims.o build/vm/sqHeapMap.o build/vm/sqExternalSemaphores.o
i686-w64-mingw32-windres --include-dir ../../platforms/win32/misc
-D_WIN32 -DFILEVERSIONVALUES=,,, '-DFILEVERSIONSTRING=\"...\\0\"' -i
Squeak.rc -o build/vm/Squeak.res
i686-w64-mingw32-windres: Squeak.rc:7: syntax error
make: *** [../common/Makefile:296: Squeak.res] Error 1


This is a build from the commit 0ce1378d23d0423e8cdb5d069f2786ffe884f884
of opensmalltalk-vm.

Do you have any idea what might be the problem with my set-up?

I hope I do not bother you too much with beginners questions.

Have a nice day.

===InstallCygwin.bat===

SET CYG_SETUP=setup-x86.exe
SET CYG_ROOT="E:\cygwin"
SET CYG_MIRROR=http://cygwin.mirror.constant.com
SET MINGW_ARCH=i686

%CYG_SETUP% -dgnqNO -R "%CYG_ROOT%" -s "%CYG_MIRROR%" -l
"%CYG_ROOT%\var\cache\setup"^
    -P gcc-core^
    -P gcc-g++^
    -P binutils^
    -P libtool^
    -P libiconv^
    -P automake^
    -P autoconf^
    -P make^
    -P cmake^
    -P wget^
    -P mingw64-%MINGW_ARCH%-gcc-core^
    -P mingw64-%MINGW_ARCH%-gcc-g++^
    -P mingw64-%MINGW_ARCH%-headers^
    -P mingw64-%MINGW_ARCH%-runtime^
    -P zip^
    -P mingw64-%MINGW_ARCH%-clang^
    -P mingw64-%MINGW_ARCH%-openssl^
    -P libiconv-devel^
    -P libglib2.0-devel^
    -P perl^
    -P mingw64-%MINGW_ARCH%-zlib^
    -P mingw64-%MINGW_ARCH%-win-iconv


-- 
Cyril Ferlicot
https://ferlicot.fr



More information about the Vm-dev mailing list