You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@couchdb.apache.org by Nick Vatamaniuc <va...@apache.org> on 2021/11/03 02:00:02 UTC

[VOTE] Release Apache CouchDB 3.2.1

Dear community,

I would like to propose that we release Apache CouchDB 3.2.1

Candidate release notes:

    https://docs.couchdb.org/en/latest/whatsnew/3.2.html#version-3-2-1

We encourage the whole community to download and test these release
artefacts so that any critical issues can be resolved before the
release is made. Everyone is free to vote on this release, so dig
right in! (Only PMC members have binding votes, but they depend on
community feedback to gauge if an official release is ready to be
made.)

The release artefacts we are voting on are available here:

    https://dist.apache.org/repos/dist/dev/couchdb/source/3.2.1/rc.1/

There, you will find a tarball, a GPG signature, and SHA256/SHA512 checksums.

Please follow the test procedure here:

    https://cwiki.apache.org/confluence/display/COUCHDB/Testing+a+Source+Release

Please remember that "RC1" is an annotation. If the vote passes, these
artefacts will be released as Apache CouchDB 3.2.1

Please cast your votes now.

Thanks,
-Nick

Re: [VOTE] Release Apache CouchDB 3.2.1

Posted by Nick Vatamaniuc <va...@gmail.com>.
Dear community,

The vote has now closed.
Thank you to everyone who participated!

The results are:
+1 - 4 (3 binding) votes
+0 - 0 votes
-0 - 0 votes
-1 - 0 votes

The vote result is +1 (passed)

Thanks,
-Nick

On Wed, Nov 3, 2021 at 1:12 PM Jay Doane <ja...@gmail.com> wrote:
>
> +1
>
> GPG signature, checksums, `make check`, fauxton: all good
>
> macOS 11.6.1, OTP 23.3.4.8, SpiderMonkey 60
>
> Small nit on release notes:
> > there are less corner cases
> s/less/fewer/
>
> Very nice work, Nick!
>
>
> On Tue, Nov 2, 2021 at 7:00 PM Nick Vatamaniuc <va...@apache.org> wrote:
>
> > Dear community,
> >
> > I would like to propose that we release Apache CouchDB 3.2.1
> >
> > Candidate release notes:
> >
> >     https://docs.couchdb.org/en/latest/whatsnew/3.2.html#version-3-2-1
> >
> > We encourage the whole community to download and test these release
> > artefacts so that any critical issues can be resolved before the
> > release is made. Everyone is free to vote on this release, so dig
> > right in! (Only PMC members have binding votes, but they depend on
> > community feedback to gauge if an official release is ready to be
> > made.)
> >
> > The release artefacts we are voting on are available here:
> >
> >     https://dist.apache.org/repos/dist/dev/couchdb/source/3.2.1/rc.1/
> >
> > There, you will find a tarball, a GPG signature, and SHA256/SHA512
> > checksums.
> >
> > Please follow the test procedure here:
> >
> >
> > https://cwiki.apache.org/confluence/display/COUCHDB/Testing+a+Source+Release
> >
> > Please remember that "RC1" is an annotation. If the vote passes, these
> > artefacts will be released as Apache CouchDB 3.2.1
> >
> > Please cast your votes now.
> >
> > Thanks,
> > -Nick
> >

Re: [VOTE] Release Apache CouchDB 3.2.1

Posted by Jay Doane <ja...@gmail.com>.
+1

GPG signature, checksums, `make check`, fauxton: all good

macOS 11.6.1, OTP 23.3.4.8, SpiderMonkey 60

Small nit on release notes:
> there are less corner cases
s/less/fewer/

Very nice work, Nick!


On Tue, Nov 2, 2021 at 7:00 PM Nick Vatamaniuc <va...@apache.org> wrote:

> Dear community,
>
> I would like to propose that we release Apache CouchDB 3.2.1
>
> Candidate release notes:
>
>     https://docs.couchdb.org/en/latest/whatsnew/3.2.html#version-3-2-1
>
> We encourage the whole community to download and test these release
> artefacts so that any critical issues can be resolved before the
> release is made. Everyone is free to vote on this release, so dig
> right in! (Only PMC members have binding votes, but they depend on
> community feedback to gauge if an official release is ready to be
> made.)
>
> The release artefacts we are voting on are available here:
>
>     https://dist.apache.org/repos/dist/dev/couchdb/source/3.2.1/rc.1/
>
> There, you will find a tarball, a GPG signature, and SHA256/SHA512
> checksums.
>
> Please follow the test procedure here:
>
>
> https://cwiki.apache.org/confluence/display/COUCHDB/Testing+a+Source+Release
>
> Please remember that "RC1" is an annotation. If the vote passes, these
> artefacts will be released as Apache CouchDB 3.2.1
>
> Please cast your votes now.
>
> Thanks,
> -Nick
>

Re: [VOTE] Release Apache CouchDB 3.2.1

Posted by Jan Lehnardt <ja...@apache.org>.
sig, checksums, make check: ok

macOS 12.0.1, Erlang 24, SpiderMonkey 68

Mac convenience binary for testing:

  https://dist.apache.org/repos/dist/dev/couchdb/binary/mac/3.2.1/rc.1/

Best
Jan
— 
> On 3. Nov 2021, at 03:00, Nick Vatamaniuc <va...@apache.org> wrote:
> 
> Dear community,
> 
> I would like to propose that we release Apache CouchDB 3.2.1
> 
> Candidate release notes:
> 
>    https://docs.couchdb.org/en/latest/whatsnew/3.2.html#version-3-2-1
> 
> We encourage the whole community to download and test these release
> artefacts so that any critical issues can be resolved before the
> release is made. Everyone is free to vote on this release, so dig
> right in! (Only PMC members have binding votes, but they depend on
> community feedback to gauge if an official release is ready to be
> made.)
> 
> The release artefacts we are voting on are available here:
> 
>    https://dist.apache.org/repos/dist/dev/couchdb/source/3.2.1/rc.1/
> 
> There, you will find a tarball, a GPG signature, and SHA256/SHA512 checksums.
> 
> Please follow the test procedure here:
> 
>    https://cwiki.apache.org/confluence/display/COUCHDB/Testing+a+Source+Release
> 
> Please remember that "RC1" is an annotation. If the vote passes, these
> artefacts will be released as Apache CouchDB 3.2.1
> 
> Please cast your votes now.
> 
> Thanks,
> -Nick


Re: [VOTE] Release Apache CouchDB 3.2.1

Posted by Nick Vatamaniuc <va...@gmail.com>.
My own vote: +1

sig: ok
checksums: ok
make check: ok
Fauxton self-check: ok

Ubuntu 20.04, Erlang 23, Spidermonkey 68

Cheers,
-Nick

On Tue, Nov 2, 2021 at 10:00 PM Nick Vatamaniuc <va...@apache.org> wrote:
>
> Dear community,
>
> I would like to propose that we release Apache CouchDB 3.2.1
>
> Candidate release notes:
>
>     https://docs.couchdb.org/en/latest/whatsnew/3.2.html#version-3-2-1
>
> We encourage the whole community to download and test these release
> artefacts so that any critical issues can be resolved before the
> release is made. Everyone is free to vote on this release, so dig
> right in! (Only PMC members have binding votes, but they depend on
> community feedback to gauge if an official release is ready to be
> made.)
>
> The release artefacts we are voting on are available here:
>
>     https://dist.apache.org/repos/dist/dev/couchdb/source/3.2.1/rc.1/
>
> There, you will find a tarball, a GPG signature, and SHA256/SHA512 checksums.
>
> Please follow the test procedure here:
>
>     https://cwiki.apache.org/confluence/display/COUCHDB/Testing+a+Source+Release
>
> Please remember that "RC1" is an annotation. If the vote passes, these
> artefacts will be released as Apache CouchDB 3.2.1
>
> Please cast your votes now.
>
> Thanks,
> -Nick

Re: Glazier (Was: [VOTE] Release Apache CouchDB 3.2.1)

Posted by Jan Lehnardt <ja...@apache.org>.
We’ve been hacking on this for the past couple of weeks on Slack as time permits,
but we’re not getting to a conclusive solution.

As far as Ic an tell, we manage to build everything in a way that should work when
put together, but then we fail at having the right lib paths set up and I have no
clue as to how this really works on Windows.

If there’s someone here who knows this better could join the CouchDB Slack for a
bit of interactive debugging, I think we can get this going relatively quickly.

Ronny and I a usually around during EU workdays and times.

Thanks!

Best
Jan

— 
Professional Support for Apache CouchDB:
https://neighbourhood.ie/couchdb-support/

24/7 Observation for your CouchDB Instances:
https://opservatory.app

> On 26. Nov 2021, at 11:11, Ronny Berndt <ro...@kioskkinder.com.INVALID> wrote:
> 
> Hi Will,
> 
> yes, you are right. I seperated the sm build dir and didn't copied the
> dll's into the $VCPK_BIN directory.
> Now, i copied the dll's into the bin dir and couchjs should work. The
> problem is, that the library 'priv/couch_ejson_compare' isn't found
> and Jan and I have no ideas how to fix that library loading error. Maybe we
> need some interactive help...
> 
> Log file: https://pastebin.com/DakNMrVM
> 
> Cheers, Ronny
> 
> Florian Beckert & Ronny Berndt GbR
> Saalstr. 3
> 07743 Jena
> 
> Tel.    03641 - 6391110
> Fax.    03641 - 219637
> E-Mail: post@kioskkinder.com
> 
> 
> Am Do., 25. Nov. 2021 um 15:12 Uhr schrieb Will Young <
> lostnetworking@gmail.com>:
> 
>> Hi Ronny,
>> 
>>  I think the issue is the glazier is packaging up the dlls from
>> $VCPKG_BIN in couchdb's \bin for the runtime which don't correspond to
>> the paths you are indicating. You could probably copy the dlls into
>> $vcpkg_bin or add lines to copy the dlls from your icu and mozjs to
>> the build_installer.ps1.
>> 
>> Cheers,
>> Will
>> 
>> Am Do., 25. Nov. 2021 um 13:00 Uhr schrieb Ronny Berndt
>> <ro...@kioskkinder.com.invalid>:
>>> 
>>> Hi Will,
>>> 
>>> i played a little bit with the paths and set it explicit in
>>> src/couch/rebar.config.script :
>>> 
>>> {JS_CFLAGS, JS_LDFLAGS} = case os:type() of
>>>    {win32, _} when SMVsn == "1.8.5" ->
>>>        {
>>>            "/DXP_WIN",
>>>            "mozjs185-1.0.lib"
>>>        };
>>>    {unix, _} when SMVsn == "1.8.5" ->
>>>        {
>>>            "-DXP_UNIX -I/usr/include/js -I/usr/local/include/js",
>>>            "-L/usr/local/lib -lmozjs185 -lm"
>>>        };
>>>    {win32, _} when SMVsn == "60" ->
>>>        {
>>>            "/IC:\\relax\\esr60-obj-opt-x86_64-pc-mingw32\\dist\\include
>>> /DXP_WIN",
>>> 
>>> "/LIBPATH:\"C:\\relax\\esr60-obj-opt-x86_64-pc-mingw32\\js\\src\\build\"
>>> mozjs-60.lib"
>>> ...
>>> ...
>>> ...
>>> 
>>> IcuWinEnv = [{"CFLAGS", "$DRV_CFLAGS
>>> /IC:\\Users\\User\\Downloads\\icu4c-60_3-src\\icu\\include /DXP_WIN"},
>>>             {"LDFLAGS",
>>> "/LIBPATH:\"C:\\Users\\User\\Downloads\\icu4c-60_3-src\\icu\\lib64\"
>>> icuin.lib icudt.lib icuuc.lib"}].
>>> 
>>> 
>>> It's compiling again, but with another error when starting
>> ".\dev\runc.cmd"
>>> 
>>> https://pastebin.com/vqzhR4Zk
>>> 
>>> Cheers, Ronny
>>> 
>>> Florian Beckert & Ronny Berndt GbR
>>> Saalstr. 3
>>> 07743 Jena
>>> 
>>> Tel.    03641 - 6391110
>>> Fax.    03641 - 219637
>>> E-Mail: post@kioskkinder.com
>>> 
>>> 
>>> Am Do., 25. Nov. 2021 um 10:49 Uhr schrieb Will Young <
>>> lostnetworking@gmail.com>:
>>> 
>>>> Hi Ronny,
>>>> 
>>>>   If you follow its configuration here:
>>>> 
>>>> 
>>>> 
>> https://github.com/apache/couchdb/blob/main/src/couch/rebar.config.script#L197
>>>> to IcuWinEnv, it doesn't set any search paths like other OSes since it
>> is
>>>> expecting these paths to already be setup in the environment.
>>>> 
>>>> From your earlier email I saw:
>>>> 
>>>> ERROR: sh(cmd /q /c link.exe
>> priv/couch_ejson_compare/couch_ejson_compare.o
>>>> icuin.lib icudt.lib icuuc.lib /DLL  /LIBPATH:"c:/Program
>>>> Files/erl9.3.3.14/lib/erl_interface-3.10.2.2/lib" ei.lib
>>>> /OUT:priv/couch_ejson_compare.dll)
>>>> 
>>>> I'm not sure why the vcpkg setup from glazier isn't applying library
>> paths
>>>> to the environment, (dumping the env with set(?) might help identify
>> the
>>>> cause) but in IcuWinEnv you could try adding a /LIBPATH before the ICU
>>>> libraries with their location to get a clean build of this nif which
>>>> hopefully then runs.. I think order might also not be important to
>> window's
>>>> linker so an alternative is to just jam a copy of the vcpkg directories
>>>> into that erl_interface directory.
>>>> Cheers,
>>>> Will Young
>>>> 
>>>> 
>>>> Am Mi., 24. Nov. 2021 um 17:50 Uhr schrieb Ronny Berndt
>>>> <ro...@kioskkinder.com.invalid>:
>>>>> 
>>>>> Hi,
>>>>> 
>>>>> today I hacked manually the missing unresolved symbols for sm 60 in
>> and
>>>>> compiled the icu lib by myself. So I was able to create the
>>>>> couchdb v3.2.1 executable and the installer.
>>>>> 
>>>>> Side note: running the tests wasn't successful!
>>>>> 
>>>>> I can run .\dev\run.cmd or the installed version. If I click on
>> "Verify
>>>>> Installation" I get the following error messages, see
>>>>> https://pastebin.com/55kyfint
>>>>> 
>>>>> Jan and I running out of the origin of the problem...
>>>>> 
>>>>> Cheers, Ronny
>>>>> 
>>>>> 
>>>>> Florian Beckert & Ronny Berndt GbR
>>>>> Saalstr. 3
>>>>> 07743 Jena
>>>>> 
>>>>> Tel.    03641 - 6391110
>>>>> Fax.    03641 - 219637
>>>>> E-Mail: post@kioskkinder.com
>>>>> 
>>>>> 
>>>>> Am Mi., 17. Nov. 2021 um 23:13 Uhr schrieb Will Young <
>>>>> lostnetworking@gmail.com>:
>>>>> 
>>>>>> Hi,
>>>>>> 
>>>>>>  Are you sure these PS shells are running from the glazier
>>>>>> bin/shell1.ps usually referred to as the same powershell in the
>> docs?
>>>>>> 
>>>>>>   Looking at the pastebin it looks like libicu is being passed to
>> the
>>>>>> windows linker in UNIX proper style so it is being ignored, so the
>>>>>> pkg-config setup didn't really change that all the icu symbols are
>>>>>> going to be missing. In the later make for couch with the copied
>> mozjs
>>>>>> binaries, it also looks like the vcpkg paths are not in the
>> linker's
>>>>>> "LIBPATH" and so it makes sense that the missing symbols are again
>>>>>> from libraries being added there.
>>>>>> 
>>>>>> I don't think you need to add pkg-conf (or don't want to give it a
>>>>>> real configuration), rather glazier's bin/shell.ps1 launched by or
>>>>>> after the bin/install_dependencies.ps1 has all the necessary path
>>>>>> settings. (AFAIK windows does some dll's search voodoo so only
>> having
>>>>>> the paths is important and explicit -llibname like options simply
>>>>>> aren't used.)
>>>>>> 
>>>>>> I've not really tried glazier and don't actually have windows
>> locally,
>>>>>> I am just using it as a guide for wsl in github actions, so my
>>>>>> apologies if I'm way off on how it works..
>>>>>>  Will Young
>>>>>> 
>>>> 
>> 


Re: Glazier (Was: [VOTE] Release Apache CouchDB 3.2.1)

Posted by Ronny Berndt <ro...@kioskkinder.com.INVALID>.
Hi Will,

yes, you are right. I seperated the sm build dir and didn't copied the
dll's into the $VCPK_BIN directory.
Now, i copied the dll's into the bin dir and couchjs should work. The
problem is, that the library 'priv/couch_ejson_compare' isn't found
and Jan and I have no ideas how to fix that library loading error. Maybe we
need some interactive help...

Log file: https://pastebin.com/DakNMrVM

Cheers, Ronny

Florian Beckert & Ronny Berndt GbR
Saalstr. 3
07743 Jena

Tel.    03641 - 6391110
Fax.    03641 - 219637
E-Mail: post@kioskkinder.com


Am Do., 25. Nov. 2021 um 15:12 Uhr schrieb Will Young <
lostnetworking@gmail.com>:

> Hi Ronny,
>
>   I think the issue is the glazier is packaging up the dlls from
> $VCPKG_BIN in couchdb's \bin for the runtime which don't correspond to
> the paths you are indicating. You could probably copy the dlls into
> $vcpkg_bin or add lines to copy the dlls from your icu and mozjs to
> the build_installer.ps1.
>
> Cheers,
> Will
>
> Am Do., 25. Nov. 2021 um 13:00 Uhr schrieb Ronny Berndt
> <ro...@kioskkinder.com.invalid>:
> >
> > Hi Will,
> >
> > i played a little bit with the paths and set it explicit in
> > src/couch/rebar.config.script :
> >
> > {JS_CFLAGS, JS_LDFLAGS} = case os:type() of
> >     {win32, _} when SMVsn == "1.8.5" ->
> >         {
> >             "/DXP_WIN",
> >             "mozjs185-1.0.lib"
> >         };
> >     {unix, _} when SMVsn == "1.8.5" ->
> >         {
> >             "-DXP_UNIX -I/usr/include/js -I/usr/local/include/js",
> >             "-L/usr/local/lib -lmozjs185 -lm"
> >         };
> >     {win32, _} when SMVsn == "60" ->
> >         {
> >             "/IC:\\relax\\esr60-obj-opt-x86_64-pc-mingw32\\dist\\include
> > /DXP_WIN",
> >
> > "/LIBPATH:\"C:\\relax\\esr60-obj-opt-x86_64-pc-mingw32\\js\\src\\build\"
> > mozjs-60.lib"
> > ...
> > ...
> > ...
> >
> > IcuWinEnv = [{"CFLAGS", "$DRV_CFLAGS
> > /IC:\\Users\\User\\Downloads\\icu4c-60_3-src\\icu\\include /DXP_WIN"},
> >              {"LDFLAGS",
> > "/LIBPATH:\"C:\\Users\\User\\Downloads\\icu4c-60_3-src\\icu\\lib64\"
> > icuin.lib icudt.lib icuuc.lib"}].
> >
> >
> > It's compiling again, but with another error when starting
> ".\dev\runc.cmd"
> >
> > https://pastebin.com/vqzhR4Zk
> >
> > Cheers, Ronny
> >
> > Florian Beckert & Ronny Berndt GbR
> > Saalstr. 3
> > 07743 Jena
> >
> > Tel.    03641 - 6391110
> > Fax.    03641 - 219637
> > E-Mail: post@kioskkinder.com
> >
> >
> > Am Do., 25. Nov. 2021 um 10:49 Uhr schrieb Will Young <
> > lostnetworking@gmail.com>:
> >
> > > Hi Ronny,
> > >
> > >    If you follow its configuration here:
> > >
> > >
> > >
> https://github.com/apache/couchdb/blob/main/src/couch/rebar.config.script#L197
> > > to IcuWinEnv, it doesn't set any search paths like other OSes since it
> is
> > > expecting these paths to already be setup in the environment.
> > >
> > > From your earlier email I saw:
> > >
> > > ERROR: sh(cmd /q /c link.exe
> priv/couch_ejson_compare/couch_ejson_compare.o
> > > icuin.lib icudt.lib icuuc.lib /DLL  /LIBPATH:"c:/Program
> > > Files/erl9.3.3.14/lib/erl_interface-3.10.2.2/lib" ei.lib
> > > /OUT:priv/couch_ejson_compare.dll)
> > >
> > > I'm not sure why the vcpkg setup from glazier isn't applying library
> paths
> > > to the environment, (dumping the env with set(?) might help identify
> the
> > > cause) but in IcuWinEnv you could try adding a /LIBPATH before the ICU
> > > libraries with their location to get a clean build of this nif which
> > > hopefully then runs.. I think order might also not be important to
> window's
> > > linker so an alternative is to just jam a copy of the vcpkg directories
> > > into that erl_interface directory.
> > > Cheers,
> > > Will Young
> > >
> > >
> > > Am Mi., 24. Nov. 2021 um 17:50 Uhr schrieb Ronny Berndt
> > > <ro...@kioskkinder.com.invalid>:
> > > >
> > > > Hi,
> > > >
> > > > today I hacked manually the missing unresolved symbols for sm 60 in
> and
> > > > compiled the icu lib by myself. So I was able to create the
> > > > couchdb v3.2.1 executable and the installer.
> > > >
> > > > Side note: running the tests wasn't successful!
> > > >
> > > > I can run .\dev\run.cmd or the installed version. If I click on
> "Verify
> > > > Installation" I get the following error messages, see
> > > > https://pastebin.com/55kyfint
> > > >
> > > > Jan and I running out of the origin of the problem...
> > > >
> > > > Cheers, Ronny
> > > >
> > > >
> > > > Florian Beckert & Ronny Berndt GbR
> > > > Saalstr. 3
> > > > 07743 Jena
> > > >
> > > > Tel.    03641 - 6391110
> > > > Fax.    03641 - 219637
> > > > E-Mail: post@kioskkinder.com
> > > >
> > > >
> > > > Am Mi., 17. Nov. 2021 um 23:13 Uhr schrieb Will Young <
> > > > lostnetworking@gmail.com>:
> > > >
> > > > > Hi,
> > > > >
> > > > >   Are you sure these PS shells are running from the glazier
> > > > > bin/shell1.ps usually referred to as the same powershell in the
> docs?
> > > > >
> > > > >    Looking at the pastebin it looks like libicu is being passed to
> the
> > > > > windows linker in UNIX proper style so it is being ignored, so the
> > > > > pkg-config setup didn't really change that all the icu symbols are
> > > > > going to be missing. In the later make for couch with the copied
> mozjs
> > > > > binaries, it also looks like the vcpkg paths are not in the
> linker's
> > > > > "LIBPATH" and so it makes sense that the missing symbols are again
> > > > > from libraries being added there.
> > > > >
> > > > > I don't think you need to add pkg-conf (or don't want to give it a
> > > > > real configuration), rather glazier's bin/shell.ps1 launched by or
> > > > > after the bin/install_dependencies.ps1 has all the necessary path
> > > > > settings. (AFAIK windows does some dll's search voodoo so only
> having
> > > > > the paths is important and explicit -llibname like options simply
> > > > > aren't used.)
> > > > >
> > > > > I've not really tried glazier and don't actually have windows
> locally,
> > > > > I am just using it as a guide for wsl in github actions, so my
> > > > > apologies if I'm way off on how it works..
> > > > >   Will Young
> > > > >
> > >
>

Re: Glazier (Was: [VOTE] Release Apache CouchDB 3.2.1)

Posted by Will Young <lo...@gmail.com>.
Hi Ronny,

  I think the issue is the glazier is packaging up the dlls from
$VCPKG_BIN in couchdb's \bin for the runtime which don't correspond to
the paths you are indicating. You could probably copy the dlls into
$vcpkg_bin or add lines to copy the dlls from your icu and mozjs to
the build_installer.ps1.

Cheers,
Will

Am Do., 25. Nov. 2021 um 13:00 Uhr schrieb Ronny Berndt
<ro...@kioskkinder.com.invalid>:
>
> Hi Will,
>
> i played a little bit with the paths and set it explicit in
> src/couch/rebar.config.script :
>
> {JS_CFLAGS, JS_LDFLAGS} = case os:type() of
>     {win32, _} when SMVsn == "1.8.5" ->
>         {
>             "/DXP_WIN",
>             "mozjs185-1.0.lib"
>         };
>     {unix, _} when SMVsn == "1.8.5" ->
>         {
>             "-DXP_UNIX -I/usr/include/js -I/usr/local/include/js",
>             "-L/usr/local/lib -lmozjs185 -lm"
>         };
>     {win32, _} when SMVsn == "60" ->
>         {
>             "/IC:\\relax\\esr60-obj-opt-x86_64-pc-mingw32\\dist\\include
> /DXP_WIN",
>
> "/LIBPATH:\"C:\\relax\\esr60-obj-opt-x86_64-pc-mingw32\\js\\src\\build\"
> mozjs-60.lib"
> ...
> ...
> ...
>
> IcuWinEnv = [{"CFLAGS", "$DRV_CFLAGS
> /IC:\\Users\\User\\Downloads\\icu4c-60_3-src\\icu\\include /DXP_WIN"},
>              {"LDFLAGS",
> "/LIBPATH:\"C:\\Users\\User\\Downloads\\icu4c-60_3-src\\icu\\lib64\"
> icuin.lib icudt.lib icuuc.lib"}].
>
>
> It's compiling again, but with another error when starting ".\dev\runc.cmd"
>
> https://pastebin.com/vqzhR4Zk
>
> Cheers, Ronny
>
> Florian Beckert & Ronny Berndt GbR
> Saalstr. 3
> 07743 Jena
>
> Tel.    03641 - 6391110
> Fax.    03641 - 219637
> E-Mail: post@kioskkinder.com
>
>
> Am Do., 25. Nov. 2021 um 10:49 Uhr schrieb Will Young <
> lostnetworking@gmail.com>:
>
> > Hi Ronny,
> >
> >    If you follow its configuration here:
> >
> >
> > https://github.com/apache/couchdb/blob/main/src/couch/rebar.config.script#L197
> > to IcuWinEnv, it doesn't set any search paths like other OSes since it is
> > expecting these paths to already be setup in the environment.
> >
> > From your earlier email I saw:
> >
> > ERROR: sh(cmd /q /c link.exe priv/couch_ejson_compare/couch_ejson_compare.o
> > icuin.lib icudt.lib icuuc.lib /DLL  /LIBPATH:"c:/Program
> > Files/erl9.3.3.14/lib/erl_interface-3.10.2.2/lib" ei.lib
> > /OUT:priv/couch_ejson_compare.dll)
> >
> > I'm not sure why the vcpkg setup from glazier isn't applying library paths
> > to the environment, (dumping the env with set(?) might help identify the
> > cause) but in IcuWinEnv you could try adding a /LIBPATH before the ICU
> > libraries with their location to get a clean build of this nif which
> > hopefully then runs.. I think order might also not be important to window's
> > linker so an alternative is to just jam a copy of the vcpkg directories
> > into that erl_interface directory.
> > Cheers,
> > Will Young
> >
> >
> > Am Mi., 24. Nov. 2021 um 17:50 Uhr schrieb Ronny Berndt
> > <ro...@kioskkinder.com.invalid>:
> > >
> > > Hi,
> > >
> > > today I hacked manually the missing unresolved symbols for sm 60 in and
> > > compiled the icu lib by myself. So I was able to create the
> > > couchdb v3.2.1 executable and the installer.
> > >
> > > Side note: running the tests wasn't successful!
> > >
> > > I can run .\dev\run.cmd or the installed version. If I click on "Verify
> > > Installation" I get the following error messages, see
> > > https://pastebin.com/55kyfint
> > >
> > > Jan and I running out of the origin of the problem...
> > >
> > > Cheers, Ronny
> > >
> > >
> > > Florian Beckert & Ronny Berndt GbR
> > > Saalstr. 3
> > > 07743 Jena
> > >
> > > Tel.    03641 - 6391110
> > > Fax.    03641 - 219637
> > > E-Mail: post@kioskkinder.com
> > >
> > >
> > > Am Mi., 17. Nov. 2021 um 23:13 Uhr schrieb Will Young <
> > > lostnetworking@gmail.com>:
> > >
> > > > Hi,
> > > >
> > > >   Are you sure these PS shells are running from the glazier
> > > > bin/shell1.ps usually referred to as the same powershell in the docs?
> > > >
> > > >    Looking at the pastebin it looks like libicu is being passed to the
> > > > windows linker in UNIX proper style so it is being ignored, so the
> > > > pkg-config setup didn't really change that all the icu symbols are
> > > > going to be missing. In the later make for couch with the copied mozjs
> > > > binaries, it also looks like the vcpkg paths are not in the linker's
> > > > "LIBPATH" and so it makes sense that the missing symbols are again
> > > > from libraries being added there.
> > > >
> > > > I don't think you need to add pkg-conf (or don't want to give it a
> > > > real configuration), rather glazier's bin/shell.ps1 launched by or
> > > > after the bin/install_dependencies.ps1 has all the necessary path
> > > > settings. (AFAIK windows does some dll's search voodoo so only having
> > > > the paths is important and explicit -llibname like options simply
> > > > aren't used.)
> > > >
> > > > I've not really tried glazier and don't actually have windows locally,
> > > > I am just using it as a guide for wsl in github actions, so my
> > > > apologies if I'm way off on how it works..
> > > >   Will Young
> > > >
> >

Re: Glazier (Was: [VOTE] Release Apache CouchDB 3.2.1)

Posted by Ronny Berndt <ro...@kioskkinder.com.INVALID>.
Hi Will,

i played a little bit with the paths and set it explicit in
src/couch/rebar.config.script :

{JS_CFLAGS, JS_LDFLAGS} = case os:type() of
    {win32, _} when SMVsn == "1.8.5" ->
        {
            "/DXP_WIN",
            "mozjs185-1.0.lib"
        };
    {unix, _} when SMVsn == "1.8.5" ->
        {
            "-DXP_UNIX -I/usr/include/js -I/usr/local/include/js",
            "-L/usr/local/lib -lmozjs185 -lm"
        };
    {win32, _} when SMVsn == "60" ->
        {
            "/IC:\\relax\\esr60-obj-opt-x86_64-pc-mingw32\\dist\\include
/DXP_WIN",

"/LIBPATH:\"C:\\relax\\esr60-obj-opt-x86_64-pc-mingw32\\js\\src\\build\"
mozjs-60.lib"
...
...
...

IcuWinEnv = [{"CFLAGS", "$DRV_CFLAGS
/IC:\\Users\\User\\Downloads\\icu4c-60_3-src\\icu\\include /DXP_WIN"},
             {"LDFLAGS",
"/LIBPATH:\"C:\\Users\\User\\Downloads\\icu4c-60_3-src\\icu\\lib64\"
icuin.lib icudt.lib icuuc.lib"}].


It's compiling again, but with another error when starting ".\dev\runc.cmd"

https://pastebin.com/vqzhR4Zk

Cheers, Ronny

Florian Beckert & Ronny Berndt GbR
Saalstr. 3
07743 Jena

Tel.    03641 - 6391110
Fax.    03641 - 219637
E-Mail: post@kioskkinder.com


Am Do., 25. Nov. 2021 um 10:49 Uhr schrieb Will Young <
lostnetworking@gmail.com>:

> Hi Ronny,
>
>    If you follow its configuration here:
>
>
> https://github.com/apache/couchdb/blob/main/src/couch/rebar.config.script#L197
> to IcuWinEnv, it doesn't set any search paths like other OSes since it is
> expecting these paths to already be setup in the environment.
>
> From your earlier email I saw:
>
> ERROR: sh(cmd /q /c link.exe priv/couch_ejson_compare/couch_ejson_compare.o
> icuin.lib icudt.lib icuuc.lib /DLL  /LIBPATH:"c:/Program
> Files/erl9.3.3.14/lib/erl_interface-3.10.2.2/lib" ei.lib
> /OUT:priv/couch_ejson_compare.dll)
>
> I'm not sure why the vcpkg setup from glazier isn't applying library paths
> to the environment, (dumping the env with set(?) might help identify the
> cause) but in IcuWinEnv you could try adding a /LIBPATH before the ICU
> libraries with their location to get a clean build of this nif which
> hopefully then runs.. I think order might also not be important to window's
> linker so an alternative is to just jam a copy of the vcpkg directories
> into that erl_interface directory.
> Cheers,
> Will Young
>
>
> Am Mi., 24. Nov. 2021 um 17:50 Uhr schrieb Ronny Berndt
> <ro...@kioskkinder.com.invalid>:
> >
> > Hi,
> >
> > today I hacked manually the missing unresolved symbols for sm 60 in and
> > compiled the icu lib by myself. So I was able to create the
> > couchdb v3.2.1 executable and the installer.
> >
> > Side note: running the tests wasn't successful!
> >
> > I can run .\dev\run.cmd or the installed version. If I click on "Verify
> > Installation" I get the following error messages, see
> > https://pastebin.com/55kyfint
> >
> > Jan and I running out of the origin of the problem...
> >
> > Cheers, Ronny
> >
> >
> > Florian Beckert & Ronny Berndt GbR
> > Saalstr. 3
> > 07743 Jena
> >
> > Tel.    03641 - 6391110
> > Fax.    03641 - 219637
> > E-Mail: post@kioskkinder.com
> >
> >
> > Am Mi., 17. Nov. 2021 um 23:13 Uhr schrieb Will Young <
> > lostnetworking@gmail.com>:
> >
> > > Hi,
> > >
> > >   Are you sure these PS shells are running from the glazier
> > > bin/shell1.ps usually referred to as the same powershell in the docs?
> > >
> > >    Looking at the pastebin it looks like libicu is being passed to the
> > > windows linker in UNIX proper style so it is being ignored, so the
> > > pkg-config setup didn't really change that all the icu symbols are
> > > going to be missing. In the later make for couch with the copied mozjs
> > > binaries, it also looks like the vcpkg paths are not in the linker's
> > > "LIBPATH" and so it makes sense that the missing symbols are again
> > > from libraries being added there.
> > >
> > > I don't think you need to add pkg-conf (or don't want to give it a
> > > real configuration), rather glazier's bin/shell.ps1 launched by or
> > > after the bin/install_dependencies.ps1 has all the necessary path
> > > settings. (AFAIK windows does some dll's search voodoo so only having
> > > the paths is important and explicit -llibname like options simply
> > > aren't used.)
> > >
> > > I've not really tried glazier and don't actually have windows locally,
> > > I am just using it as a guide for wsl in github actions, so my
> > > apologies if I'm way off on how it works..
> > >   Will Young
> > >
>

Re: Glazier (Was: [VOTE] Release Apache CouchDB 3.2.1)

Posted by Will Young <lo...@gmail.com>.
Hi Ronny,

   If you follow its configuration here:

https://github.com/apache/couchdb/blob/main/src/couch/rebar.config.script#L197
to IcuWinEnv, it doesn't set any search paths like other OSes since it is
expecting these paths to already be setup in the environment.

From your earlier email I saw:

ERROR: sh(cmd /q /c link.exe priv/couch_ejson_compare/couch_ejson_compare.o
icuin.lib icudt.lib icuuc.lib /DLL  /LIBPATH:"c:/Program
Files/erl9.3.3.14/lib/erl_interface-3.10.2.2/lib" ei.lib
/OUT:priv/couch_ejson_compare.dll)

I'm not sure why the vcpkg setup from glazier isn't applying library paths
to the environment, (dumping the env with set(?) might help identify the
cause) but in IcuWinEnv you could try adding a /LIBPATH before the ICU
libraries with their location to get a clean build of this nif which
hopefully then runs.. I think order might also not be important to window's
linker so an alternative is to just jam a copy of the vcpkg directories
into that erl_interface directory.
Cheers,
Will Young


Am Mi., 24. Nov. 2021 um 17:50 Uhr schrieb Ronny Berndt
<ro...@kioskkinder.com.invalid>:
>
> Hi,
>
> today I hacked manually the missing unresolved symbols for sm 60 in and
> compiled the icu lib by myself. So I was able to create the
> couchdb v3.2.1 executable and the installer.
>
> Side note: running the tests wasn't successful!
>
> I can run .\dev\run.cmd or the installed version. If I click on "Verify
> Installation" I get the following error messages, see
> https://pastebin.com/55kyfint
>
> Jan and I running out of the origin of the problem...
>
> Cheers, Ronny
>
>
> Florian Beckert & Ronny Berndt GbR
> Saalstr. 3
> 07743 Jena
>
> Tel.    03641 - 6391110
> Fax.    03641 - 219637
> E-Mail: post@kioskkinder.com
>
>
> Am Mi., 17. Nov. 2021 um 23:13 Uhr schrieb Will Young <
> lostnetworking@gmail.com>:
>
> > Hi,
> >
> >   Are you sure these PS shells are running from the glazier
> > bin/shell1.ps usually referred to as the same powershell in the docs?
> >
> >    Looking at the pastebin it looks like libicu is being passed to the
> > windows linker in UNIX proper style so it is being ignored, so the
> > pkg-config setup didn't really change that all the icu symbols are
> > going to be missing. In the later make for couch with the copied mozjs
> > binaries, it also looks like the vcpkg paths are not in the linker's
> > "LIBPATH" and so it makes sense that the missing symbols are again
> > from libraries being added there.
> >
> > I don't think you need to add pkg-conf (or don't want to give it a
> > real configuration), rather glazier's bin/shell.ps1 launched by or
> > after the bin/install_dependencies.ps1 has all the necessary path
> > settings. (AFAIK windows does some dll's search voodoo so only having
> > the paths is important and explicit -llibname like options simply
> > aren't used.)
> >
> > I've not really tried glazier and don't actually have windows locally,
> > I am just using it as a guide for wsl in github actions, so my
> > apologies if I'm way off on how it works..
> >   Will Young
> >

Re: Glazier (Was: [VOTE] Release Apache CouchDB 3.2.1)

Posted by Ronny Berndt <ro...@kioskkinder.com.INVALID>.
Hi,

today I hacked manually the missing unresolved symbols for sm 60 in and
compiled the icu lib by myself. So I was able to create the
couchdb v3.2.1 executable and the installer.

Side note: running the tests wasn't successful!

I can run .\dev\run.cmd or the installed version. If I click on "Verify
Installation" I get the following error messages, see
https://pastebin.com/55kyfint

Jan and I running out of the origin of the problem...

Cheers, Ronny


Florian Beckert & Ronny Berndt GbR
Saalstr. 3
07743 Jena

Tel.    03641 - 6391110
Fax.    03641 - 219637
E-Mail: post@kioskkinder.com


Am Mi., 17. Nov. 2021 um 23:13 Uhr schrieb Will Young <
lostnetworking@gmail.com>:

> Hi,
>
>   Are you sure these PS shells are running from the glazier
> bin/shell1.ps usually referred to as the same powershell in the docs?
>
>    Looking at the pastebin it looks like libicu is being passed to the
> windows linker in UNIX proper style so it is being ignored, so the
> pkg-config setup didn't really change that all the icu symbols are
> going to be missing. In the later make for couch with the copied mozjs
> binaries, it also looks like the vcpkg paths are not in the linker's
> "LIBPATH" and so it makes sense that the missing symbols are again
> from libraries being added there.
>
> I don't think you need to add pkg-conf (or don't want to give it a
> real configuration), rather glazier's bin/shell.ps1 launched by or
> after the bin/install_dependencies.ps1 has all the necessary path
> settings. (AFAIK windows does some dll's search voodoo so only having
> the paths is important and explicit -llibname like options simply
> aren't used.)
>
> I've not really tried glazier and don't actually have windows locally,
> I am just using it as a guide for wsl in github actions, so my
> apologies if I'm way off on how it works..
>   Will Young
>

Re: Glazier (Was: [VOTE] Release Apache CouchDB 3.2.1)

Posted by Will Young <lo...@gmail.com>.
Hi,

  Are you sure these PS shells are running from the glazier
bin/shell1.ps usually referred to as the same powershell in the docs?

   Looking at the pastebin it looks like libicu is being passed to the
windows linker in UNIX proper style so it is being ignored, so the
pkg-config setup didn't really change that all the icu symbols are
going to be missing. In the later make for couch with the copied mozjs
binaries, it also looks like the vcpkg paths are not in the linker's
"LIBPATH" and so it makes sense that the missing symbols are again
from libraries being added there.

I don't think you need to add pkg-conf (or don't want to give it a
real configuration), rather glazier's bin/shell.ps1 launched by or
after the bin/install_dependencies.ps1 has all the necessary path
settings. (AFAIK windows does some dll's search voodoo so only having
the paths is important and explicit -llibname like options simply
aren't used.)

I've not really tried glazier and don't actually have windows locally,
I am just using it as a guide for wsl in github actions, so my
apologies if I'm way off on how it works..
  Will Young

Re: Glazier (Was: [VOTE] Release Apache CouchDB 3.2.1)

Posted by Ronny Berndt <ro...@kioskkinder.com.INVALID>.
only informational, my MOZCONFIG for the mach tool:

---------------------------------------------------------------------------------------------------------------------------------------------------

# Build only the JS shell
ac_add_options --enable-application=js

# Enable optimization for speed
ac_add_options --enable-optimize

# Disable debug checks to better match a release build of Firefox.
ac_add_options --disable-debug


ac_add_options --disable-ctypes
ac_add_options --disable-ion
ac_add_options --disable-jemalloc
ac_add_options --enable-hardening
ac_add_options --with-intl-api
ac_add_options --build-backends=RecursiveMake
ac_add_options --with-visual-studio-version=2017
ac_add_options --with-system-icu
ac_add_options --enable-gczeal
ac_add_options --target=x86_64-pc-mingw32
ac_add_options --host=x86_64-pc-mingw32


# Use a separate objdir for optimized builds to allow easy
# switching between optimized and debug builds while developing.
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-opt-@CONFIG_GUESS@

---------------------------------------------------------------------------------------------------------------------------------------------------

I only did a copy and paste from the configure command from the readme...


Florian Beckert & Ronny Berndt GbR
Saalstr. 3
07743 Jena

Tel.    03641 - 6391110
Fax.    03641 - 219637
E-Mail: post@kioskkinder.com


Am Mi., 17. Nov. 2021 um 18:11 Uhr schrieb Ronny Berndt <
ronny@kioskkinder.com>:

> Hi,
>
> i build the sm lib with the mozilla "mach" tool and copied the files (dll,
> pdb, includes,...) to c:\relax\vcpkg\installed\x64-windows ...
>
> Now, if I run 'make -f Makefile.win' I'm getting the following result:
>
> PS C:\relax\couchdb> make -f .\Makefile.win
> ==> config (compile)
> ==> b64url (compile)
> ==> ets_lru (compile)
> ==> khash (compile)
> ==> snappy (compile)
> ==> bear (compile)
> ==> meck (compile)
> ==> folsom (compile)
> ==> hyper (compile)
> ==> ibrowse (compile)
> ==> jiffy (compile)
> ==> mochiweb (compile)
> ==> recon (compile)
> ==> couch_epi (compile)
> ==> couch_log (compile)
> ==> chttpd (compile)
> ==> couch (compile)
> Microsoft (R) Incremental Linker Version 14.16.27045.0
> Copyright (C) Microsoft Corporation.  All rights reserved.
>
>    Creating library priv/couch_ejson_compare.lib and object
> priv/couch_ejson_compare.exp
> couch_ejson_compare.o : error LNK2019: unresolved external symbol
> u_getVersion_60 referenced in function get_collator
> couch_ejson_compare.o : error LNK2019: unresolved external symbol
> uiter_setUTF8_60 referenced in function compare_strings
> couch_ejson_compare.o : error LNK2019: unresolved external symbol
> ucol_open_60 referenced in function get_collator
> couch_ejson_compare.o : error LNK2019: unresolved external symbol
> ucol_close_60 referenced in function on_unload
> couch_ejson_compare.o : error LNK2019: unresolved external symbol
> ucol_strcollIter_60 referenced in function compare_strings
> couch_ejson_compare.o : error LNK2019: unresolved external symbol
> ucol_getUCAVersion_60 referenced in function get_collator
> priv/couch_ejson_compare.dll : fatal error LNK1120: 6 unresolved externals
> ERROR: sh(cmd /q /c link.exe
> priv/couch_ejson_compare/couch_ejson_compare.o icuin.lib icudt.lib
> icuuc.lib /DLL  /LIBPATH:"c:/Program
> Files/erl9.3.3.14/lib/erl_interface-3.10.2.2/lib" ei.lib
> /OUT:priv/couch_ejson_compare.dll)
> failed with return code 1120 and the following output:
> Microsoft (R) Incremental Linker Version 14.16.27045.0
> Copyright (C) Microsoft Corporation.  All rights reserved.
>
>    Creating library priv/couch_ejson_compare.lib and object
> priv/couch_ejson_compare.exp
> couch_ejson_compare.o : error LNK2019: unresolved external symbol
> u_getVersion_60 referenced in function get_collator
> couch_ejson_compare.o : error LNK2019: unresolved external symbol
> uiter_setUTF8_60 referenced in function compare_strings
> couch_ejson_compare.o : error LNK2019: unresolved external symbol
> ucol_open_60 referenced in function get_collator
> couch_ejson_compare.o : error LNK2019: unresolved external symbol
> ucol_close_60 referenced in function on_unload
> couch_ejson_compare.o : error LNK2019: unresolved external symbol
> ucol_strcollIter_60 referenced in function compare_strings
> couch_ejson_compare.o : error LNK2019: unresolved external symbol
> ucol_getUCAVersion_60 referenced in function get_collator
> priv/couch_ejson_compare.dll : fatal error LNK1120: 6 unresolved externals
>
> ERROR: compile failed while processing c:/relax/couchdb/src/couch:
> rebar_abort
> make: *** [.\Makefile.win:109: couch] Error 1
>
>
> Any new ideas?
>
> Cheers,
> Ronny
>
> Florian Beckert & Ronny Berndt GbR
> Saalstr. 3
> 07743 Jena
>
> Tel.    03641 - 6391110
> Fax.    03641 - 219637
> E-Mail: post@kioskkinder.com
>
>
> Am Mi., 17. Nov. 2021 um 14:53 Uhr schrieb Peng Hui Jiang <
> jiangph@cn.ibm.com>:
>
>> HI Ronny,
>>
>> Not sure whether you noticed the document
>>
>> https://github.com/apache/couchdb-glazier/blob/main/build-spidermonkey60.md
>> when I worked on porting to SpiderMonkey 60. From the errors you listed,
>> we know that it is related to unresolved symbols. Can we narrow down
>> which
>> library to defined and implement them?
>>
>> Sorry that I have to find one windows environment and work on weekend for
>> follow up.
>>
>> Peng Hui @ Beijing
>>
>>
>>
>>
>> From:   "Ronny Berndt" <ro...@kioskkinder.com.INVALID>
>> To:     dev@couchdb.apache.org
>> Date:   2021/11/17 04:51 PM
>> Subject:        [EXTERNAL] Re: Glazier (Was: [VOTE] Release Apache
>> CouchDB
>> 3.2.1)
>>
>>
>>
>> Good morning,
>>
>> yesterday I discussed with Jan about the "compile CouchDB on windows"
>> problem.
>> I followed the steps and ended with the same problem like Jan.
>>
>> The first problem is, that there is no pkg-config executable. So I
>> installed it via choco:
>>
>> > choco install pkgconfiglite
>>
>> Then I started the mozilla-build shell:
>>
>> > C:\mozilla-build\start-shell.bat
>>
>> and added the chocolatey bin path to the path:
>>
>> > export PATH="/c/ProgramData/chocolatey/bin/:$PATH"
>>
>> so pkg-config --version  should print 0.28 .
>>
>> then i also needed to set the PKG_CONFIG_PATH  to
>>
>> > export
>> PKG_CONFIG_PATH=/c/relax/vcpkg/installed/x64-windows/lib/pkgconfig
>>
>> and now, you should do the configure step and the run the mozmake command
>> and you should end by the "new" error see
>>
>> https://pastebin.com/q26uEg6K
>>
>>
>> There is a linker error with unresolved symbols. Any new ideas or tips to
>> go further?
>>
>> Cheers,
>> Ronny
>>
>> Florian Beckert & Ronny Berndt GbR
>> Saalstr. 3
>> 07743 Jena
>>
>> Tel.    03641 - 6391110
>> Fax.    03641 - 219637
>> E-Mail: post@kioskkinder.com
>>
>>
>> Am Fr., 12. Nov. 2021 um 17:06 Uhr schrieb Joan Touzet
>> <wo...@apache.org>:
>>
>> > On 12/11/2021 08:40, Jan Lehnardt wrote:
>> > > My post is from just going through the README. Since then I found the
>> > separate SM60 README, but haven’t acted on it just yet.
>> > >
>> > > I see no notes for esr68, if you have anything, even temp commits, I’d
>> > take them :)
>> >
>> > Sorry, I must have aborted trying esr68, you are right that it's esr60
>> > that I was building against.
>> >
>> > Looking at the gecko-dev-60 tree I have the following in a git diff:
>> >
>> >
>> https://gist.github.com/wohali/304db8e9ae2a97b562eb7c0c95e86388
>>
>> >
>> > I'm not sure the vswhere.exe change is required, but if so, it is copied
>> > over from the default install.
>> >
>>
>>
>>
>>
>>

Re: Glazier (Was: [VOTE] Release Apache CouchDB 3.2.1)

Posted by Ronny Berndt <ro...@kioskkinder.com.INVALID>.
Hi,

i build the sm lib with the mozilla "mach" tool and copied the files (dll,
pdb, includes,...) to c:\relax\vcpkg\installed\x64-windows ...

Now, if I run 'make -f Makefile.win' I'm getting the following result:

PS C:\relax\couchdb> make -f .\Makefile.win
==> config (compile)
==> b64url (compile)
==> ets_lru (compile)
==> khash (compile)
==> snappy (compile)
==> bear (compile)
==> meck (compile)
==> folsom (compile)
==> hyper (compile)
==> ibrowse (compile)
==> jiffy (compile)
==> mochiweb (compile)
==> recon (compile)
==> couch_epi (compile)
==> couch_log (compile)
==> chttpd (compile)
==> couch (compile)
Microsoft (R) Incremental Linker Version 14.16.27045.0
Copyright (C) Microsoft Corporation.  All rights reserved.

   Creating library priv/couch_ejson_compare.lib and object
priv/couch_ejson_compare.exp
couch_ejson_compare.o : error LNK2019: unresolved external symbol
u_getVersion_60 referenced in function get_collator
couch_ejson_compare.o : error LNK2019: unresolved external symbol
uiter_setUTF8_60 referenced in function compare_strings
couch_ejson_compare.o : error LNK2019: unresolved external symbol
ucol_open_60 referenced in function get_collator
couch_ejson_compare.o : error LNK2019: unresolved external symbol
ucol_close_60 referenced in function on_unload
couch_ejson_compare.o : error LNK2019: unresolved external symbol
ucol_strcollIter_60 referenced in function compare_strings
couch_ejson_compare.o : error LNK2019: unresolved external symbol
ucol_getUCAVersion_60 referenced in function get_collator
priv/couch_ejson_compare.dll : fatal error LNK1120: 6 unresolved externals
ERROR: sh(cmd /q /c link.exe priv/couch_ejson_compare/couch_ejson_compare.o
icuin.lib icudt.lib icuuc.lib /DLL  /LIBPATH:"c:/Program
Files/erl9.3.3.14/lib/erl_interface-3.10.2.2/lib" ei.lib
/OUT:priv/couch_ejson_compare.dll)
failed with return code 1120 and the following output:
Microsoft (R) Incremental Linker Version 14.16.27045.0
Copyright (C) Microsoft Corporation.  All rights reserved.

   Creating library priv/couch_ejson_compare.lib and object
priv/couch_ejson_compare.exp
couch_ejson_compare.o : error LNK2019: unresolved external symbol
u_getVersion_60 referenced in function get_collator
couch_ejson_compare.o : error LNK2019: unresolved external symbol
uiter_setUTF8_60 referenced in function compare_strings
couch_ejson_compare.o : error LNK2019: unresolved external symbol
ucol_open_60 referenced in function get_collator
couch_ejson_compare.o : error LNK2019: unresolved external symbol
ucol_close_60 referenced in function on_unload
couch_ejson_compare.o : error LNK2019: unresolved external symbol
ucol_strcollIter_60 referenced in function compare_strings
couch_ejson_compare.o : error LNK2019: unresolved external symbol
ucol_getUCAVersion_60 referenced in function get_collator
priv/couch_ejson_compare.dll : fatal error LNK1120: 6 unresolved externals

ERROR: compile failed while processing c:/relax/couchdb/src/couch:
rebar_abort
make: *** [.\Makefile.win:109: couch] Error 1


Any new ideas?

Cheers,
Ronny

Florian Beckert & Ronny Berndt GbR
Saalstr. 3
07743 Jena

Tel.    03641 - 6391110
Fax.    03641 - 219637
E-Mail: post@kioskkinder.com


Am Mi., 17. Nov. 2021 um 14:53 Uhr schrieb Peng Hui Jiang <
jiangph@cn.ibm.com>:

> HI Ronny,
>
> Not sure whether you noticed the document
> https://github.com/apache/couchdb-glazier/blob/main/build-spidermonkey60.md
> when I worked on porting to SpiderMonkey 60. From the errors you listed,
> we know that it is related to unresolved symbols. Can we narrow down which
> library to defined and implement them?
>
> Sorry that I have to find one windows environment and work on weekend for
> follow up.
>
> Peng Hui @ Beijing
>
>
>
>
> From:   "Ronny Berndt" <ro...@kioskkinder.com.INVALID>
> To:     dev@couchdb.apache.org
> Date:   2021/11/17 04:51 PM
> Subject:        [EXTERNAL] Re: Glazier (Was: [VOTE] Release Apache CouchDB
> 3.2.1)
>
>
>
> Good morning,
>
> yesterday I discussed with Jan about the "compile CouchDB on windows"
> problem.
> I followed the steps and ended with the same problem like Jan.
>
> The first problem is, that there is no pkg-config executable. So I
> installed it via choco:
>
> > choco install pkgconfiglite
>
> Then I started the mozilla-build shell:
>
> > C:\mozilla-build\start-shell.bat
>
> and added the chocolatey bin path to the path:
>
> > export PATH="/c/ProgramData/chocolatey/bin/:$PATH"
>
> so pkg-config --version  should print 0.28 .
>
> then i also needed to set the PKG_CONFIG_PATH  to
>
> > export
> PKG_CONFIG_PATH=/c/relax/vcpkg/installed/x64-windows/lib/pkgconfig
>
> and now, you should do the configure step and the run the mozmake command
> and you should end by the "new" error see
>
> https://pastebin.com/q26uEg6K
>
>
> There is a linker error with unresolved symbols. Any new ideas or tips to
> go further?
>
> Cheers,
> Ronny
>
> Florian Beckert & Ronny Berndt GbR
> Saalstr. 3
> 07743 Jena
>
> Tel.    03641 - 6391110
> Fax.    03641 - 219637
> E-Mail: post@kioskkinder.com
>
>
> Am Fr., 12. Nov. 2021 um 17:06 Uhr schrieb Joan Touzet
> <wo...@apache.org>:
>
> > On 12/11/2021 08:40, Jan Lehnardt wrote:
> > > My post is from just going through the README. Since then I found the
> > separate SM60 README, but haven’t acted on it just yet.
> > >
> > > I see no notes for esr68, if you have anything, even temp commits, I’d
> > take them :)
> >
> > Sorry, I must have aborted trying esr68, you are right that it's esr60
> > that I was building against.
> >
> > Looking at the gecko-dev-60 tree I have the following in a git diff:
> >
> >
> https://gist.github.com/wohali/304db8e9ae2a97b562eb7c0c95e86388
>
> >
> > I'm not sure the vswhere.exe change is required, but if so, it is copied
> > over from the default install.
> >
>
>
>
>
>

RE: Glazier (Was: [VOTE] Release Apache CouchDB 3.2.1)

Posted by Peng Hui Jiang <ji...@cn.ibm.com>.
HI Ronny,

Not sure whether you noticed the document 
https://github.com/apache/couchdb-glazier/blob/main/build-spidermonkey60.md 
when I worked on porting to SpiderMonkey 60. From the errors you listed, 
we know that it is related to unresolved symbols. Can we narrow down which 
library to defined and implement them? 

Sorry that I have to find one windows environment and work on weekend for 
follow up.

Peng Hui @ Beijing




From:   "Ronny Berndt" <ro...@kioskkinder.com.INVALID>
To:     dev@couchdb.apache.org
Date:   2021/11/17 04:51 PM
Subject:        [EXTERNAL] Re: Glazier (Was: [VOTE] Release Apache CouchDB 
3.2.1)



Good morning,

yesterday I discussed with Jan about the "compile CouchDB on windows"
problem.
I followed the steps and ended with the same problem like Jan.

The first problem is, that there is no pkg-config executable. So I
installed it via choco:

> choco install pkgconfiglite

Then I started the mozilla-build shell:

> C:\mozilla-build\start-shell.bat

and added the chocolatey bin path to the path:

> export PATH="/c/ProgramData/chocolatey/bin/:$PATH"

so pkg-config --version  should print 0.28 .

then i also needed to set the PKG_CONFIG_PATH  to

> export 
PKG_CONFIG_PATH=/c/relax/vcpkg/installed/x64-windows/lib/pkgconfig

and now, you should do the configure step and the run the mozmake command
and you should end by the "new" error see

https://pastebin.com/q26uEg6K 


There is a linker error with unresolved symbols. Any new ideas or tips to
go further?

Cheers,
Ronny

Florian Beckert & Ronny Berndt GbR
Saalstr. 3
07743 Jena

Tel.    03641 - 6391110
Fax.    03641 - 219637
E-Mail: post@kioskkinder.com


Am Fr., 12. Nov. 2021 um 17:06 Uhr schrieb Joan Touzet 
<wo...@apache.org>:

> On 12/11/2021 08:40, Jan Lehnardt wrote:
> > My post is from just going through the README. Since then I found the
> separate SM60 README, but haven’t acted on it just yet.
> >
> > I see no notes for esr68, if you have anything, even temp commits, I’d
> take them :)
>
> Sorry, I must have aborted trying esr68, you are right that it's esr60
> that I was building against.
>
> Looking at the gecko-dev-60 tree I have the following in a git diff:
>
> 
https://gist.github.com/wohali/304db8e9ae2a97b562eb7c0c95e86388 

>
> I'm not sure the vswhere.exe change is required, but if so, it is copied
> over from the default install.
>





Re: Glazier (Was: [VOTE] Release Apache CouchDB 3.2.1)

Posted by Ronny Berndt <ro...@kioskkinder.com.INVALID>.
Good morning,

yesterday I discussed with Jan about the "compile CouchDB on windows"
problem.
I followed the steps and ended with the same problem like Jan.

The first problem is, that there is no pkg-config executable. So I
installed it via choco:

> choco install pkgconfiglite

Then I started the mozilla-build shell:

> C:\mozilla-build\start-shell.bat

and added the chocolatey bin path to the path:

> export PATH="/c/ProgramData/chocolatey/bin/:$PATH"

so pkg-config --version  should print 0.28 .

then i also needed to set the PKG_CONFIG_PATH  to

> export PKG_CONFIG_PATH=/c/relax/vcpkg/installed/x64-windows/lib/pkgconfig

and now, you should do the configure step and the run the mozmake command
and you should end by the "new" error see

https://pastebin.com/q26uEg6K

There is a linker error with unresolved symbols. Any new ideas or tips to
go further?

Cheers,
Ronny

Florian Beckert & Ronny Berndt GbR
Saalstr. 3
07743 Jena

Tel.    03641 - 6391110
Fax.    03641 - 219637
E-Mail: post@kioskkinder.com


Am Fr., 12. Nov. 2021 um 17:06 Uhr schrieb Joan Touzet <wo...@apache.org>:

> On 12/11/2021 08:40, Jan Lehnardt wrote:
> > My post is from just going through the README. Since then I found the
> separate SM60 README, but haven’t acted on it just yet.
> >
> > I see no notes for esr68, if you have anything, even temp commits, I’d
> take them :)
>
> Sorry, I must have aborted trying esr68, you are right that it's esr60
> that I was building against.
>
> Looking at the gecko-dev-60 tree I have the following in a git diff:
>
> https://gist.github.com/wohali/304db8e9ae2a97b562eb7c0c95e86388
>
> I'm not sure the vswhere.exe change is required, but if so, it is copied
> over from the default install.
>

Re: Glazier (Was: [VOTE] Release Apache CouchDB 3.2.1)

Posted by Joan Touzet <wo...@apache.org>.
On 12/11/2021 08:40, Jan Lehnardt wrote:
> My post is from just going through the README. Since then I found the separate SM60 README, but haven’t acted on it just yet.
> 
> I see no notes for esr68, if you have anything, even temp commits, I’d take them :)

Sorry, I must have aborted trying esr68, you are right that it's esr60 
that I was building against.

Looking at the gecko-dev-60 tree I have the following in a git diff:

https://gist.github.com/wohali/304db8e9ae2a97b562eb7c0c95e86388

I'm not sure the vswhere.exe change is required, but if so, it is copied 
over from the default install.

Re: Glazier (Was: [VOTE] Release Apache CouchDB 3.2.1)

Posted by Jan Lehnardt <ja...@apache.org>.
> On 11. Nov 2021, at 23:15, Joan Touzet <wo...@apache.org> wrote:
> 
>> Onto SpiderMonkey, any ideas for this:
>> 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.
>> Setting PKG_CONFIG_PATH to /c/relax/vcpkg/installed/x64-windows/[lib|bin] did not do the trick
> 
> Which SM? If this is still esr68, I show having commit b45f17587acd319d051a71983c97b452ef67203c of gecko cloned locally and no local changes to anything required to make it work.
> 
> Here is the output of vcpkg.exe list
> 
> https://gist.github.com/wohali/6306309951836a0b10b5be53c2b2b8a0

My post is from just going through the README. Since then I found the separate SM60 README, but haven’t acted on it just yet.

I see no notes for esr68, if you have anything, even temp commits, I’d take them :)

Best
Jan
—

Re: Glazier (Was: [VOTE] Release Apache CouchDB 3.2.1)

Posted by Joan Touzet <wo...@apache.org>.
> Onto SpiderMonkey, any ideas for this:
> 
> 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.
> 
> Setting PKG_CONFIG_PATH to /c/relax/vcpkg/installed/x64-windows/[lib|bin] did not do the trick

Which SM? If this is still esr68, I show having commit 
b45f17587acd319d051a71983c97b452ef67203c of gecko cloned locally and no 
local changes to anything required to make it work.

Here is the output of vcpkg.exe list

https://gist.github.com/wohali/6306309951836a0b10b5be53c2b2b8a0

Re: Glazier (Was: [VOTE] Release Apache CouchDB 3.2.1)

Posted by Jan Lehnardt <ja...@apache.org>.
> On 9. Nov 2021, at 18:33, Joan Touzet <wo...@apache.org> wrote:
> 
> 
> 
> On 09/11/2021 11:51, Jan Lehnardt wrote:
>> Heya Joan & Dave,
>> I’m working my way through the Glazier readme, thanks so much for the copious notes.
>> I had to change a few things to get ahead (noted below), and now I’m stuck.
>> # Missing PATH
>> I had to add this to PATH to make tool resolution work as described: https://github.com/apache/couchdb-glazier/commit/a9499252ad767579b023c179b5da0cd81f32a91d#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5
>> I hope this works generally and not just for me. So far so good.
>> # git clone otp under cygwin
>> The README says to git clone in PowerShell. This has the effect that line endings are \r\n and that doesn’t agree with the `otp_build` script.
>> Moving the git operations into cygwin fixes this.
> 
> Better to change the git config to not touch line endings, but you can do it this way.
> 
> git config auto.crlf false

aye

> 
>> https://github.com/apache/couchdb-glazier/commit/51e5767bc1cfd3285c57278d5f794a93e5bd0af9#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5
>> # Building Erlang
>> Without any changes, `otp_build autoconf` fails with: ”configure: error: C compiler cannot create executables“
>> In config.log I find: “LINK : fatal error LNK1181: cannot open input file ‘MSVCRT.LIB”
>> A half on on StackOverflow tells me I need:
>> export CFLAGS="-link -LIBPATH:/cygdrive/c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/lib/x64”
>> I got that to build once, but when trying to make it part of the install instructions, I get into trouble with the configure cache, which doesn’t expect CFLAGS and seems to come pre-filled with the OTP sources. I went through a little back and forth trying to fix this, but ended up with \\\\\ escape issues and gave up.
>> Any tips for making this work properly rather than hacking .cache files manually?
> 
> Believe I had a patch to submit to OTP to fix this very issue, they said they'd be willing to take it...and I never got to it. I recall it being a patch to their autoconf source to add that path.

Thanks.

Onto SpiderMonkey, any ideas for this:

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.

Setting PKG_CONFIG_PATH to /c/relax/vcpkg/installed/x64-windows/[lib|bin] did not do the trick

Best
Jan
—

>> Best
>> Jan
>> —
>> Professional Support for Apache CouchDB:
>> https://neighbourhood.ie/couchdb-support/
>> 24/7 Observation for your CouchDB Instances:
>> https://opservatory.app
>>> On 6. Nov 2021, at 18:06, Jan Lehnardt <ja...@apache.org> wrote:
>>> 
>>> Heya Joan,
>>> 
>>> thanks for the heads-up. Nick and I are tackling these this time around :)
>>> 
>>> Best
>>> Jan
>>> —
>>> 
>>>> On 3. Nov 2021, at 08:07, Joan Touzet <wo...@apache.org> wrote:
>>>> 
>>>> Hello there,
>>>> 
>>>> Sorry, I'm unavailable to help test and vote on releases.
>>>> 
>>>> I took notes during the 3.2.0 release as to what was needed to do the binary releases without me. Someone from the PMC, specifically, should pick this up for now.
>>>> 
>>>> https://gist.github.com/wohali/9f159bbdb6ef2c51a50d1e2326fc1d5b
>>>> 
>>>> Any questions, feel free to send me a note offlist.
>>>> 
>>>> Cheers,
>>>> Joan "too busy for a pithy quote" Touzet
>>>> 
>>>> On 02/11/2021 22:00, Nick Vatamaniuc wrote:
>>>>> Dear community,
>>>>> I would like to propose that we release Apache CouchDB 3.2.1
>>>>> Candidate release notes:
>>>>>    https://docs.couchdb.org/en/latest/whatsnew/3.2.html#version-3-2-1
>>>>> We encourage the whole community to download and test these release
>>>>> artefacts so that any critical issues can be resolved before the
>>>>> release is made. Everyone is free to vote on this release, so dig
>>>>> right in! (Only PMC members have binding votes, but they depend on
>>>>> community feedback to gauge if an official release is ready to be
>>>>> made.)
>>>>> The release artefacts we are voting on are available here:
>>>>>    https://dist.apache.org/repos/dist/dev/couchdb/source/3.2.1/rc.1/
>>>>> There, you will find a tarball, a GPG signature, and SHA256/SHA512 checksums.
>>>>> Please follow the test procedure here:
>>>>>    https://cwiki.apache.org/confluence/display/COUCHDB/Testing+a+Source+Release
>>>>> Please remember that "RC1" is an annotation. If the vote passes, these
>>>>> artefacts will be released as Apache CouchDB 3.2.1
>>>>> Please cast your votes now.
>>>>> Thanks,
>>>>> -Nick
>>> 


Re: Glazier (Was: [VOTE] Release Apache CouchDB 3.2.1)

Posted by Joan Touzet <wo...@apache.org>.

On 09/11/2021 11:51, Jan Lehnardt wrote:
> Heya Joan & Dave,
> 
> I’m working my way through the Glazier readme, thanks so much for the copious notes.
> 
> I had to change a few things to get ahead (noted below), and now I’m stuck.
> 
> # Missing PATH
> 
> I had to add this to PATH to make tool resolution work as described: https://github.com/apache/couchdb-glazier/commit/a9499252ad767579b023c179b5da0cd81f32a91d#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5
> 
> I hope this works generally and not just for me. So far so good.
> 
> # git clone otp under cygwin
> 
> The README says to git clone in PowerShell. This has the effect that line endings are \r\n and that doesn’t agree with the `otp_build` script.
> 
> Moving the git operations into cygwin fixes this.

Better to change the git config to not touch line endings, but you can 
do it this way.

git config auto.crlf false

> 
> https://github.com/apache/couchdb-glazier/commit/51e5767bc1cfd3285c57278d5f794a93e5bd0af9#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5
> 
> # Building Erlang
> 
> Without any changes, `otp_build autoconf` fails with: ”configure: error: C compiler cannot create executables“
> 
> In config.log I find: “LINK : fatal error LNK1181: cannot open input file ‘MSVCRT.LIB”
> 
> A half on on StackOverflow tells me I need:
> 
> export CFLAGS="-link -LIBPATH:/cygdrive/c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/lib/x64”
> 
> I got that to build once, but when trying to make it part of the install instructions, I get into trouble with the configure cache, which doesn’t expect CFLAGS and seems to come pre-filled with the OTP sources. I went through a little back and forth trying to fix this, but ended up with \\\\\ escape issues and gave up.
> 
> Any tips for making this work properly rather than hacking .cache files manually?

Believe I had a patch to submit to OTP to fix this very issue, they said 
they'd be willing to take it...and I never got to it. I recall it being 
a patch to their autoconf source to add that path.

> Best
> Jan
> —
> Professional Support for Apache CouchDB:
> https://neighbourhood.ie/couchdb-support/
> 
> 24/7 Observation for your CouchDB Instances:
> https://opservatory.app
> 
>> On 6. Nov 2021, at 18:06, Jan Lehnardt <ja...@apache.org> wrote:
>>
>> Heya Joan,
>>
>> thanks for the heads-up. Nick and I are tackling these this time around :)
>>
>> Best
>> Jan
>> —
>>
>>> On 3. Nov 2021, at 08:07, Joan Touzet <wo...@apache.org> wrote:
>>>
>>> Hello there,
>>>
>>> Sorry, I'm unavailable to help test and vote on releases.
>>>
>>> I took notes during the 3.2.0 release as to what was needed to do the binary releases without me. Someone from the PMC, specifically, should pick this up for now.
>>>
>>> https://gist.github.com/wohali/9f159bbdb6ef2c51a50d1e2326fc1d5b
>>>
>>> Any questions, feel free to send me a note offlist.
>>>
>>> Cheers,
>>> Joan "too busy for a pithy quote" Touzet
>>>
>>> On 02/11/2021 22:00, Nick Vatamaniuc wrote:
>>>> Dear community,
>>>> I would like to propose that we release Apache CouchDB 3.2.1
>>>> Candidate release notes:
>>>>     https://docs.couchdb.org/en/latest/whatsnew/3.2.html#version-3-2-1
>>>> We encourage the whole community to download and test these release
>>>> artefacts so that any critical issues can be resolved before the
>>>> release is made. Everyone is free to vote on this release, so dig
>>>> right in! (Only PMC members have binding votes, but they depend on
>>>> community feedback to gauge if an official release is ready to be
>>>> made.)
>>>> The release artefacts we are voting on are available here:
>>>>     https://dist.apache.org/repos/dist/dev/couchdb/source/3.2.1/rc.1/
>>>> There, you will find a tarball, a GPG signature, and SHA256/SHA512 checksums.
>>>> Please follow the test procedure here:
>>>>     https://cwiki.apache.org/confluence/display/COUCHDB/Testing+a+Source+Release
>>>> Please remember that "RC1" is an annotation. If the vote passes, these
>>>> artefacts will be released as Apache CouchDB 3.2.1
>>>> Please cast your votes now.
>>>> Thanks,
>>>> -Nick
>>
> 

Glazier (Was: [VOTE] Release Apache CouchDB 3.2.1)

Posted by Jan Lehnardt <ja...@apache.org>.
Heya Joan & Dave,

I’m working my way through the Glazier readme, thanks so much for the copious notes.

I had to change a few things to get ahead (noted below), and now I’m stuck.

# Missing PATH

I had to add this to PATH to make tool resolution work as described: https://github.com/apache/couchdb-glazier/commit/a9499252ad767579b023c179b5da0cd81f32a91d#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5

I hope this works generally and not just for me. So far so good.

# git clone otp under cygwin

The README says to git clone in PowerShell. This has the effect that line endings are \r\n and that doesn’t agree with the `otp_build` script.

Moving the git operations into cygwin fixes this.

https://github.com/apache/couchdb-glazier/commit/51e5767bc1cfd3285c57278d5f794a93e5bd0af9#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5

# Building Erlang

Without any changes, `otp_build autoconf` fails with: ”configure: error: C compiler cannot create executables“

In config.log I find: “LINK : fatal error LNK1181: cannot open input file ‘MSVCRT.LIB”

A half on on StackOverflow tells me I need:

export CFLAGS="-link -LIBPATH:/cygdrive/c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/lib/x64”

I got that to build once, but when trying to make it part of the install instructions, I get into trouble with the configure cache, which doesn’t expect CFLAGS and seems to come pre-filled with the OTP sources. I went through a little back and forth trying to fix this, but ended up with \\\\\ escape issues and gave up.

Any tips for making this work properly rather than hacking .cache files manually?

Best
Jan
— 
Professional Support for Apache CouchDB:
https://neighbourhood.ie/couchdb-support/

24/7 Observation for your CouchDB Instances:
https://opservatory.app

> On 6. Nov 2021, at 18:06, Jan Lehnardt <ja...@apache.org> wrote:
> 
> Heya Joan,
> 
> thanks for the heads-up. Nick and I are tackling these this time around :)
> 
> Best
> Jan
> —
> 
>> On 3. Nov 2021, at 08:07, Joan Touzet <wo...@apache.org> wrote:
>> 
>> Hello there,
>> 
>> Sorry, I'm unavailable to help test and vote on releases.
>> 
>> I took notes during the 3.2.0 release as to what was needed to do the binary releases without me. Someone from the PMC, specifically, should pick this up for now.
>> 
>> https://gist.github.com/wohali/9f159bbdb6ef2c51a50d1e2326fc1d5b
>> 
>> Any questions, feel free to send me a note offlist.
>> 
>> Cheers,
>> Joan "too busy for a pithy quote" Touzet
>> 
>> On 02/11/2021 22:00, Nick Vatamaniuc wrote:
>>> Dear community,
>>> I would like to propose that we release Apache CouchDB 3.2.1
>>> Candidate release notes:
>>>    https://docs.couchdb.org/en/latest/whatsnew/3.2.html#version-3-2-1
>>> We encourage the whole community to download and test these release
>>> artefacts so that any critical issues can be resolved before the
>>> release is made. Everyone is free to vote on this release, so dig
>>> right in! (Only PMC members have binding votes, but they depend on
>>> community feedback to gauge if an official release is ready to be
>>> made.)
>>> The release artefacts we are voting on are available here:
>>>    https://dist.apache.org/repos/dist/dev/couchdb/source/3.2.1/rc.1/
>>> There, you will find a tarball, a GPG signature, and SHA256/SHA512 checksums.
>>> Please follow the test procedure here:
>>>    https://cwiki.apache.org/confluence/display/COUCHDB/Testing+a+Source+Release
>>> Please remember that "RC1" is an annotation. If the vote passes, these
>>> artefacts will be released as Apache CouchDB 3.2.1
>>> Please cast your votes now.
>>> Thanks,
>>> -Nick
> 


Re: [VOTE] Release Apache CouchDB 3.2.1

Posted by Jan Lehnardt <ja...@apache.org>.
Hey all,

I’ve spent a good amount of time trying to get Windows binaries going but the combination of multiple rather byzantine build systems and a platform I have next to no experience with left me with all time I had for this spent and no result.

To resolve this is long-term, I have tasked two folks from my company to dig into this, but they won’t be able to take the helm on binaries until Q1/22 the earliest.

Is someone else here able to step up for Windows binaries (our most popular binaries :)?

Apologies and thanks for understanding.

Best
Jan
—
Professional Support for Apache CouchDB:
https://neighbourhood.ie/couchdb-support/

*24/7 Observation for your CouchDB Instances:
https://opservatory.app

> On 6. Nov 2021, at 18:06, Jan Lehnardt <ja...@apache.org> wrote:
> 
> Heya Joan,
> 
> thanks for the heads-up. Nick and I are tackling these this time around :)
> 
> Best
> Jan
> —
> 
>> On 3. Nov 2021, at 08:07, Joan Touzet <wo...@apache.org> wrote:
>> 
>> Hello there,
>> 
>> Sorry, I'm unavailable to help test and vote on releases.
>> 
>> I took notes during the 3.2.0 release as to what was needed to do the binary releases without me. Someone from the PMC, specifically, should pick this up for now.
>> 
>> https://gist.github.com/wohali/9f159bbdb6ef2c51a50d1e2326fc1d5b
>> 
>> Any questions, feel free to send me a note offlist.
>> 
>> Cheers,
>> Joan "too busy for a pithy quote" Touzet
>> 
>> On 02/11/2021 22:00, Nick Vatamaniuc wrote:
>>> Dear community,
>>> I would like to propose that we release Apache CouchDB 3.2.1
>>> Candidate release notes:
>>>    https://docs.couchdb.org/en/latest/whatsnew/3.2.html#version-3-2-1
>>> We encourage the whole community to download and test these release
>>> artefacts so that any critical issues can be resolved before the
>>> release is made. Everyone is free to vote on this release, so dig
>>> right in! (Only PMC members have binding votes, but they depend on
>>> community feedback to gauge if an official release is ready to be
>>> made.)
>>> The release artefacts we are voting on are available here:
>>>    https://dist.apache.org/repos/dist/dev/couchdb/source/3.2.1/rc.1/
>>> There, you will find a tarball, a GPG signature, and SHA256/SHA512 checksums.
>>> Please follow the test procedure here:
>>>    https://cwiki.apache.org/confluence/display/COUCHDB/Testing+a+Source+Release
>>> Please remember that "RC1" is an annotation. If the vote passes, these
>>> artefacts will be released as Apache CouchDB 3.2.1
>>> Please cast your votes now.
>>> Thanks,
>>> -Nick
> 


Re: [VOTE] Release Apache CouchDB 3.2.1

Posted by Nick Vatamaniuc <va...@gmail.com>.
I created rpm/deb packages and pushed them to JFrog. Please test them
as per: https://docs.couchdb.org/en/stable/install/unix.html#installation-using-the-apache-couchdb-convenience-binary-packages.
Note that the RPM package signing key has changed. Docs updated
accordingly.

I had also built x86 and ARM docker images
https://hub.docker.com/r/apache/couchdb/tags. Please test those as
well. The 3.2.1 tag is aliased to 3.2, 3, and "latest".

Thanks for the build instructions and the nicely done couchdb-pkg and
couchdb-docker repos, Joan!

Cheers,
-Nick

On Sat, Nov 6, 2021 at 1:06 PM Jan Lehnardt <ja...@apache.org> wrote:
>
> Heya Joan,
>
> thanks for the heads-up. Nick and I are tackling these this time around :)
>
> Best
> Jan
> —
>
> > On 3. Nov 2021, at 08:07, Joan Touzet <wo...@apache.org> wrote:
> >
> > Hello there,
> >
> > Sorry, I'm unavailable to help test and vote on releases.
> >
> > I took notes during the 3.2.0 release as to what was needed to do the binary releases without me. Someone from the PMC, specifically, should pick this up for now.
> >
> > https://gist.github.com/wohali/9f159bbdb6ef2c51a50d1e2326fc1d5b
> >
> > Any questions, feel free to send me a note offlist.
> >
> > Cheers,
> > Joan "too busy for a pithy quote" Touzet
> >
> > On 02/11/2021 22:00, Nick Vatamaniuc wrote:
> >> Dear community,
> >> I would like to propose that we release Apache CouchDB 3.2.1
> >> Candidate release notes:
> >>     https://docs.couchdb.org/en/latest/whatsnew/3.2.html#version-3-2-1
> >> We encourage the whole community to download and test these release
> >> artefacts so that any critical issues can be resolved before the
> >> release is made. Everyone is free to vote on this release, so dig
> >> right in! (Only PMC members have binding votes, but they depend on
> >> community feedback to gauge if an official release is ready to be
> >> made.)
> >> The release artefacts we are voting on are available here:
> >>     https://dist.apache.org/repos/dist/dev/couchdb/source/3.2.1/rc.1/
> >> There, you will find a tarball, a GPG signature, and SHA256/SHA512 checksums.
> >> Please follow the test procedure here:
> >>     https://cwiki.apache.org/confluence/display/COUCHDB/Testing+a+Source+Release
> >> Please remember that "RC1" is an annotation. If the vote passes, these
> >> artefacts will be released as Apache CouchDB 3.2.1
> >> Please cast your votes now.
> >> Thanks,
> >> -Nick
>

Re: [VOTE] Release Apache CouchDB 3.2.1

Posted by Jan Lehnardt <ja...@apache.org>.
Heya Joan,

thanks for the heads-up. Nick and I are tackling these this time around :)

Best
Jan
—

> On 3. Nov 2021, at 08:07, Joan Touzet <wo...@apache.org> wrote:
> 
> Hello there,
> 
> Sorry, I'm unavailable to help test and vote on releases.
> 
> I took notes during the 3.2.0 release as to what was needed to do the binary releases without me. Someone from the PMC, specifically, should pick this up for now.
> 
> https://gist.github.com/wohali/9f159bbdb6ef2c51a50d1e2326fc1d5b
> 
> Any questions, feel free to send me a note offlist.
> 
> Cheers,
> Joan "too busy for a pithy quote" Touzet
> 
> On 02/11/2021 22:00, Nick Vatamaniuc wrote:
>> Dear community,
>> I would like to propose that we release Apache CouchDB 3.2.1
>> Candidate release notes:
>>     https://docs.couchdb.org/en/latest/whatsnew/3.2.html#version-3-2-1
>> We encourage the whole community to download and test these release
>> artefacts so that any critical issues can be resolved before the
>> release is made. Everyone is free to vote on this release, so dig
>> right in! (Only PMC members have binding votes, but they depend on
>> community feedback to gauge if an official release is ready to be
>> made.)
>> The release artefacts we are voting on are available here:
>>     https://dist.apache.org/repos/dist/dev/couchdb/source/3.2.1/rc.1/
>> There, you will find a tarball, a GPG signature, and SHA256/SHA512 checksums.
>> Please follow the test procedure here:
>>     https://cwiki.apache.org/confluence/display/COUCHDB/Testing+a+Source+Release
>> Please remember that "RC1" is an annotation. If the vote passes, these
>> artefacts will be released as Apache CouchDB 3.2.1
>> Please cast your votes now.
>> Thanks,
>> -Nick


Re: [VOTE] Release Apache CouchDB 3.2.1

Posted by Joan Touzet <wo...@apache.org>.
Hello there,

Sorry, I'm unavailable to help test and vote on releases.

I took notes during the 3.2.0 release as to what was needed to do the 
binary releases without me. Someone from the PMC, specifically, should 
pick this up for now.

https://gist.github.com/wohali/9f159bbdb6ef2c51a50d1e2326fc1d5b

Any questions, feel free to send me a note offlist.

Cheers,
Joan "too busy for a pithy quote" Touzet

On 02/11/2021 22:00, Nick Vatamaniuc wrote:
> Dear community,
> 
> I would like to propose that we release Apache CouchDB 3.2.1
> 
> Candidate release notes:
> 
>      https://docs.couchdb.org/en/latest/whatsnew/3.2.html#version-3-2-1
> 
> We encourage the whole community to download and test these release
> artefacts so that any critical issues can be resolved before the
> release is made. Everyone is free to vote on this release, so dig
> right in! (Only PMC members have binding votes, but they depend on
> community feedback to gauge if an official release is ready to be
> made.)
> 
> The release artefacts we are voting on are available here:
> 
>      https://dist.apache.org/repos/dist/dev/couchdb/source/3.2.1/rc.1/
> 
> There, you will find a tarball, a GPG signature, and SHA256/SHA512 checksums.
> 
> Please follow the test procedure here:
> 
>      https://cwiki.apache.org/confluence/display/COUCHDB/Testing+a+Source+Release
> 
> Please remember that "RC1" is an annotation. If the vote passes, these
> artefacts will be released as Apache CouchDB 3.2.1
> 
> Please cast your votes now.
> 
> Thanks,
> -Nick
> 

Re: [VOTE] Release Apache CouchDB 3.2.1

Posted by Adam Kocoloski <ko...@apache.org>.
+1

GPG signature, sha256 checksum, `make check` all look good

Debian Buster, Erlang 22, SpiderMonkey 60

Thanks Nick!

> On Nov 2, 2021, at 10:00 PM, Nick Vatamaniuc <va...@apache.org> wrote:
> 
> Dear community,
> 
> I would like to propose that we release Apache CouchDB 3.2.1
> 
> Candidate release notes:
> 
>    https://docs.couchdb.org/en/latest/whatsnew/3.2.html#version-3-2-1
> 
> We encourage the whole community to download and test these release
> artefacts so that any critical issues can be resolved before the
> release is made. Everyone is free to vote on this release, so dig
> right in! (Only PMC members have binding votes, but they depend on
> community feedback to gauge if an official release is ready to be
> made.)
> 
> The release artefacts we are voting on are available here:
> 
>    https://dist.apache.org/repos/dist/dev/couchdb/source/3.2.1/rc.1/
> 
> There, you will find a tarball, a GPG signature, and SHA256/SHA512 checksums.
> 
> Please follow the test procedure here:
> 
>    https://cwiki.apache.org/confluence/display/COUCHDB/Testing+a+Source+Release
> 
> Please remember that "RC1" is an annotation. If the vote passes, these
> artefacts will be released as Apache CouchDB 3.2.1
> 
> Please cast your votes now.
> 
> Thanks,
> -Nick