intel 7.0 on linux

6 messages 3 people Latest: Jan 24, 2003

intel 7.0 on linux

From: Darin Perusich Date: January 09, 2003 technical
From:Darin Perusich Subject:[NMusers] intel 7.0 on linux Date:Thu, 09 Jan 2003 12:30:30 -0500 hello, has anyone been able to successfully compile nonmem with this compiler on linux? nonmem compiles successfully through SETUP, but when i try compiling the nonmem executable i'm getting the following error. /usr/local/nonmem5-v1.1-intel/nm/nonmem.a(FLU.o): In function `flu_': FLU.o(.text+0x5): undefined reference to `flush_' i've compiled nonmem with the following options. SETUP /usr/local/nonmem5-v1.1-intel /opt/intel/compiler70/ia32/bin/ifc \ ' -O2 -tpp7 -prec_div -pad_source ' /usr/bin/ar Intel OS Redhat 7.3 (nonmem run fine with GNU compiler) Intel(R) Fortran Compiler for 32-bit applications, Version 7.0 Build 20021028Z any thoughts? -- Darin Perusich Unix Systems Administrator Cognigen Corp. darinper@cognigencorp.com

RE: intel 7.0 on linux

From: William Bachman Date: January 09, 2003 technical
From:"Bachman, William" Subject:RE: [NMusers] intel 7.0 on linux Date:Thu, 9 Jan 2003 12:49:09 -0500 Darin, It appears that you will have to determine the appropriate compiler directive to flush the buffer. This is set in flu.for: C THE NONMEM SYSTEM MAY BE DISTRIBUTED ONLY BY GLOBOMAX, LLC. C COPYRIGHT BY THE REGENTS OF THE UNIVERSITY OF CALIFORNIA C 1979-1998 ALL RIGHTS RESERVED. C C DO NOT ATTEMPT TO MODIFY CODE C WITHOUT FIRST CONSULTING WITH GLOBOMAX. C SUBROUTINE FLU (I) CALL COMMITQQ(I) RETURN END The Compaq/Digital compilers use COMMITQQ(I)as seen above. You seem to be using the directive used by the g77 compiler, FLUSH(I), and the Intel compiler is complaining. Consult your Intel documentation or Intel customer support for help determining the correct flush command. If you can't determine the correct command, you may comment out the call line. See NONMEM Users Guide, p. 23. nmconsult@globomaxnm.com GloboMax LLC 7250 Parkway Drive, Suite 430 Hanover, MD 21076 Voice: (410) 782-2205 FAX: (410) 712-0737
From:"Bachman, William" Subject: RE: [NMusers] intel 7.0 on linux --> see Nick Holfords email on Intel 7.0 for windows Date: Thu, 9 Jan 2003 12:58:35 -0500 Nick Holford found the following to work with Intel 7.0 for windows: "The NONMEM FLU subroutine requires the USE IFLPORT statement in order to use the COMMITQQ procedure." nmconsult@globomaxnm.com GloboMax LLC 7250 Parkway Drive, Suite 430 Hanover, MD 21076 Voice: (410) 782-2205 FAX: (410) 712-0737
From:Nick Holford Subject:Re: [NMusers] intel 7.0 on linux --> see Nick Holfords email on Intel 7.0 for windows Date:Fri, 10 Jan 2003 08:12:53 +1300 Hi, Hints for using Intel 7.0 and g77 with NONMEM can be found here: http://wfn.sourceforge.net/g77inst.htm Note that the problem (Windows) of getting intermediate output sent to the screen can be fixed for both compilers by changing 'con' to 'CONOUT$' in BLKDAT. Nick -- Nick Holford, Divn Pharmacology & Clinical Pharmacology University of Auckland, 85 Park Rd, Private Bag 92019, Auckland, New Zealand email:n.holford@auckland.ac.nz tel:+64(9)373-7599x86730 fax:373-7556 http://www.health.auckland.ac.nz/pharmacology/staff/nholford/

Re: intel 7.0 on linux

From: Darin Perusich Date: January 24, 2003 technical
From:Darin Perusich Subject:Re: [NMusers] intel 7.0 on linux Date:Fri, 24 Jan 2003 14:50:58 -0500 it is the operating system not the compiler that determines how a buffer is written to disk, unix systems use FLUSH or FFLUSH, windows COMMITQQ, etc. i was able to successfully compile and execute nonmem with the intel compiler v7.0 on linux using the following arguments. SETUP /usr/local/nonmem5-v1.1-intel /opt/intel/compiler70/ia32/bin/ifc \ ' -O2 -tpp7 -prec_div -Vaxlib ' /usr/bin/ar Intel the -Vaxlib is the important flag, it tells the compiler to link with the protability library, so it knows how to FLUSH.

RE: intel 7.0 on linux

From: William Bachman Date: January 24, 2003 technical
From: "Bachman, William" Subject:RE: [NMusers] intel 7.0 on linux Date:Fri, 24 Jan 2003 15:17:12 -0500 Actually, it IS the compiler that determines the "flush" command. The OS doesn't care what it's called as long as it gets the signal to flush the buffer. for example g77 for Windows uses FLUSH not COMMITQQ. nmconsult@globomaxnm.com GloboMax LLC 7250 Parkway Drive, Suite 430 Hanover, MD 21076 Voice: (410) 782-2205 FAX: (410) 712-0737 _________________________________________