Building cryptopp with mingw / clang under Windows

Thomas Pierrard <[email protected]> Mon, 11 Mar 2024 12:57:32 -0700 (PDT)
Newsgroups gmane.comp.encryption.cryptopp
Message-ID <[email protected]>
------=_Part_253832_1742546386.1710187052767
Content-Type: multipart/alternative; 
	boundary="----=_Part_253833_1279548322.1710187052767"

------=_Part_253833_1279548322.1710187052767
Content-Type: text/plain; charset="UTF-8"

Hello there,

I'm struggling compiling crytopp 8.9.0 (cryptopp-cmake), I would be very 
grateful if someone can help.

I am using CMake 3.24.2 with Ninja generator. Everything runs smoothly with 
mingw/gcc 11.3.0, and msvc 17 2022. But when it comes to clang... I am 
trying to understand why it fails.

First I had to comment the OS check "Unsupported configuration" at begining 
of config_os.h (I know, I am a bad guy :s)). Thus, I'm not checking anymore 
__clang__ and _MSC_VER values.

Both mingw/clang (14.0.3), and llvm/clang (17.0.6) compile until the linker 
screams at me with some undefined reference to 'CPUID64' and 'XGETBV64' 
(which are defined in x64dll.asm) *when trying to build cryptest.exe*.

I don't understand why mingw-gcc succeed to build the cryptest.exe binary 
but llvm-clang and mingw-clang cannot. How can I simulate gcc behavior for 
clang? (I mean, asking clang to not use  XGETBV64 and CPUID64)

Kind regards,
Thomas

-- 
You received this message because you are subscribed to the Google Groups "Crypto++ Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To view this discussion on the web visit https://groups.google.com/d/msgid/cryptopp-users/0631a225-ccfe-465d-beff-5832ce4648cfn%40googlegroups.com.

------=_Part_253833_1279548322.1710187052767
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hello there,<div><br /></div><div>I'm struggling compiling crytopp 8.9.0 (c=
ryptopp-cmake), I would be very grateful if someone can help.</div><div><br=
 /></div><div>I am using CMake 3.24.2 with Ninja generator. Everything runs=
 smoothly with mingw/gcc 11.3.0, and msvc 17 2022. But when it comes to cla=
ng... I am trying to understand why it fails.</div><div><br /></div><div>Fi=
rst I had to comment the OS check "Unsupported configuration" at begining o=
f config_os.h (I know, I am a bad guy :s)). Thus, I'm not checking anymore =
__clang__ and _MSC_VER values.<br /></div><div><br /></div><div>Both mingw/=
clang (14.0.3), and llvm/clang (17.0.6) compile until the linker screams at=
 me with some undefined reference to 'CPUID64' and 'XGETBV64' (which are de=
fined in x64dll.asm)=C2=A0<b>when trying to build cryptest.exe</b>.</div><d=
iv><br /></div><div>I don't understand why mingw-gcc succeed to build the c=
ryptest.exe binary but llvm-clang and mingw-clang cannot. How can I simulat=
e gcc behavior for clang? (I mean, asking clang to not use=C2=A0 XGETBV64 a=
nd CPUID64)</div><div><br /></div><div>Kind regards,</div><div>Thomas</div>=
<div><br /></div>

<p></p>

-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;Crypto++ Users&quot; group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:[email protected]">cryp=
[email protected]</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/d/msgid/cryptopp-users/0631a225-ccfe-465d-beff-5832ce4648cfn%40googlegro=
ups.com?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.com/d=
/msgid/cryptopp-users/0631a225-ccfe-465d-beff-5832ce4648cfn%40googlegroups.=
com</a>.<br />

------=_Part_253833_1279548322.1710187052767--

------=_Part_253832_1742546386.1710187052767--