Open astares opened 7 months ago
The log part is
-- Configuring done (0.1s)
-- Generating done (0.0s)
-- Build files have been written to: /cygdrive/c/projects/pharo/pharo-vm/LibGit2-download
[ 11%] Performing update step for 'LibGit2-download'
[ 22%] No patch step for 'LibGit2-download'
[ 33%] No configure step for 'LibGit2-download'
[ 44%] No build step for 'LibGit2-download'
[ 55%] No install step for 'LibGit2-download'
[ 66%] No test step for 'LibGit2-download'
[ 77%] Completed 'LibGit2-download'
[100%] Built target LibGit2-download
-- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
-- Could NOT find GSSAPI (missing: GSSAPI_LIBRARIES GSSAPI_INCLUDE_DIR)
-- Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR (missing: OPENSSL_CRYPTO_LIBRARY OPENSSL_INCLUDE_DIR)
CMake Error at LibGit2-src/cmake/SelectHTTPSBackend.cmake:29 (message):
Unable to autodetect a usable HTTPS backend.Please pass the backend name
explicitly (-DUSE_HTTPS=backend)
Call Stack (most recent call first):
LibGit2-src/src/CMakeLists.txt:40 (include)
-- Configuring incomplete, errors occurred!
What is strange: I've checked out the source code on "C:\projects\pharo\pharo-vm" path. I think it its required to checkout on "C:\pharo-vm" as the build seems to expect it there.
Cygwin smake build seems to create a relative folder like this:
I double checked with the workflow build:
Looks like ".\scripts\runScriptInCygwinBash.ps1" always requires a file argument and can not be run interactively. Otherwise one gets an error with "Path" check.
I started freshly: new git clone on C:\pharo-vm
Trying to mock the build from workflow file:
mkdir -p build
cd build
cmake .. -DAPPNAME=Pharo -DVM_EXECUTABLE_NAME=Pharo
and then on DOS commandline (while being in C:\pharo-vm directory) running
powershell -File .\scripts\runScriptInCygwinBash.ps1 run.ps1
but still get an error:
As git gives a warning
"fatal: detected dubious ownership in repository at '/cygdrive/c/pharo-vm'
To add an exception for this directory, call:
git config --global --add safe.directory /cygdrive/c/pharo-vm
fatal: detected dubious ownership in repository at '/cygdrive/c/pharo-vm
...
Which is basically a permission issue - just as an additional security warning as one clones into "C:\pharo-vm" same way as the CI build (which is typically a directory outside of the directories owned by the current user and can impose a security risk). One can ignore this warning
To prevent the warning I modified the run.ps1 in C:\pharo-vm into
git config --global --add safe.directory /cygdrive/c/pharo-vm
mkdir -p build
cd build
cmake .. -DAPPNAME=Pharo -DVM_EXECUTABLE_NAME=Pharo
and run again
powershell -File .\scripts\runScriptInCygwinBash.ps1 run.ps1
now it does not lament and the build starts running and downloading stuff (like the LibGit2-download) but failed with the original error
-- Performing Test IS_WFORMAT_SUPPORTED - Failed
-- Performing Test IS_WFORMAT_SECURITY_SUPPORTED
-- Performing Test IS_WFORMAT_SECURITY_SUPPORTED - Failed
-- Could NOT find GSSAPI (missing: GSSAPI_LIBRARIES GSSAPI_INCLUDE_DIR)
-- Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR (missing: OPENSSL_CRYPTO_LIBRARY OPENSSL_INCLUDE_DIR)
CMake Error at build/LibGit2-src/cmake/SelectHTTPSBackend.cmake:29 (message):
Unable to autodetect a usable HTTPS backend.Please pass the backend name
explicitly (-DUSE_HTTPS=backend)
Call Stack (most recent call first):
build/LibGit2-src/src/CMakeLists.txt:40 (include)
Looks like still some magic wizardry is required
OpenSSL comes with cygwin and is installed/available in C:\cygwin\bin
After checking with @tesonep (who suggested to set DPHARO_DEPENDENCIES_PREFER_DOWNLOAD_BINARIES to TRUE) I modified the run.ps1 into
git config --global --add safe.directory /cygdrive/c/pharo-vm
mkdir -p build
cd build
cmake -S .. -B . -DPHARO_DEPENDENCIES_PREFER_DOWNLOAD_BINARIES=TRUE
cmake .. -DAPPNAME=Pharo -DVM_EXECUTABLE_NAME=Pharo
this passed the open ssl and freetype issue but failed again on dot executable from Graphviz not found" (white part in screenshot) and failing in custom rules (the red part in screenshot)
The
I tried to follow the Pharo VM documentation to download and build the windows VM on a fresh machine: Unfortunately the documentation on https://github.com/pharo-project/pharo-vm/wiki/Building-on-Windows is incomplete and not very helpful:
I used a fresh Windows virtualized Windows box
First I installed a git client "https://git-scm.com"
Then I run
to get a copy of the repository
I navigate to the script directory and run the installation script for the cygwin tools
the tools get installed
6, Now I open Cygwin.bat from C:\cygwin to get into Cygwin commandline (which is not mentioned and missing in the docu)
and already get same errors: