arekdygas opened a new issue #3838:
URL: https://github.com/apache/couchdb/issues/3838


   ## Description
   
   When running command:
   
   `../configure --disable-ctypes --disable-ion --disable-jemalloc 
--enable-optimize --enable-hardening --with-intl-api 
--build-backends=RecursiveMake --with-visual-studio-version=2017 
--with-system-icu --disable-debug --enable-gczeal --target=x86_64-pc-mingw32 
--host=x86_64-pc-mingw32 --prefix=/c/relax/vcpkg/installed/x64-windows`
   
   I get the following output:
   
   ```
   arek@DESKTOP-8FQIKTH /c/relax/gecko-dev/js/src/build_OPT.OBJ
   $ ../configure --disable-ctypes --disable-ion --disable-jemalloc 
--enable-optimize --enable-hardening --with-intl-api -
   -build-backends=RecursiveMake --with-visual-studio-version=2017 
--with-system-icu --disable-debug --enable-gczeal --tar
   get=x86_64-pc-mingw32 --host=x86_64-pc-mingw32 
--prefix=/c/relax/vcpkg/installed/x64-windows
   Creating Python environment
   New python executable in 
c:\relax\gecko-dev\js\src\build_OPT.OBJ\_virtualenv\Scripts\python2.7.exe
   Also creating executable in 
c:\relax\gecko-dev\js\src\build_OPT.OBJ\_virtualenv\Scripts\python.exe
   Installing setuptools, pip, wheel...done.
   running build_ext
   
   building 'psutil._psutil_windows' extension
   
   error: Microsoft Visual C++ 9.0 is required. Get it from 
http://aka.ms/vcpython27
   
   
   Error processing command. Ignoring because optional. 
(optional:setup.py:third_party/python/psutil:build_ext:--inplace)
   Error processing command. Ignoring because optional. 
(optional:packages.txt:comm/build/virtualenv_packages.txt)
   c:\relax\gecko-dev\python\mozbuild\mozbuild\virtualenv.py:376: UserWarning: 
Hacking environment to allow binary Python extensions to build. You can make 
this warning go away by installing Visual Studio 2008. You can download the 
Express Edition installer from http://go.microsoft.com/?linkid=7729279
     warnings.warn('Hacking environment to allow binary Python '
   Reexecuting in the virtualenv
   checking for vcs source checkout... git
   checking for a shell... C:/mozilla-build/msys/bin/sh.exe
   checking for host system type... x86_64-pc-mingw32
   checking for target system type... x86_64-pc-mingw32
   checking for a shell... C:/mozilla-build/msys/bin/sh.exe
   checking for host system type... x86_64-pc-mingw32
   checking for target system type... x86_64-pc-mingw32
   checking for android platform directory... no
   checking for android sysroot directory... no
   checking for android system directory... no
   checking for the Android toolchain directory... not found
   checking for android platform directory... no
   checking for android system directory... no
   checking for android sysroot directory... no
   checking for the Android toolchain directory... not found
   checking for vcs source checkout... git
   checking whether cross compiling... no
   checking for the target C compiler... 
'C:/PROGRA~2/MICROS~2/2017/BUILDT~1/VC/Tools/MSVC/1416~1.270/bin/HostX64/x64/cl.exe'
   checking whether the target C compiler can be used... yes
   checking for Python 3... c:\mozilla-build\python3\python3.EXE (3.7.4)
   checking for git... 'c:/PROGRA~1/Git/cmd/git.exe'
   checking for Git version... 2.33.1.windows.1
   checking for sparse checkout... no
   checking for pkg_config... not found
   checking for yasm... c:/mozilla-build/bin/yasm.exe
   checking yasm version... 1.3.0
   checking for android ndk version... no
   checking for GoogleVR SDK... Not specified
   checking the target C compiler version... 19.16.27045
   checking the target C compiler works... yes
   checking for the target C++ compiler... 
'C:/PROGRA~2/MICROS~2/2017/BUILDT~1/VC/Tools/MSVC/1416~1.270/bin/HostX64/x64/cl.exe'
   checking whether the target C++ compiler can be used... yes
   checking the target C++ compiler version... 19.16.27045
   checking the target C++ compiler works... yes
   checking for the host C compiler... 
'C:/PROGRA~2/MICROS~2/2017/BUILDT~1/VC/Tools/MSVC/1416~1.270/bin/HostX64/x64/cl.exe'
   checking whether the host C compiler can be used... yes
   checking the host C compiler version... 19.16.27045
   checking the host C compiler works... yes
   checking for the host C++ compiler... 
'C:/PROGRA~2/MICROS~2/2017/BUILDT~1/VC/Tools/MSVC/1416~1.270/bin/HostX64/x64/cl.exe'
   checking whether the host C++ compiler can be used... yes
   checking the host C++ compiler version... 19.16.27045
   checking the host C++ compiler works... yes
   checking for 64-bit OS... yes
   checking bindgen cflags... no
   checking for Windows SDK... 0x0a00 in 'C:\Program Files (x86)\Windows 
Kits\10\'
   checking for Universal CRT SDK... 10.0.18362.0 in 'C:\Program Files 
(x86)\Windows Kits\10\'
   checking for the Debug Interface Access SDK... 
C:/PROGRA~2/MICROS~2/2017/BUILDT~1/DIA SDK
   checking for mt... 'C:/PROGRA~2/WI3CF2~1/10/bin/100183~1.0/x64/mt.exe'
   checking whether MT is really Microsoft Manifest Tool... yes
   checking for linker... 
'C:/PROGRA~2/MICROS~2/2017/BUILDT~1/VC/Tools/MSVC/1416~1.270/bin/HostX64/x64/link.exe'
   checking for makecab... c:/Windows/System32/makecab.exe
   checking for fxc... 'C:/PROGRA~2/WI3CF2~1/10/bin/100183~1.0/x64/fxc.exe'
   checking for stdint.h... yes
   checking for inttypes.h... yes
   checking for malloc.h... yes
   checking for alloca.h... no
   checking for perf_event_open system call... no
   checking for awk... C:/mozilla-build/msys/bin/gawk.exe
   checking for perl... C:/mozilla-build/msys/bin/perl.exe
   checking for minimum required perl version >= 5.006... 5.008008
   checking for full perl installation... yes
   checking for gmake... C:/mozilla-build/msys/local/bin/make.exe
   checking for watchman... c:/mozilla-build/bin/watchman.exe
   checking for watchman version... 4.9.1
   checking for xargs... C:/mozilla-build/msys/bin/xargs.exe
   checking for makensisu... c:/mozilla-build/nsis-3.01/makensis-3.01.exe
   checking for NSIS version... 3.01
   checking for 32-bit NSIS... yes
   checking for 7z... c:/mozilla-build/bin/7z.exe
   checking for autoconf... C:/mozilla-build/msys/local/bin/autoconf-2.13
   Refreshing c:/relax/gecko-dev/js/src/old-configure with 
C:/mozilla-build/msys/local/bin/autoconf-2.13
   creating cache ./config.cache
   checking host system type... x86_64-pc-mingw32
   checking target system type... x86_64-pc-mingw32
   checking build system type... x86_64-pc-mingw32
   checking for gcc... cl.exe
   checking whether the C compiler (cl.exe  ) works... yes
   checking whether the C compiler (cl.exe  ) is a cross-compiler... no
   checking whether we are using GNU C... no
   checking whether cl.exe accepts -g... no
   checking for c++... cl.exe
   checking whether the C++ compiler (cl.exe  ) works... yes
   checking whether the C++ compiler (cl.exe  ) is a cross-compiler... no
   checking whether we are using GNU C++... no
   checking whether cl.exe accepts -g... no
   checking for ranlib... :
   checking for ml64... /c/Program Files (x86)/Microsoft Visual 
Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin/HostX64/x64/ml64
   checking for ar... no
   checking for strip... no
   checking for windres... no
   checking for _getc_nolock... yes
   checking for sb-conf... no
   checking for ve... no
   checking for X... no
   checking NSPR selection... source-tree
   checking for valid optimization flags... yes
   checking what kind of list files are supported by the linker... list
   *** The pkg-config script could not be found. Make sure it is
   *** in your path, or set the PKG_CONFIG environment variable
   *** to the full path to pkg-config.
   *** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config.
   configure: error: Library requirements (icu-i18n >= 59.1) not met; consider 
adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a 
nonstandard prefix so pkg-config can find them.
   DEBUG: <truncated - see config.log for full output>
   DEBUG:
   DEBUG: cl : Command line warning D9035 : option 'o' has been deprecated and 
will be removed in a future release
   DEBUG: cl conftest.obj
   DEBUG:
   DEBUG: cl : Command line warning D9002 : ignoring unknown option 
'-LARGEADDRESSAWARE'
   DEBUG: cl : Command line warning D9002 : ignoring unknown option '-NXCOMPAT'
   DEBUG: cl : Command line warning D9002 : ignoring unknown option '-RELEASE'
   DEBUG: Microsoft (R) Incremental Linker Version 14.16.27045.0
   DEBUG: Copyright (C) Microsoft Corporation.  All rights reserved.
   DEBUG:
   DEBUG: /out:conftest.exe
   DEBUG: /out:conftest.exe
   DEBUG: conftest.obj
   DEBUG: kernel32.lib
   DEBUG: user32.lib
   DEBUG: gdi32.lib
   DEBUG: winmm.lib
   DEBUG: wsock32.lib
   DEBUG: advapi32.lib
   DEBUG: configure: error: Library requirements (icu-i18n >= 59.1) not met; 
consider adjusting the PKG_CONFIG_PATH environment variable if your libraries 
are in a nonstandard prefix so pkg-config can find them.
   ERROR: old-configure failed
   ```
   
   Problems:
   1. Microsoft Visual C++ 9.0 is required.
   
   True - this specific version is not installed, but VC++ 2015-2022 
