msys2filezilla

FileZilla's libfilezilla component won't build due to missing GnuTLS


I am attempting to build FileZilla 3 from source according to the steps here:

https://wiki.filezilla-project.org/Compiling_FileZilla_3_under_Windows

I got successfully all the way to the Building libfilezilla section:

cd ~
svn co https://svn.filezilla-project.org/svn/libfilezilla/trunk libfilezilla
cd libfilezilla
autoreconf -i 
./configure --prefix="$HOME/prefix" --enable-shared --disable-static
make && make install

...on that configure line (line #5) command it does a whole bunch of stuff (apparently successfully), and then finally it stops with this message:

configure: error: GnuTLS 3.7.0 or greater was not found. You can get it from https://gnutls.org/

It seems like even though GnuTLS was downloaded successfully, extracted, and installed (in a previous series of steps as per the doc), it then cannot be found when it gets to this point.

Note: I didn't attempt to run the make line since the previous line fails.

It doesn't make any sense to me why the libfilezilla configure command can't find GnuTLS. Where can I investigate to see why this isn't working?

Edit

I went back and ran the make commands on GnuTLS and got many errors like this:

coff/aesni-x86_64.s:3508: Error: `leaq' is only supported in 64-bit mode
coff/aesni-x86_64.s:3510: Error: bad register name `%rax)'
coff/aesni-x86_64.s:3512: Error: bad register name `%rax)'
coff/aesni-x86_64.s:3514: Error: bad register name `%rax)'
coff/aesni-x86_64.s:3516: Error: bad register name `%rax)'
coff/aesni-x86_64.s:3518: Error: bad register name `%rax)'
coff/aesni-x86_64.s:3520: Error: `leaq' is only supported in 64-bit mode
coff/aesni-x86_64.s:3523: Error: bad register name `%rsp)'
coff/aesni-x86_64.s:3524: Error: bad register name `%rsp)'
coff/aesni-x86_64.s:3533: Error: bad register name `%xmm9'
coff/aesni-x86_64.s:3534: Error: bad register name `%rbx'
coff/aesni-x86_64.s:3535: Error: bad register name `%xmm10'
coff/aesni-x86_64.s:3536: Error: bad register name `%rbx'
coff/aesni-x86_64.s:3537: Error: bad register name `%xmm10'
coff/aesni-x86_64.s:3538: Error: bad register name `%xmm15'
coff/aesni-x86_64.s:3539: Error: bad register name `%rbx'
coff/aesni-x86_64.s:3540: Error: bad register name `%xmm10'
coff/aesni-x86_64.s:3541: Error: bad register name `%xmm10'
coff/aesni-x86_64.s:3542: Error: bad register name `%xmm11'
coff/aesni-x86_64.s:3543: Error: bad register name `%xmm11'
coff/aesni-x86_64.s:3544: Error: bad register name `%xmm12'
coff/aesni-x86_64.s:3545: Error: bad register name `%xmm12'
coff/aesni-x86_64.s:3546: Error: bad register name `%xmm13'
coff/aesni-x86_64.s:3547: Error: bad register name `%xmm13'
coff/aesni-x86_64.s:3548: Error: bad register name `%xmm14'
coff/aesni-x86_64.s:3549: Error: bad register name `%xmm14'
coff/aesni-x86_64.s:3550: Error: bad register name `%xmm15'
coff/aesni-x86_64.s:3551: Error: bad register name `%r11)'
coff/aesni-x86_64.s:3553: Error: `leaq' is only supported in 64-bit mode
coff/aesni-x86_64.s:3554: Error: `leaq' is only supported in 64-bit mode
coff/aesni-x86_64.s:3555: Error: `leaq' is only supported in 64-bit mode
coff/aesni-x86_64.s:3556: Error: `addq' is only supported in 64-bit mode
coff/aesni-x86_64.s:3557: Error: bad register name `%xmm9'

That is only a small subset of the error messages, but they are all similar to what you see above. How can I solve this?


Solution

  • I found the solution:

    pacman -Syu
    pacman -S base-devel mingw-w64-x86_64-toolchain
    pacman -S mingw-w64-x86_64-gnutls
    

    Then I switched to mingw64 shell.

    pacman -S mingw-w64-x86_64-gnutls
    

    Then I went back and rebuilt GnuTLS and everything worked.