In https://nullprogram.com/blog/2020/09/25/ you write:
> (The -fcommon flag is currently necessary due to a bug in PuTTY.)
Could you expand on that? I don't have gcc 10 conveniently available to
test with, but manually enabling -fno-common in a MinGW build with gcc
9, or building with clang-cl, I get a successful build. I can't see any
problem in current PuTTY master that depends on -fcommon.
If you can, could you send details, so that we can fix it?
Cheers,
Simon
--
for k in [pow(x,37,0x1a1298d262b49c895d47f) for x in [0x50deb914257022de7fff,
0x213558f2215127d5a2d1, 0x90c99e86d08b91218630, 0x109f3d0cfbf640c0beee7,
0xc83e01379a5fbec5fdd1, 0x19d3d70a8d567e388600e, 0x534e2f6e8a4a33155123]]:
print("".join([chr(32+3*((k>>x)&1))for x in range(79)])) # <anakin@pobox.com>
> If you can, could you send details, so that we can fix it?
The error is "multiple definition" of osPlatformId, osMinorVersion, and
osMajorVersion. There are definitions in both winmisc.c and winpgnt.c.
The latter is caused by setting PUTTY_DO_GLOBALS before including
putty.h, which includes puttyps.h, which includes winstuff.h, which
normally tries to use GLOBAL to avoid the definition.
This is with PuTTY 0.74, the "Unix source archive" download.
Christopher Wellons <wellons@nullprogram.com> wrote:
> This is with PuTTY 0.74, the "Unix source archive" download.
Ah, whereas I was trying with the current master branch. OK, thanks.
Cheers,
Simon
--
import hashlib; print((lambda p,q,g,y,r,s,m: (lambda w:(pow(g,int(hashlib.sha1(
m.encode('ascii')).hexdigest(),16)*w%q,p)*pow(y,r*w%q,p)%p)%q)(pow(s,q-2,q))==r
and m)(0xb80b5dacabab6145,0xf70027d345023,0x7643bc4018957897,0x11c2e5d9951130c9
,0xa54d9cbe4e8ab,0x746c50eaa1910, "Simon Tatham <anakin@pobox.com>" ))