redistributables are installed (32 nad 64 bit versions).
   
   2. The pkg-config script could not be found.
   
   I found two *pkg-config* files and tried to append their locations to PATH, 
but without success - other errors were thrown, this time breaking the running 
script during execution of `pkg-config --version` command.
   
   3. Library requirements (icu-i18n >= 59.1) not met.
   
   It looks like this one is related to missing *pkg-config*, and I hope that 
it might work if it were correctly set up. I checked for all *icu-i18n* files 
on the drive, and all I found, with .pc extension, had version higher than 59.1
   
   ## Steps to Reproduce
   
   Follow the steps from couchdb-glazier/README.md
   
   ## Expected Behaviour
   
   SpiderMonkey builds with no errors.
   
   ## Your Environment
   
   Operating system: Windows 10 Enterprise Evaluation (21H1), with all current 
updates
   
   ## Additional Context
   
   I don't really know, whether this issue belongs here, but as there's no 
possibility of reporting issues in couchdb-glazier repo, I'm posting here. If 
this is wrong place, please point me to where I could look for help.
   
   Installation was executed on newly installed Windows, with all updates. I 
tried steps described in README, first using *release/couchdb_3.0.0* branch, 
and then using *main* branch. In both cases I got the described errors.
   
   Before getting to the SpiderMonkey build, I encountered a few additional 
problems, which I believe doesn't contribute to final errors:
   
   - two issues with running commands just after `choco install` (git, pip) - 
these required refreshing env variables
   - two issues with CRLF line endings in cloned repos: *erlang/otp* (which was 
fixed in *main* branch), and *gecko-dev* (I finally cloned it using `--config 
core.autocrlf=false` option)
   - *vswhere.exe* in *bin\shell.ps1* was not found, so full path to it was 
required
   - when running `./otp_build installer_win32  2>&1 | tee 
build_installer_win32.txt` I got multiple *Failed to locate vcredist_x86.exe 
because cl.exe was in an unexpected location*, but I assumed these might be ok, 
as the build finished.
   
   I'm still trying to figure out how to fix the SpiderMonkey issues on my own, 
but as I read some posts on the net, the whole build on Windows is not an easy 
task, especially for an older version. If anyone, who was going this path 
before, could point me in the correct direction, I'd be grateful.
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to