From dsb at prairienet.org Sun Dec 17 08:04:47 2006 From: dsb at prairienet.org (dsb@prairienet.org) Date: Sun Dec 17 08:02:08 2006 Subject: [nhc-users] hmake-PRAGMA not found Message-ID: <42720.192.17.3.123.1166360687.squirrel@mail.prairienet.org> Just downloaded and installed nhc98 this week. Trying to compile an object file in a Slackware-based distro on a P2. dan[haskl]$ make t3lib.o nhc98 -c t3lib.hs /usr/local/bin/nhc98: line 131: /usr/local/lib/nhc98/pentium2-Linux/hmake-PRAGMA: No such file or directory /usr/local/bin/nhc98: line 131: /usr/local/lib/nhc98/pentium2-Linux/hmake-PRAGMA: No such file or directory /usr/local/bin/nhc98: line 131: /usr/local/lib/nhc98/pentium2-Linux/hmake-PRAGMA: No such file or directory /usr/local/bin/nhc98: line 547: /usr/local/lib/nhc98/pentium2-Linux/nhc98comp: No such file or directory make: *** [t3lib.o] Error 1 --Dan From Malcolm.Wallace at cs.york.ac.uk Mon Dec 18 10:25:19 2006 From: Malcolm.Wallace at cs.york.ac.uk (Malcolm Wallace) Date: Mon Dec 18 10:42:15 2006 Subject: [nhc-users] hmake-PRAGMA not found In-Reply-To: <42720.192.17.3.123.1166360687.squirrel@mail.prairienet.org> References: <42720.192.17.3.123.1166360687.squirrel@mail.prairienet.org> Message-ID: <20061218152519.09d13c7a.Malcolm.Wallace@cs.york.ac.uk> dsb@prairienet.org wrote: > Just downloaded and installed nhc98 this week. > /usr/local/bin/nhc98: line 131: > /usr/local/lib/nhc98/pentium2-Linux/hmake-PRAGMA: No such file or directory Did you install the binary package of nhc98? If so, then it may have placed the necessary files under .../ix86-Linux/... rather than .../pentium2-Linux/... This is down to a recent change in the Linux behaviour of 'uname -m'. One way to fix it is to replace the copy of 'harch' in directory 'nhc98-1.18/script/' with the newer attached version, then install again. If, on the other hand, you installed from source, then I'm not sure what has gone wrong. Maybe you did ./configure make install without actually building the software between those steps? ./configure make make install is the more usual sequence. You could also try the replacement 'harch' script as well, although it is unlikely to be relevant. Regards, Malcolm -------------- next part -------------- #!/bin/sh # harch - determine canonical processor architecture # Nov 1998: first used. # May 1999: ensure that small differences (e.g. kernel version) # don't matter. PROCESSOR= OS= REL= # Unfortunately, there are a variety of incompatible # ways of detecting architecture, so try them all! if uname >/dev/null 2>&1 then if uname -p >/dev/null 2>&1 then PROCESSOR=`uname -p` case "$PROCESSOR" in unknown|*\ *|*-*) PROCESSOR=`uname -m` ;; esac else if arch >/dev/null 2>&1 then PROCESSOR=`arch` else PROCESSOR=`uname -m` fi fi OS=`uname -s` REL=`uname -r` else if arch >/dev/null 2>&1 then PROCESSOR=`arch` else if machine >/dev/null 2>&1 then PROCESSOR=`machine` else PROCESSOR='unknown' fi fi OS=unknown fi # Remove whitespace and slashes. PROCESSOR=`echo $PROCESSOR | tr '/ ' '.'` OS=`echo $OS | tr '/ ' '-'` REL=`echo $REL | tr '/ ' '-'` # Canonicalise equivalent processor families to one representative member. case $PROCESSOR in i[3456789]86) PROCESSOR=ix86;; athlon) PROCESSOR=ix86;; sun3*) PROCESSOR=sun3;; sun4*) PROCESSOR=sun4;; sparc*) PROCESSOR=sparc;; esac # Keep OS release number only if it might be relevant. case $OS in unknown) ;; Linux) ;; CYGWIN*) ;; MINGW*) ;; *BSD) ;; # BSD/OS) OS="BSD-OS"$REL ;; -- removed by slash->dash translation. SunOS) case $REL in 3*) OS=SunOS3;; 4*) OS=SunOS4;; 5*) OS=solaris2;; 6*) OS=solaris3;; *) OS=SunOS-$REL;; esac;; Darwin) case $REL in 5*) OS=Darwin5;; 6*) OS=Darwin6;; 7*) OS=Darwin7;; 8*) OS=Darwin8;; *) OS=Darwin-$REL;; esac;; IRIX*) case $REL in 5*) OS=IRIX5;; 6*) OS=IRIX6;; *) OS=IRIX-$REL;; esac;; AIX) if oslevel >/dev/null 2>&1 # AIX just has to be different then OS=$OS-`oslevel` else OS=$OS-unknown fi if lsattr -EHl proc0 | grep -i powerpc >/dev/null 2>&1 then PROCESSOR=powerpc else PROCESSOR=power fi ;; *) OS=$OS-$REL;; esac # And that's it. echo $PROCESSOR-$OS