📄 node60.html
字号:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.2 Final//FR"><!-- Converted with LaTeX2HTML 95.1 (Fri Jan 20 1995) --><!-- by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --><!-- Modified Simulog 03/97 --><HTML><HEAD><TITLE>D.2 Possible problems</TITLE><LINK REL=STYLESHEET TYPE="text/css" HREF="./Modulef.css" TITLE="Modulef CSS"><meta name="description" value="D.2 Possible problems"><meta name="keywords" value="Guide1"><meta name="resource-type" value="document"><meta name="distribution" value="global"></HEAD><BODY BGCOLOR="#FFFFFF"><P> <IMG SRC="../icons/smallmod.gif" WIDTH=211 HEIGHT=50 ALIGN=BOTTOM ALT="Modulef"><A NAME=tex2html899 HREF="node59.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/previous_motif.gif" ALT="previous"></A><A NAME=tex2html903 HREF="node58.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/up_motif.gif" ALT="up"></A><A NAME=tex2html905 HREF="node61.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/next_motif.gif" ALT="next"></A><A NAME=tex2html907 HREF="node2.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/contents_motif.gif" ALT="contents"></A><A HREF="../Guide1-18/node60.html"><IMG BORDER=0 SRC="../icons/zoom18.gif" ALIGN=BOTTOM ALT="[BIG]"></A><A HREF="../Guide1-14/node60.html"><IMG BORDER=0 SRC="../icons/zoom14.gif" ALIGN=BOTTOM ALT="[Normal]"></A><A HREF="../Guide1-10/node60.html"><IMG BORDER=0 SRC="../icons/zoom10.gif" ALIGN=BOTTOM ALT="[small]"></A><BR><B> Next: </B> <A NAME=tex2html906 HREF="node61.html">E Link library list</A><B>Up: </B> <A NAME=tex2html904 HREF="node58.html">D Installation: UNIX</A><B> Prev: </B> <A NAME=tex2html900 HREF="node59.html">D.1 Execution of Makefile on HP-UX </A><B><A HREF="node2.html" >Contents</A></B><HR SIZE=3 WIDTH="75%"><H1><A NAME=SECTION06420000000000000000>D.2 Possible problems</A></H1><P><P><P><H2><A NAME=SECTION06421000000000000000>D.2.1 Compilation problems for C programs</A></H2><P><P><P> It is highly likely that the problem is linked to file <b> underscore.h</b> residing in library<b> include</b>. <P>In fact, depending on your machine's <b> cpp</b> preprocessor, file <b> underscore.h</b> may or may not generate underline characters at the end of the name of subroutine C.To correct this error, you will have to modify the definition of the concatenation function for character strings(name2(a,b)) defined in file <b> underscore.h</b>. To perform this modification please consult thedocumentation available on preprocessor <b> cpp</b>.<P>Having made these corrections, you can now restart the compilations of those libraries whichposed the problems separately by typing:<blockquote> <b> make</b> <i> library name</i></blockquote>and restart the make to perform the linking process:<blockquote> <b> make executables</b></blockquote><P><P><H2><A NAME=SECTION06422000000000000000>D.2.2 Library compilation</A></H2> <A NAME=compillibrary> </A><P>Error Message:<P><PRE>cd //houx/modu/ascii/sta/s/cont ;\make -f //houx/modu/ascii/sta/s/cont/Makefile\ CompileDir=//houx/modu/make/Installapollo/cont \ sourceDir=//houx/modu/ascii/sta/s/cont \ output=//houx/modu/make/Installapollo/output_compil \ ListErr=//houx/modu/make/Installapollo/erreur_compil \ CC="cc" CIFLAGS="-W0,-idir,//houx/modu/ascii/sta/s/include"\ CCFLAGS="-c -W0,-indexl,-pic" \ F77="f77" F77FLAGS="-c -W0,-overlap,dd,dc,-indexl,-pic,-idir,\//houx/modu/ascii/sta/s/include" \ AR="ar" ARFLAGS="rv" \ RANLIB="ranlib" \ LIB="//houx/modu/apollo/sta/lib/libcont.a"Make: Expanded macro line is too long. Stop.*** Exit 1Stop.*** Exit 1Stop.</PRE><P>In this case, you must reduce the value of <tt> MAXSUB</tt> in the file <tt> M_config</tt> directory <tt> $MR/make/Install$MM</tt>.By default, it is set to 330: for example set it to 250 and execute again the compilation of the library which has generated this error (if you still have the same error, reduce again the value of MAXSUB).Changing the value of MAXSUB allows to avoid having too long dependence lines, the library is compiled with several Makefile.<P><H2><A NAME=SECTION06423000000000000000>D.2.3 Execution of program procat</A></H2><P>Error message:<P><PRE>wsifst8# make executablescd /server1/Modulef/make/Installsun ; f77 -c-I/server1/Modulef/ascii/\sta/s/include /server1/Modulef/ascii/sta/s/ppal/procat.f ;\f77 -Bstatic -o /server1/Modulef/sun/sta/bin/procat procat.o-L/server1/\Modulef/sun/sta/lib -lsymo -lutil -lu_sun -lX11 /server1/Modulef/ascii/sta/s/ppal/procat.f: MAIN procat:rm -f /server1/Modulef/make/Installsun/procat.orm -f /server1/Modulef/sun/sta/etc/proc.direct /server1/Modulef/sun/sta/bin/procatGETENVS : VARIABLE NON DEFINIE OU VIDE :MR 80 -1abort: called*** Abort - core dumpedmake: Fatal error: Command failed for target `/server1/Modulef/sun/\sta/etc/proc.direct'wsifst8#</PRE><P>It is necessary to define, in your current environment (<tt> .cshrc</tt> or <tt> .profile</tt>), the environment variables <tt> MM, MR</tt> and <tt> MV</tt> in the same ways as in the installation Makefile, and <tt> USER </tt> variable if it is not yet initialized.<P><H2><A NAME=SECTION06424000000000000000>D.2.4 Unsatisfied references during linking</A></H2><P><P><P>The unsatisfied references may either be system functions (x11 libraries, ...),or MODULEF procedures.<P><UL><LI> If they are system functions, the error is linked to a bad initializationof variable STDLIB: its value must be compatible with the graphic peripherals selected.<P>For example, if you choose <b> x11</b> as graphic peripheral, then variableSTDLIB should contain the value -lX11 on most machines(except HP/Apollo, in which case it is empty).<P><LI> If they are MODULEF C procedures, the error is linked to a bad definition of function<b> proc(x)</b> contained in file <b> underscore.h</b> in library <b> include</b>.<P>For example, the unsatisfied references may have one of the following forms (consider procedure, <b> getenvc</b>):<P><DL COMPACT><DT>getenvc<DD> In this case <b> proc</b> in file <b> underscore.h</b> must be defined as follows:<P><code> #define proc(x) x</code><P>This definition of function <b> proc</b> must be used on the IBM RISC System 6000.<P><DT>getenvc_<DD> In this case <b> proc</b> must be defined as follows:<P><code> #define proc(x) name2(x,_) </code><P> </DL></UL><P><b> Remark:</b> If the unsatisfied references are MODULEF procedures contained indirectory <b> zzzz_mod</b> and if your compiler accepts unsatisfied references(as for example the HP/Apollo compiler) this does not pose a problem.<P><P><P>Once the modifications are made, you need to:<UL><LI> recompile the MODULEF C programs, i.e. restart the makefor the libraries containing C files:<blockquote> <b> % make u_<i> machine name</i></b><P><b> % make p_x11</b> </blockquote>and<LI> restart the make to perform the link:<blockquote> <b> % make executables</b></blockquote></UL><P><P><P><H2><A NAME=SECTION06425000000000000000>D.2.5 Problems on Sun 4</A></H2><P><P><P><H3><A NAME=SECTION06425100000000000000> Utilization of Open Windows</A></H3><P><P><P>To run FORTRAN 3D with Open Windows, it is necessary that:<OL><LI> variable STDLIB is set to <b> -L/usr/openwin/lib -lX11</b><P><b> Note:</b> Do <b> not</b> set this variable to <b> -lXau</b>, or else you will receive an error message of type:<blockquote> <tt> Segmentation fault</tt> </blockquote>in <b> strlen</b> when executing the main programs.<P><LI> Insert the following statements in file <b> /.Xdefaults</b>:<P><PRE> OpenWindows.FocusLenience: TrueOpenWindows.SetInput: followmouse</PRE><P>If not, the characters typed in the graphics window will be read by the alphanumeric window.For more information consult the on-line help by typing:<blockquote> <b> man olwm</b></blockquote></OL><P><P><P><H3><A NAME=SECTION06425200000000000000> Problems during a FORTRAN write</A></H3><P><P><P>Some FORTRAN library versions do not accept the writing of records larger than16 kB. However, at INRIA we have installed:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -