Package Details: mingw-w64-openssl 3.4.1-1

Git Clone URL: https://aur.archlinux.org/mingw-w64-openssl.git (read-only, click to copy)
Package Base: mingw-w64-openssl
Description: The Open Source toolkit for Secure Sockets Layer and Transport Layer Security (mingw-w64)
Upstream URL: https://www.openssl.org
Keywords: mingw mingw-w64 openssl
Licenses: Apache-2.0
Submitter: brcha
Maintainer: pingplug (Martchus)
Last Packager: Martchus
Votes: 25
Popularity: 0.000000
First Submitted: 2012-06-13 15:52 (UTC)
Last Updated: 2025-02-12 17:46 (UTC)

Latest Comments

« First ‹ Previous 1 2 3 4 5 Next › Last »

Shidao commented on 2021-12-07 06:05 (UTC)

The problem with this PKGBUILD is, the source mingw-env ${_arch} on line 35 set CC to i686-w64-mingw32-gcc, while the --cross-compile-prefix=${_arch}- option passed to Configureprefixed CC again, causing CC to be i686-w64-mingw32-i686-w64-mingw32-gcc.

If we remove the --cross-compile-prefix option, like jamincollins did, we won't be able to find the correct RC(i686-w64-mingw32-windres) since mingw-env only set CC and CXX. bpierre's patch manually set CC and CXX back, but maybe it's better to remove line 35 to prevent CC and CXX from being set to the wrong value.

Here's my working patch:

35d34
<     source mingw-env ${_arch}

jamincollins commented on 2021-11-21 19:22 (UTC)

ty

bpierre commented on 2021-11-20 17:38 (UTC)

I can successfully build with this patch:

 PKGBUILD | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git i/PKGBUILD w/PKGBUILD
index e3293e8..ad3dd5d 100644
--- i/PKGBUILD
+++ w/PKGBUILD
@@ -36,7 +36,7 @@ build() {
     mkdir -p "${srcdir}/build-${_arch}" && cp -a "${srcdir}/openssl-${_pkgver}/"* "${srcdir}/build-${_arch}" && cd "${srcdir}/build-${_arch}"
     _mingw=mingw
     [ "${_arch}" = 'x86_64-w64-mingw32' ] && _mingw=mingw64
-    ./Configure \
+    CC=gcc CXX=g++ ./Configure \
       --prefix=/usr/${_arch} \
       --cross-compile-prefix=${_arch}- \
       -DOPENSSL_NO_CAPIENG \

jamincollins commented on 2021-11-18 23:05 (UTC)

A build attempt in a clean environment results in the following error:

i686-w64-mingw32-i686-w64-mingw32-gcc  -I. -Iinclude -Icrypto -m32 -D_FORTIFY_SOURCE=2 -D_GLIBCXX_ASSERTIONS -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4 -Wformat -Werror=format-security -fcf-protection  -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DRMD160_ASM -DAESNI_ASM -DVPAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"C:/Program Files (x86)/Common Files/SSL\"" -DENGINESDIR="\"/usr/i686-w64-mingw32/lib/engines-1_1\"" -DUNICODE -D_UNICODE -DWIN32_LEAN_AND_MEAN -D_MT -DZLIB -DZLIB_SHARED -DOPENSSL_USE_APPLINK -DNDEBUG -DOPENSSL_NO_CAPIENG -D_FORTIFY_SOURCE=2 -D_GLIBCXX_ASSERTIONS -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4 -Wformat -Werror=format-security -fcf-protection  -D_FORTIFY_SOURCE=2 -D_GLIBCXX_ASSERTIONS   -c -o crypto/cversion.o crypto/cversion.c
/bin/sh: line 1: i686-w64-mingw32-i686-w64-mingw32-gcc: command not found

This appears to be caused by this line in the PKGBUILD:

      --cross-compile-prefix=${_arch}- \                                                                               

Removing it allows the build to progress, but it later errors with:

i686-w64-mingw32-gcc  -I. -Iinclude -m32 -D_FORTIFY_SOURCE=2 -D_GLIBCXX_ASSERTIONS -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4 -Wformat -Werror=format-security -fcf-protection  -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DRMD160_ASM -DAESNI_ASM -DVPAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"C:/Program Files (x86)/Common Files/SSL\"" -DENGINESDIR="\"/usr/i686-w64-mingw32/lib/engines-1_1\"" -DUNICODE -D_UNICODE -DWIN32_LEAN_AND_MEAN -D_MT -DZLIB -DZLIB_SHARED -DOPENSSL_USE_APPLINK -DNDEBUG -DOPENSSL_NO_CAPIENG -D_FORTIFY_SOURCE=2 -D_GLIBCXX_ASSERTIONS -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4 -Wformat -Werror=format-security -fcf-protection  -D_FORTIFY_SOURCE=2 -D_GLIBCXX_ASSERTIONS  -MMD -MF crypto/dllmain.d.tmp -MT crypto/dllmain.o -c -o crypto/dllmain.o crypto/dllmain.c
/usr/bin/perl util/mkrc.pl libcrypto > libcrypto.rc
windres  --target=pe-i386  -o libcrypto.res.o libcrypto.rc
make[1]: Leaving directory '/package/src/build-i686-w64-mingw32'
make[1]: windres: No such file or directory
make[1]: *** [Makefile:811: libcrypto.res.o] Error 127

Foreskin1488jew commented on 2021-07-30 21:17 (UTC)

Thank you so much <3

colonelx commented on 2020-07-28 21:55 (UTC)

If you are having trouble with the gpg keys:

gpg --keyserver keys.gnupg.net --recv-keys D9C4D26D0E604491

adsun commented on 2019-12-07 15:03 (UTC)

This now requires the mingw-w64-environment package to build in a clean chroot.

adsun commented on 2019-11-30 00:30 (UTC)

This fails to build now with the new mingw-w64-crt, but it succeeds if you export CFLAGS, CPPFLAGS and LDFLAGS according to the ones found in mingw-configure.sh in the mingw-w64-configure package.

woggioni commented on 2017-11-17 13:10 (UTC) (edited on 2017-11-17 13:11 (UTC) by woggioni)

@Schala sorry for very late response but I completely forgot of this thread (I was trying to cross compile python with mingw but then ran into more severe issues), btw I tried compiling with LDFLAGS=-ladvapi32 and that solves the problem on Windows, can this be the default?

Schala commented on 2017-08-02 14:03 (UTC)

Weird try linking -ladvapi32 and see how that goes Wouldn't symlinking introduce a conflict with openssl-1.0?