Re: MSVC vs Perl
От | Andrew Dunstan |
---|---|
Тема | Re: MSVC vs Perl |
Дата | |
Msg-id | 10509f7e-2f1b-7cec-20b7-74b4c123e209@dunslane.net обсуждение исходный текст |
Ответ на | Re: MSVC vs Perl (Andrew Dunstan <andrew@dunslane.net>) |
Ответы |
Re: MSVC vs Perl
|
Список | pgsql-hackers |
On 2022-11-25 Fr 18:52, Andrew Dunstan wrote: > On 2022-11-25 Fr 18:48, Andrew Dunstan wrote: >> For various reasons (see below) it's preferable to build on Windows with >> Strawberry Perl. This works OK if you're building with Msys2, I upgraded >> the instance on the machine that runs fairywren and drongo today, and >> fairywren seems fine. Not so drongo, however. First it encountered a >> build error, which I attempted to cure using something I found in the >> vim sources [1]. That worked, but then there's a failure at runtime like >> this: >> >> 2022-11-25 21:33:01.073 UTC [3764:3] pg_regress LOG: statement: CREATE EXTENSION IF NOT EXISTS "plperl" >> src/pl/plperl/Util.c: loadable library and perl binaries are mismatched (got handshake key 0000000012800080, needed 0000000012900080) >> 2022-11-25 21:33:01.100 UTC [5048:5] LOG: server process (PID 3764) exited with exit code 1 >> >> I don't know how to debug this. I'm not sure if there's some flag we >> could set which would cure it. It looks like a 1 bit difference, but I >> haven't found what that bit corresponds to. OK, so this cures the problem for drongo: diff --git a/src/tools/msvc/Mkvcbuild.pm b/src/tools/msvc/Mkvcbuild.pm index 83a3e40425..dc6b94b74f 100644 --- a/src/tools/msvc/Mkvcbuild.pm +++ b/src/tools/msvc/Mkvcbuild.pm @@ -707,6 +707,7 @@ sub mkvcbuild print "CFLAGS recommended by Perl: $Config{ccflags}\n"; print "CFLAGS to compile embedded Perl: ", (join ' ', map { "-D$_" } @perl_embed_ccflags), "\n"; + push @perl_embed_ccflags,'NO_THREAD_SAFE_LOCALE'; foreach my $f (@perl_embed_ccflags) { $plperl->AddDefine($f); I'll see if it also works for bowerbird. cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com
В списке pgsql-hackers по дате отправления: