Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compile fails on Cygwin #31

Open
roberc51 opened this issue Aug 8, 2018 · 3 comments
Open

Compile fails on Cygwin #31

roberc51 opened this issue Aug 8, 2018 · 3 comments

Comments

@roberc51
Copy link

roberc51 commented Aug 8, 2018

I get the following error when trying to compile twin:

libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../../include -I../../include -g -O2 -MT libTw2_i386.lo -MD -MP -MF .deps/libTw2_i386.Tpo -c libTw2_i386.S  -DDLL_EXPORT -DPIC -o .libs/libTw2_i386.o
/usr/include/machine/_default_types.h: Assembler messages:
/usr/include/machine/_default_types.h:41: Error: no such instruction: `typedef signed char __int8_t'
/usr/include/machine/_default_types.h:43: Error: no such instruction: `typedef unsigned char __uint8_t'
/usr/include/machine/_default_types.h:55: Error: no such instruction: `typedef short int __int16_t'
/usr/include/machine/_default_types.h:57: Error: no such instruction: `typedef short unsigned int __uint16_t'
/usr/include/machine/_default_types.h:77: Error: no such instruction: `typedef int __int32_t'
/usr/include/machine/_default_types.h:79: Error: no such instruction: `typedef unsigned int __uint32_t'
/usr/include/machine/_default_types.h:103: Error: no such instruction: `typedef long long int __int64_t'
/usr/include/machine/_default_types.h:105: Error: no such instruction: `typedef long long unsigned int __uint64_t'
/usr/include/machine/_default_types.h:134: Error: no such instruction: `typedef signed char __int_least8_t'
/usr/include/machine/_default_types.h:136: Error: no such instruction: `typedef unsigned char __uint_least8_t'
/usr/include/machine/_default_types.h:160: Error: no such instruction: `typedef short int __int_least16_t'
/usr/include/machine/_default_types.h:162: Error: no such instruction: `typedef short unsigned int __uint_least16_t'
/usr/include/machine/_default_types.h:182: Error: no such instruction: `typedef int __int_least32_t'
/usr/include/machine/_default_types.h:184: Error: no such instruction: `typedef unsigned int __uint_least32_t'
/usr/include/machine/_default_types.h:200: Error: no such instruction: `typedef long long int __int_least64_t'
/usr/include/machine/_default_types.h:202: Error: no such instruction: `typedef long long unsigned int __uint_least64_t'
/usr/include/machine/_default_types.h:214: Error: no such instruction: `typedef long long int __intmax_t'
/usr/include/machine/_default_types.h:222: Error: no such instruction: `typedef long long unsigned int __uintmax_t'
/usr/include/machine/_default_types.h:230: Error: no such instruction: `typedef int __intptr_t'
/usr/include/machine/_default_types.h:232: Error: no such instruction: `typedef unsigned int __uintptr_t'
/usr/lib/gcc/i686-pc-cygwin/6.4.0/include/stddef.h:149: Error: no such instruction: `typedef int ptrdiff_t'
/usr/lib/gcc/i686-pc-cygwin/6.4.0/include/stddef.h:216: Error: no such instruction: `typedef unsigned int size_t'
/usr/lib/gcc/i686-pc-cygwin/6.4.0/include/stddef.h:328: Error: no such instruction: `typedef short unsigned int wchar_t'
make[2]: *** [Makefile:494: libTw2_i386.lo] Error 1
make[2]: Leaving directory '/home/roberc51/twin/libs/libTw'
make[1]: *** [Makefile:402: all-recursive] Error 1
make[1]: Leaving directory '/home/roberc51/twin/libs'
make: *** [Makefile:527: all-recursive] Error 1
@cosmos72
Copy link
Owner

Hi @roberc51,

I have never tried twin on cygwin - actually, it would be nice to have a Windows version, even through cygwin.

The error you report is due to not-recently-tested assembly functions, that are only enabled on x86 with gcc. From your report, they look broken.

Can you try compiling with 64-bit cygwin and tell the outcome?

Thanks

@cosmos72
Copy link
Owner

Update: on 32-bit cygwin, you can try

./configure --enable--asm=no
make

@xykonur
Copy link

xykonur commented Nov 30, 2020

Got the same on 64 bit Cygwin:

depbase=`echo libTw2_i386.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'`;\
/bin/sh ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../../include  -I../../include   -g -O2 -MT libTw2_i386.lo -MD -MP -MF $depbase.Tpo -c -o libTw2_i386.lo libTw2_i386.S &&\
mv -f $depbase.Tpo $depbase.Plo
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../../include -I../../include -g -O2 -MT libTw2_i386.lo -MD -MP -MF .deps/libTw2_i386.Tpo -c libTw2_i386.S  -DDLL_EXPORT -DPIC -o .libs/libTw2_i386.o
/usr/include/machine/_default_types.h: Assembler messages:
/usr/include/machine/_default_types.h:41: Error: no such instruction: `typedef signed char __int8_t'
/usr/include/machine/_default_types.h:43: Error: no such instruction: `typedef unsigned char __uint8_t'
/usr/include/machine/_default_types.h:55: Error: no such instruction: `typedef short int __int16_t'
/usr/include/machine/_default_types.h:57: Error: no such instruction: `typedef short unsigned int __uint16_t'
/usr/include/machine/_default_types.h:77: Error: no such instruction: `typedef int __int32_t'
/usr/include/machine/_default_types.h:79: Error: no such instruction: `typedef unsigned int __uint32_t'
/usr/include/machine/_default_types.h:103: Error: no such instruction: `typedef long int __int64_t'
/usr/include/machine/_default_types.h:105: Error: no such instruction: `typedef long unsigned int __uint64_t'
/usr/include/machine/_default_types.h:134: Error: no such instruction: `typedef signed char __int_least8_t'
/usr/include/machine/_default_types.h:136: Error: no such instruction: `typedef unsigned char __uint_least8_t'
/usr/include/machine/_default_types.h:160: Error: no such instruction: `typedef short int __int_least16_t'
/usr/include/machine/_default_types.h:162: Error: no such instruction: `typedef short unsigned int __uint_least16_t'
/usr/include/machine/_default_types.h:182: Error: no such instruction: `typedef int __int_least32_t'
/usr/include/machine/_default_types.h:184: Error: no such instruction: `typedef unsigned int __uint_least32_t'
/usr/include/machine/_default_types.h:200: Error: no such instruction: `typedef long int __int_least64_t'
/usr/include/machine/_default_types.h:202: Error: no such instruction: `typedef long unsigned int __uint_least64_t'
/usr/include/machine/_default_types.h:214: Error: no such instruction: `typedef long int __intmax_t'
/usr/include/machine/_default_types.h:222: Error: no such instruction: `typedef long unsigned int __uintmax_t'
/usr/include/machine/_default_types.h:230: Error: no such instruction: `typedef long int __intptr_t'
/usr/include/machine/_default_types.h:232: Error: no such instruction: `typedef long unsigned int __uintptr_t'
/usr/lib/gcc/x86_64-pc-cygwin/10/include/stddef.h:143: Error: no such instruction: `typedef long int ptrdiff_t'
/usr/lib/gcc/x86_64-pc-cygwin/10/include/stddef.h:209: Error: no such instruction: `typedef long unsigned int size_t'
/usr/lib/gcc/x86_64-pc-cygwin/10/include/stddef.h:321: Error: no such instruction: `typedef short unsigned int wchar_t'
make[2]: *** [Makefile:503: libTw2_i386.lo] Error 1
make[2]: Leaving directory '/home/user/twin/libs/libTw'
make[1]: *** [Makefile:402: all-recursive] Error 1
make[1]: Leaving directory '/home/user/twin/libs'
make: *** [Makefile:527: all-recursive] Error 1

Tried with --enable--asm=no as well, still same result (even changed default to "no" in ./configure to no effect).

I've also noticed that include/TT/TT.h and include/TT/tt.h collide under Cygwin ('cause Windows!) so I just blindly combined both files into one (to no apparent effect).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants