libmypaint icon indicating copy to clipboard operation
libmypaint copied to clipboard

Building via MSYS2 on Windows is broken in v.1.5.1

Open define-private-public opened this issue 5 years ago • 3 comments
trafficstars

The culprit looks to me like it's those intrinsic calls in fastapprox (or maybe I'm wrong). I followed the guide on the wiki how to build with MSYS2, updated all of my packages. The GCC version is 9.3.0 Here is the build output:

C:\msys64\mingw64\lib\gcc\x86_64-w64-mingw32\9.2.0\include\xmmintrin.h:124: syntax error, unexpected '{' in '  return __extension__ (__m128){ 0.0f, 0.0f, 0.0f, 0.0f };' at '{'
C:\msys64\mingw64\lib\gcc\x86_64-w64-mingw32\9.2.0\include\xmmintrin.h:891: syntax error, unexpected '{' in '  return __extension__ (__m128)(__v4sf){ __F, 0.0f, 0.0f, 0.0f };' at '{'
C:\msys64\mingw64\lib\gcc\x86_64-w64-mingw32\9.2.0\include\xmmintrin.h:898: syntax error, unexpected '{' in '  return __extension__ (__m128)(__v4sf){ __F, __F, __F, __F };' at '{'
C:\msys64\mingw64\lib\gcc\x86_64-w64-mingw32\9.2.0\include\xmmintrin.h:953: syntax error, unexpected '{' in '  return __extension__ (__m128)(__v4sf){ __W, __X, __Y, __Z };' at '{'
C:\msys64\mingw64\lib\gcc\x86_64-w64-mingw32\9.2.0\include\xmmintrin.h:960: syntax error, unexpected '{' in '  return __extension__ (__m128)(__v4sf){ __Z, __Y, __X, __W };' at '{'
C:\msys64\mingw64\lib\gcc\x86_64-w64-mingw32\9.2.0\include\xmmintrin.h:1020: syntax error, unexpected BASIC_TYPE, expecting '{' in '                                     (__attribute__((__vector_size__ (16))) int)' at 'int'
C:\msys64\mingw64\lib\gcc\x86_64-w64-mingw32\9.2.0\include\emmintrin.h:68: syntax error, unexpected '{' in '  return __extension__ (__m128d){ __F, 0.0 };' at '{'
C:\msys64\mingw64\lib\gcc\x86_64-w64-mingw32\9.2.0\include\emmintrin.h:75: syntax error, unexpected '{' in '  return __extension__ (__m128d){ __F, __F };' at '{'
C:\msys64\mingw64\lib\gcc\x86_64-w64-mingw32\9.2.0\include\emmintrin.h:88: syntax error, unexpected '{' in '  return __extension__ (__m128d){ __X, __W };' at '{'
C:\msys64\mingw64\lib\gcc\x86_64-w64-mingw32\9.2.0\include\emmintrin.h:95: syntax error, unexpected '{' in '  return __extension__ (__m128d){ __W, __X };' at '{'
C:\msys64\mingw64\lib\gcc\x86_64-w64-mingw32\9.2.0\include\emmintrin.h:110: syntax error, unexpected '{' in '  return __extension__ (__m128d){ 0.0, 0.0 };' at '{'
C:\msys64\mingw64\lib\gcc\x86_64-w64-mingw32\9.2.0\include\emmintrin.h:117: syntax error, unexpected '{' in '  return __extension__ (__m128d) __builtin_shuffle ((__v2df)__A, (__v2df)__B, (__v2di){2, 1});' at '{'
C:\msys64\mingw64\lib\gcc\x86_64-w64-mingw32\9.2.0\include\emmintrin.h:592: syntax error, unexpected '{' in '  return __extension__ (__m128i)(__v2di){ __q0, __q1 };' at '{'
C:\msys64\mingw64\lib\gcc\x86_64-w64-mingw32\9.2.0\include\emmintrin.h:604: syntax error, unexpected '{' in '  return __extension__ (__m128i)(__v4si){ __q0, __q1, __q2, __q3 };' at '{'
C:\msys64\mingw64\lib\gcc\x86_64-w64-mingw32\9.2.0\include\emmintrin.h:611: syntax error, unexpected '{' in '  return __extension__ (__m128i)(__v8hi){' at '{'
C:\msys64\mingw64\lib\gcc\x86_64-w64-mingw32\9.2.0\include\emmintrin.h:621: syntax error, unexpected '{' in '  return __extension__ (__m128i)(__v16qi){' at '{'
C:\msys64\mingw64\lib\gcc\x86_64-w64-mingw32\9.2.0\include\emmintrin.h:772: syntax error, unexpected '{' in '  return __extension__ (__m128i)(__v4si){ 0, 0, 0, 0 };' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastexp.h:88: syntax error, unexpected '{' in '  v4sf ltzero = _mm_cmplt_ps (p, ((const v4sf) { (0.0f), (0.0f), (0.0f), (0.0f) }));' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastexp.h:89: syntax error, unexpected '{' in '  v4sf offset = _mm_and_ps (ltzero, ((const v4sf) { (1.0f), (1.0f), (1.0f), (1.0f) }));' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastexp.h:90: syntax error, unexpected '{' in '  v4sf lt126 = _mm_cmplt_ps (p, ((const v4sf) { (-126.0f), (-126.0f), (-126.0f), (-126.0f) }));' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastexp.h:91: syntax error, unexpected '{' in '  v4sf clipp = _mm_or_ps (_mm_andnot_ps (lt126, p), _mm_and_ps (lt126, ((const v4sf) { (-126.0f), (-126.0f), (-126.0f), (-126.0f) })));' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastexp.h:95: syntax error, unexpected '{' in '  const v4sf c_121_2740838 = ((const v4sf) { (121.2740575f), (121.2740575f), (121.2740575f), (121.2740575f) });' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastexp.h:96: syntax error, unexpected '{' in '  const v4sf c_27_7280233 = ((const v4sf) { (27.7280233f), (27.7280233f), (27.7280233f), (27.7280233f) });' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastexp.h:97: syntax error, unexpected '{' in '  const v4sf c_4_84252568 = ((const v4sf) { (4.84252568f), (4.84252568f), (4.84252568f), (4.84252568f) });' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastexp.h:98: syntax error, unexpected '{' in '  const v4sf c_1_49012907 = ((const v4sf) { (1.49012907f), (1.49012907f), (1.49012907f), (1.49012907f) });' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastexp.h:101: syntax error, unexpected '{' in '      ((const v4sf) { (1 << 23), (1 << 23), (1 << 23), (1 << 23) }) *' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastexp.h:112: syntax error, unexpected '{' in '  const v4sf c_invlog_2 = ((const v4sf) { (1.442695040f), (1.442695040f), (1.442695040f), (1.442695040f) });' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastexp.h:120: syntax error, unexpected '{' in '  const v4sf c_126_94269504 = ((const v4sf) { (126.94269504f), (126.94269504f), (126.94269504f), (126.94269504f) });' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastexp.h:121: syntax error, unexpected '{' in '  v4sf lt126 = _mm_cmplt_ps (p, ((const v4sf) { (-126.0f), (-126.0f), (-126.0f), (-126.0f) }));' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastexp.h:122: syntax error, unexpected '{' in '  v4sf clipp = _mm_or_ps (_mm_andnot_ps (lt126, p), _mm_and_ps (lt126, ((const v4sf) { (-126.0f), (-126.0f), (-126.0f), (-126.0f) })));' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastexp.h:123: syntax error, unexpected '{' in '  union { v4si i; v4sf f; } v = { _mm_cvttps_epi32 (((const v4sf) { (1 << 23), (1 << 23), (1 << 23), (1 << 23) }) * (clipp + c_126_94269504)) };' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastexp.h:130: syntax error, unexpected '{' in '  const v4sf c_invlog_2 = ((const v4sf) { (1.442695040f), (1.442695040f), (1.442695040f), (1.442695040f) });' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastlog.h:92: syntax error, unexpected '{' in '  union { v4si i; v4sf f; } mx; mx.i = (vx.i & ((const v4si) { ((((long long) (0x007FFFFF)) << 32) | (long long) (0x007FFFFF)), ((((long long) (0x007FFFFF)) << 32) | (long long) (0x007FFFFF)) })) | ((const v4si) { ((((long long) (0x3f000000)) << 32) | (long long) (0x3f000000)), ((((long long) (0x3f000000)) << 32) | (long long) (0x3f000000)) });' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastlog.h:94: syntax error, unexpected identifier in '  y *= ((const v4sf) { (1.1920928955078125e-7f), (1.1920928955078125e-7f), (1.1920928955078125e-7f), (1.1920928955078125e-7f) });' at 'y'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastlog.h:96: syntax error, unexpected '{' in '  const v4sf c_124_22551499 = ((const v4sf) { (124.22551499f), (124.22551499f), (124.22551499f), (124.22551499f) });' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastlog.h:97: syntax error, unexpected '{' in '  const v4sf c_1_498030302 = ((const v4sf) { (1.498030302f), (1.498030302f), (1.498030302f), (1.498030302f) });' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastlog.h:98: syntax error, unexpected '{' in '  const v4sf c_1_725877999 = ((const v4sf) { (1.72587999f), (1.72587999f), (1.72587999f), (1.72587999f) });' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastlog.h:99: syntax error, unexpected '{' in '  const v4sf c_0_3520087068 = ((const v4sf) { (0.3520887068f), (0.3520887068f), (0.3520887068f), (0.3520887068f) });' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastlog.h:109: syntax error, unexpected '{' in '  const v4sf c_0_69314718 = ((const v4sf) { (0.69314718f), (0.69314718f), (0.69314718f), (0.69314718f) });' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastlog.h:119: syntax error, unexpected '{' in '  y *= ((const v4sf) { (1.1920928955078125e-7f), (1.1920928955078125e-7f), (1.1920928955078125e-7f), (1.1920928955078125e-7f) });' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastlog.h:121: syntax error, unexpected '{' in '  const v4sf c_126_94269504 = ((const v4sf) { (126.94269504f), (126.94269504f), (126.94269504f), (126.94269504f) });' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastlog.h:135: syntax error, unexpected '{' in '  y *= ((const v4sf) { (8.2629582881927490e-8f), (8.2629582881927490e-8f), (8.2629582881927490e-8f), (8.2629582881927490e-8f) });' at '{'
C:\msys64\home\Benjamin\libmypaint\fastapprox\fastlog.h:137: syntax error, unexpected '{' in '  const v4sf c_87_989971088 = ((const v4sf) { (87.989971088f), (87.989971088f), (87.989971088f), (87.989971088f) });' at '{'
C:\msys64\mingw64\include\glib-2.0\glib\gtypes.h:103: syntax error, unexpected typedef-name, expecting identifier or '(' in 'typedef void* gpointer;' at 'gpointer'
fastapprox/sse.h:52: Warning: MyPaint: symbol='v4sf': Unknown namespace for identifier 'v4sf'
fastapprox/sse.h:53: Warning: MyPaint: symbol='v4si': Unknown namespace for identifier 'v4si'
fastapprox/sse.h:102: Warning: MyPaint: symbol='v4sfindexer': Unknown namespace for identifier 'v4sfindexer'
fastapprox/sse.h:108: Warning: MyPaint: symbol='v4siindexer': Unknown namespace for identifier 'v4siindexer'
fastapprox/sse.h:115: Warning: MyPaint: symbol='v4sfv4sipun': Unknown namespace for identifier 'v4sfv4sipun'
fastapprox/sse.h:62: Warning: MyPaint: symbol='AS_4CHARS': Unknown namespace for symbol 'AS_4CHARS'
fastapprox/sse.h:69: Warning: MyPaint: symbol='v4sfl': Unknown namespace for symbol 'v4sfl'
fastapprox/sse.h:70: Warning: MyPaint: symbol='v4sil': Unknown namespace for symbol 'v4sil'
fastapprox/sse.h:97: Warning: MyPaint: symbol='v4sfl': Unknown namespace for symbol 'v4sfl'
fastapprox/sse.h:98: Warning: MyPaint: symbol='v2dil': Unknown namespace for symbol 'v2dil'
fastapprox/sse.h:99: Warning: MyPaint: symbol='v4sil': Unknown namespace for symbol 'v4sil'
fastapprox/sse.h:103: Warning: MyPaint: symbol='v4sf_index': Unknown namespace for symbol 'v4sf_index'
fastapprox/sse.h:109: Warning: MyPaint: symbol='v4si_index': Unknown namespace for symbol 'v4si_index'
fastapprox/sse.h:117: Warning: MyPaint: symbol='v4sf_fabs': Unknown namespace for symbol 'v4sf_fabs'
fastapprox/sse.h:119: Warning: MyPaint: symbol='v4sf_fabs': Unknown namespace for symbol 'v4sf_fabs'

define-private-public avatar Feb 24 '20 21:02 define-private-public

Haven't looked into the actual cause of those "errors", but they don't actually prevent you from building libmypaint.


Log for the successful build of 1.5.1 on MSYS2 yesterday: https://ci.appveyor.com/project/jonnor/libmypaint/builds/30996672/job/b7axhjk6eah9fw6a

As you may note, the lines you pasted are present in that log as well, but are actually of no consequence for the output.

jplloyd avatar Feb 24 '20 21:02 jplloyd

It's actually not a msys2-specific problem. Also happen in Debian too: https://buildd.debian.org/status/fetch.php?pkg=libmypaint&arch=amd64&ver=1.5.1-1~exp1&stamp=1582496604&raw=0

hosiet avatar Feb 24 '20 23:02 hosiet

Debian? I run Ubuntu normally (which IIRC is Debian based). I've been able to build it just fine here. I've also got an OS X machine handy. Would you like me to do a build there too?

define-private-public avatar Feb 25 '20 00:02 define-private-public