+ cat This script may need tweeked. It tries a few of the most common things that work, and can be handy at giving you a quick idea of the best method to pursue + echo 'TRY C STANDALONE' TRY C STANDALONE + rm -f ./getkey + cc -DTESTPRG getkey.c -o getkey + '[' -x ./getkey ']' + SWITCH= + echo abcdq + ./getkey press keys ('q' to quit) C:KEY=a 97 C:KEY=b 98 C:KEY=c 99 C:KEY=d 100 C:KEY=q 113 + rm -f ./getkey + cc -DTESTPRG -DLinux getkey.c -o getkey + '[' -x ./getkey ']' + SWITCH=-DBSD + echo abcdq + ./getkey press keys ('q' to quit) C:KEY=a 97 C:KEY=b 98 C:KEY=c 99 C:KEY=d 100 C:KEY=q 113 + rm -f ./getkey + cc -DTESTPRG -DBSD getkey.c -o getkey getkey.c:12:19: sgtty.h: No such file or directory getkey.c: In function `getkeyC': getkey.c:39: error: storage size of 'oldtty' isn't known getkey.c:39: error: storage size of 'newtty' isn't known getkey.c:42: error: `TIOCGETP' undeclared (first use in this function) getkey.c:42: error: (Each undeclared identifier is reported only once getkey.c:42: error: for each function it appears in.) getkey.c:45: error: `RAW' undeclared (first use in this function) getkey.c:47: error: `TIOCSETP' undeclared (first use in this function) + '[' -x ./getkey ']' + SWITCH=-DLinux + echo abcdq + ./getkey press keys ('q' to quit) C:KEY=a 97 C:KEY=b 98 C:KEY=c 99 C:KEY=d 100 C:KEY=q 113 + echo 'SWITCH -DLinux' SWITCH -DLinux + set +x TRY FORTRAN gcc + g95 and ISO_C_BINDING and f03 test program ================================================================================ + gcc -DLinux -c getkey.c + g95 -Wall f2003.f90 getkey.o -o getkey+gcc+g95+f03 + echo abcdefghijklmnopqrstuvwxyz + ./getkey+gcc+g95+f03 begin striking keys to demonstrate interactive raw I/O mode q to quit; up to 40 characters 1 f03:key=a-> 97 2 f03:key=b-> 98 3 f03:key=c-> 99 4 f03:key=d-> 100 5 f03:key=e-> 101 6 f03:key=f-> 102 7 f03:key=g-> 103 8 f03:key=h-> 104 9 f03:key=i-> 105 10 f03:key=j-> 106 11 f03:key=k-> 107 12 f03:key=l-> 108 13 f03:key=m-> 109 14 f03:key=n-> 110 15 f03:key=o-> 111 16 f03:key=p-> 112 17 f03:key=q-> 113 + RUNFC + echo 'gcc + g95 and guess at C/F interface and f90 test program' gcc + g95 and guess at C/F interface and f90 test program + SOURCE=f90.f90 + NAME=f90 + RUN + CLEANUP + rm -f getkey.exe getkey.o m_getkey.mod getkey + rm -f f90.o f77.o M_GETKEY.mod + echo ================================================================================ ================================================================================ + set -x + gcc -DLinux -c getkey.c + g95 -Wall f90.f90 getkey.o -o getkey+gcc+g95+f90 + echo abcdefghijklmnopqrstuvwxyz + ./getkey+gcc+g95+f90 begin striking keys to demonstrate interactive raw I/O mode q to quit; stops after 40 characters 1 f90:key=a-> 97 2 f90:key=b-> 98 3 f90:key=c-> 99 4 f90:key=d-> 100 5 f90:key=e-> 101 6 f90:key=f-> 102 7 f90:key=g-> 103 8 f90:key=h-> 104 9 f90:key=i-> 105 10 f90:key=j-> 106 11 f90:key=k-> 107 12 f90:key=l-> 108 13 f90:key=m-> 109 14 f90:key=n-> 110 15 f90:key=o-> 111 16 f90:key=p-> 112 17 f90:key=q-> 113 + RUNF77 + echo 'gcc + g95 and guess at C/F interface and f77 test program' gcc + g95 and guess at C/F interface and f77 test program + SOURCE=f77.f + NAME=f77 + RUN + CLEANUP + rm -f getkey.exe getkey.o m_getkey.mod getkey + rm -f f90.o f77.o M_GETKEY.mod + echo ================================================================================ ================================================================================ + set -x + gcc -DLinux -c getkey.c + g95 -Wall f77.f getkey.o -o getkey+gcc+g95+f77 + echo abcdefghijklmnopqrstuvwxyz + ./getkey+gcc+g95+f77 begin striking keys to test interactive raw I/O mode q to quit; stops after 40 characters 1 f77:key=a-> 97 2 f77:key=b-> 98 3 f77:key=c-> 99 4 f77:key=d-> 100 5 f77:key=e-> 101 6 f77:key=f-> 102 7 f77:key=g-> 103 8 f77:key=h-> 104 9 f77:key=i-> 105 10 f77:key=j-> 106 11 f77:key=k-> 107 12 f77:key=l-> 108 13 f77:key=m-> 109 14 f77:key=n-> 110 15 f77:key=o-> 111 16 f77:key=p-> 112 17 f77:key=q-> 113 ++ which f90 + '[' -f /cygdrive/c/urbanjs/MYCYGWIN/DISKA/public_html/public/myfilelocker/V5.0/.twm/scripts_missing/f90 ']' + FC=f90 + FOPTS= + CC=cc + COPTS=-DLinux + RUNALL + RUNF03 + echo 'cc + f90 and ISO_C_BINDING and f03 test program' cc + f90 and ISO_C_BINDING and f03 test program + SOURCE=f2003.f90 + NAME=f03 + RUN + CLEANUP + rm -f getkey.exe getkey.o m_getkey.mod getkey + rm -f f90.o f77.o M_GETKEY.mod + echo ================================================================================ ================================================================================ + set -x + cc -DLinux -c getkey.c + f90 f2003.f90 getkey.o -o getkey+cc+f90+f03 + g95 -I. -fmod=. -Wall -O3 f2003.f90 getkey.o -o getkey+cc+f90+f03 + exit + echo abcdefghijklmnopqrstuvwxyz + ./getkey+cc+f90+f03 begin striking keys to demonstrate interactive raw I/O mode q to quit; up to 40 characters 1 f03:key=a-> 97 2 f03:key=b-> 98 3 f03:key=c-> 99 4 f03:key=d-> 100 5 f03:key=e-> 101 6 f03:key=f-> 102 7 f03:key=g-> 103 8 f03:key=h-> 104 9 f03:key=i-> 105 10 f03:key=j-> 106 11 f03:key=k-> 107 12 f03:key=l-> 108 13 f03:key=m-> 109 14 f03:key=n-> 110 15 f03:key=o-> 111 16 f03:key=p-> 112 17 f03:key=q-> 113 + RUNFC + echo 'cc + f90 and guess at C/F interface and f90 test program' cc + f90 and guess at C/F interface and f90 test program + SOURCE=f90.f90 + NAME=f90 + RUN + CLEANUP + rm -f getkey.exe getkey.o m_getkey.mod getkey + rm -f f90.o f77.o M_GETKEY.mod + echo ================================================================================ ================================================================================ + set -x + cc -DLinux -c getkey.c + f90 f90.f90 getkey.o -o getkey+cc+f90+f90 + g95 -I. -fmod=. -Wall -O3 f90.f90 getkey.o -o getkey+cc+f90+f90 + exit + echo abcdefghijklmnopqrstuvwxyz + ./getkey+cc+f90+f90 begin striking keys to demonstrate interactive raw I/O mode q to quit; stops after 40 characters 1 f90:key=a-> 97 2 f90:key=b-> 98 3 f90:key=c-> 99 4 f90:key=d-> 100 5 f90:key=e-> 101 6 f90:key=f-> 102 7 f90:key=g-> 103 8 f90:key=h-> 104 9 f90:key=i-> 105 10 f90:key=j-> 106 11 f90:key=k-> 107 12 f90:key=l-> 108 13 f90:key=m-> 109 14 f90:key=n-> 110 15 f90:key=o-> 111 16 f90:key=p-> 112 17 f90:key=q-> 113 + RUNF77 + echo 'cc + f90 and guess at C/F interface and f77 test program' cc + f90 and guess at C/F interface and f77 test program + SOURCE=f77.f + NAME=f77 + RUN + CLEANUP + rm -f getkey.exe getkey.o m_getkey.mod getkey + rm -f f90.o f77.o M_GETKEY.mod + echo ================================================================================ ================================================================================ + set -x + cc -DLinux -c getkey.c + f90 f77.f getkey.o -o getkey+cc+f90+f77 + g95 -I. -fmod=. -Wall -O3 f77.f getkey.o -o getkey+cc+f90+f77 + exit + echo abcdefghijklmnopqrstuvwxyz + ./getkey+cc+f90+f77 begin striking keys to test interactive raw I/O mode q to quit; stops after 40 characters 1 f77:key=a-> 97 2 f77:key=b-> 98 3 f77:key=c-> 99 4 f77:key=d-> 100 5 f77:key=e-> 101 6 f77:key=f-> 102 7 f77:key=g-> 103 8 f77:key=h-> 104 9 f77:key=i-> 105 10 f77:key=j-> 106 11 f77:key=k-> 107 12 f77:key=l-> 108 13 f77:key=m-> 109 14 f77:key=n-> 110 15 f77:key=o-> 111 16 f77:key=p-> 112 17 f77:key=q-> 113 ++ which f95 + '[' -f '' ']' ++ which f77 + '[' -f /usr/bin/f77 ']' + FC=f77 + FOPTS= + CC=cc + COPTS=-DLinux + RUNF77 + echo 'cc + f77 and guess at C/F interface and f77 test program' cc + f77 and guess at C/F interface and f77 test program + SOURCE=f77.f + NAME=f77 + RUN + CLEANUP + rm -f getkey.exe getkey.o m_getkey.mod getkey + rm -f f90.o f77.o M_GETKEY.mod + echo ================================================================================ ================================================================================ + set -x + cc -DLinux -c getkey.c + f77 f77.f getkey.o -o getkey+cc+f77+f77 + echo abcdefghijklmnopqrstuvwxyz + ./getkey+cc+f77+f77 begin striking keys to test interactive raw I/O mode q to quit; stops after 40 characters 1 f77:key=a-> 97 2 f77:key=b-> 98 3 f77:key=c-> 99 4 f77:key=d-> 100 5 f77:key=e-> 101 6 f77:key=f-> 102 7 f77:key=g-> 103 8 f77:key=h-> 104 9 f77:key=i-> 105 10 f77:key=j-> 106 11 f77:key=k-> 107 12 f77:key=l-> 108 13 f77:key=m-> 109 14 f77:key=n-> 110 15 f77:key=o-> 111 16 f77:key=p-> 112 17 f77:key=q-> 113 ++ which g77 + '[' -f /usr/bin/g77 ']' + FC=g77 + FOPTS=-fno-backslash + CC=gcc + COPTS=-DLinux + RUNF77 + echo 'gcc + g77 and guess at C/F interface and f77 test program' gcc + g77 and guess at C/F interface and f77 test program + SOURCE=f77.f + NAME=f77 + RUN + CLEANUP + rm -f getkey.exe getkey.o m_getkey.mod getkey + rm -f f90.o f77.o M_GETKEY.mod + echo ================================================================================ ================================================================================ + set -x + gcc -DLinux -c getkey.c + g77 -fno-backslash f77.f getkey.o -o getkey+gcc+g77+f77 + echo abcdefghijklmnopqrstuvwxyz + ./getkey+gcc+g77+f77 begin striking keys to test interactive raw I/O mode q to quit; stops after 40 characters 1 f77:key=a-> 97 2 f77:key=b-> 98 3 f77:key=c-> 99 4 f77:key=d-> 100 5 f77:key=e-> 101 6 f77:key=f-> 102 7 f77:key=g-> 103 8 f77:key=h-> 104 9 f77:key=i-> 105 10 f77:key=j-> 106 11 f77:key=k-> 107 12 f77:key=l-> 108 13 f77:key=m-> 109 14 f77:key=n-> 110 15 f77:key=o-> 111 16 f77:key=p-> 112 17 f77:key=q-> 113 ++ which gfortran + '[' -f /usr/bin/gfortran ']' + FC=gfortran + FOPTS= + CC=gcc + COPTS=-DLinux + RUNALL + RUNF03 + echo 'gcc + gfortran and ISO_C_BINDING and f03 test program' gcc + gfortran and ISO_C_BINDING and f03 test program + SOURCE=f2003.f90 + NAME=f03 + RUN + CLEANUP + rm -f getkey.exe getkey.o m_getkey.mod getkey + rm -f f90.o f77.o M_GETKEY.mod + echo ================================================================================ ================================================================================ + set -x + gcc -DLinux -c getkey.c + gfortran f2003.f90 getkey.o -o getkey+gcc+gfortran+f03 + echo abcdefghijklmnopqrstuvwxyz + ./getkey+gcc+gfortran+f03 begin striking keys to demonstrate interactive raw I/O mode q to quit; up to 40 characters 1 f03:key=a-> 97 2 f03:key=b-> 98 3 f03:key=c-> 99 4 f03:key=d-> 100 5 f03:key=e-> 101 6 f03:key=f-> 102 7 f03:key=g-> 103 8 f03:key=h-> 104 9 f03:key=i-> 105 10 f03:key=j-> 106 11 f03:key=k-> 107 12 f03:key=l-> 108 13 f03:key=m-> 109 14 f03:key=n-> 110 15 f03:key=o-> 111 16 f03:key=p-> 112 17 f03:key=q-> 113 + RUNFC + echo 'gcc + gfortran and guess at C/F interface and f90 test program' gcc + gfortran and guess at C/F interface and f90 test program + SOURCE=f90.f90 + NAME=f90 + RUN + CLEANUP + rm -f getkey.exe getkey.o m_getkey.mod getkey + rm -f f90.o f77.o M_GETKEY.mod + echo ================================================================================ ================================================================================ + set -x + gcc -DLinux -c getkey.c + gfortran f90.f90 getkey.o -o getkey+gcc+gfortran+f90 + echo abcdefghijklmnopqrstuvwxyz + ./getkey+gcc+gfortran+f90 begin striking keys to demonstrate interactive raw I/O mode q to quit; stops after 40 characters 1 f90:key=a-> 97 2 f90:key=b-> 98 3 f90:key=c-> 99 4 f90:key=d-> 100 5 f90:key=e-> 101 6 f90:key=f-> 102 7 f90:key=g-> 103 8 f90:key=h-> 104 9 f90:key=i-> 105 10 f90:key=j-> 106 11 f90:key=k-> 107 12 f90:key=l-> 108 13 f90:key=m-> 109 14 f90:key=n-> 110 15 f90:key=o-> 111 16 f90:key=p-> 112 17 f90:key=q-> 113 + RUNF77 + echo 'gcc + gfortran and guess at C/F interface and f77 test program' gcc + gfortran and guess at C/F interface and f77 test program + SOURCE=f77.f + NAME=f77 + RUN + CLEANUP + rm -f getkey.exe getkey.o m_getkey.mod getkey + rm -f f90.o f77.o M_GETKEY.mod + echo ================================================================================ ================================================================================ + set -x + gcc -DLinux -c getkey.c + gfortran f77.f getkey.o -o getkey+gcc+gfortran+f77 + echo abcdefghijklmnopqrstuvwxyz + ./getkey+gcc+gfortran+f77 begin striking keys to test interactive raw I/O mode q to quit; stops after 40 characters 1 f77:key=a-> 97 2 f77:key=b-> 98 3 f77:key=c-> 99 4 f77:key=d-> 100 5 f77:key=e-> 101 6 f77:key=f-> 102 7 f77:key=g-> 103 8 f77:key=h-> 104 9 f77:key=i-> 105 10 f77:key=j-> 106 11 f77:key=k-> 107 12 f77:key=l-> 108 13 f77:key=m-> 109 14 f77:key=n-> 110 15 f77:key=o-> 111 16 f77:key=p-> 112 17 f77:key=q-> 113 ++ which fort77 + '[' -f '' ']' ++ which xlf + '[' -f '' ']' ++ which path95 + '[' -f '' ']' ++ which f95 + '[' -f '' ']' + CLEANUP + rm -f getkey.exe getkey.o m_getkey.mod getkey + rm -f f90.o f77.o M_GETKEY.mod + echo ================================================================================ ================================================================================ + ls -ltrasd getkey+cc+f77+f77.exe getkey+cc+f90+f03.exe getkey+cc+f90+f77.exe getkey+cc+f90+f90.exe getkey+gcc+g77+f77.exe getkey+gcc+g95+f03.exe getkey+gcc+g95+f77.exe getkey+gcc+g95+f90.exe getkey+gcc+gfortran+f03.exe getkey+gcc+gfortran+f77.exe getkey+gcc+gfortran+f90.exe 384 -rwxr-xr-x 1 urbanjs None 345793 May 8 23:55 getkey+gcc+g95+f03.exe 384 -rwxr-xr-x 1 urbanjs None 345811 May 8 23:55 getkey+gcc+g95+f90.exe 384 -rwxr-xr-x 1 urbanjs None 345811 May 8 23:55 getkey+gcc+g95+f77.exe 384 -rwxr-xr-x 1 urbanjs None 345793 May 8 23:55 getkey+cc+f90+f03.exe 384 -rwxr-xr-x 1 urbanjs None 345811 May 8 23:55 getkey+cc+f90+f90.exe 384 -rwxr-xr-x 1 urbanjs None 345811 May 8 23:55 getkey+cc+f90+f77.exe 80 -rwxr-xr-x 1 urbanjs None 81697 May 8 23:55 getkey+cc+f77+f77.exe 80 -rwxr-xr-x 1 urbanjs None 81697 May 8 23:55 getkey+gcc+g77+f77.exe 384 -rwxr-xr-x 1 urbanjs None 386696 May 8 23:55 getkey+gcc+gfortran+f03.exe 384 -rwxr-xr-x 1 urbanjs None 386714 May 8 23:55 getkey+gcc+gfortran+f90.exe 384 -rwxr-xr-x 1 urbanjs None 386714 May 8 23:55 getkey+gcc+gfortran+f77.exe