Cmake 错误:调用always_inline';时内联失败_mm#u aesenc#u si128';:目标特定选项不匹配,添加-msse4.1不够

Cmake 错误:调用always_inline';时内联失败_mm#u aesenc#u si128';:目标特定选项不匹配,添加-msse4.1不够,cmake,cross-compiling,Cmake,Cross Compiling,我正在尝试将CryptoNoteGUI钱包从Linux(Fedora)交叉编译到Windows 在没有任何附加标志的情况下编译时,出现以下错误: In file included from /home/etienne/Documents/Brokertech/bkc/brokercoins/guiwallet-win/cryptonote/src/crypto/slow-hash.c:9:0: /usr/lib/gcc/i686-w64-mingw32/7.2.0/include/emmintr

我正在尝试将CryptoNoteGUI钱包从Linux(Fedora)交叉编译到Windows

在没有任何附加标志的情况下编译时,出现以下错误:

In file included from /home/etienne/Documents/Brokertech/bkc/brokercoins/guiwallet-win/cryptonote/src/crypto/slow-hash.c:9:0:
/usr/lib/gcc/i686-w64-mingw32/7.2.0/include/emmintrin.h:1290:1: error: inlining failed in call to always_inline '_mm_xor_si128': target specific option mismatch
  _mm_xor_si128 (__m128i __A, __m128i __B)
  ^~~~~~~~~~~~~
/home/etienne/Documents/Brokertech/bkc/brokercoins/guiwallet-win/cryptonote/src/crypto/slow-hash.c:100:11: note: called from here
   *tmp3 = _mm_xor_si128(*tmp3, tmp4);
然后,我尝试为C和CXX添加-msse4.1标志,但仍然得到相同的错误,但在不同的文件上:

In file included from 
/home/etienne/Documents/Brokertech/bkc/brokercoins/guiwallet-win/cryptonote/src/crypto/slow-hash.c:10:0:
/usr/lib/gcc/i686-w64-mingw32/7.2.0/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
   _mm_aesenc_si128 (__m128i __X, __m128i __Y)
   ^~~~~~~~~~~~~~~~
In file included from 
/home/etienne/Documents/Brokertech/bkc/brokercoins/guiwallet-win/cryptonote/src/crypto/slow-hash.c:167:0:
/home/etienne/Documents/Brokertech/bkc/brokercoins/guiwallet-win/cryptonote/src/crypto/slow-hash.inl:159:21: note: called from here
   xmminput[0] = _mm_aesenc_si128(xmminput[0], expkey[j]);
我不明白为什么解决方案在第一个文件上有效,但现在被阻塞了?
非常感谢

您没有收到相同的错误。您有2个完全不同的错误。第一个内联失败是针对SSE-2128位异或指令,该指令通过添加
-msse4.1
得到解决。第二个是内在的,我相信您需要
-maes