📄 autobook_120.html
字号:
<HTML><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><!-- Created on September, 12 2004 by texi2html 1.64 --><!-- Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author) Karl Berry <karl@freefriends.org> Olaf Bachmann <obachman@mathematik.uni-kl.de> and many others.Maintained by: Olaf Bachmann <obachman@mathematik.uni-kl.de>Send bugs and suggestions to <texi2html@mathematik.uni-kl.de> --><HEAD><TITLE>Autoconf, Automake, and Libtool: Cross-Unix System Interfaces</TITLE><META NAME="description" CONTENT="Autoconf, Automake, and Libtool: Cross-Unix System Interfaces"><META NAME="keywords" CONTENT="Autoconf, Automake, and Libtool: Cross-Unix System Interfaces"><META NAME="resource-type" CONTENT="document"><META NAME="distribution" CONTENT="global"><META NAME="Generator" CONTENT="texi2html 1.64"><script language="Javascript"><!-- // Check the browser version. function checkVersion() { if (navigator.appVersion.charAt(0)>=3) return true; if (navigator.appVersion.charAt(0)>=4) return true; else return false; } if (checkVersion()) { homeon = new Image(); homeon.src = "homeon.png"; homeoff = new Image(); homeoff.src = "home.png"; tocon = new Image(); tocon.src = "tocon.png"; tocoff = new Image(); tocoff.src = "toc.png"; indexon = new Image(); indexon.src = "indexon.png"; indexoff = new Image(); indexoff.src = "index.png"; helpon = new Image(); helpon.src = "helpon.png"; helpoff = new Image(); helpoff.src = "help.png"; backon = new Image(); backon.src = "backon.png"; backoff = new Image(); backoff.src = "back.png"; forwardon = new Image(); forwardon.src = "forwardon.png"; forwardoff = new Image(); forwardoff.src = "forward.png"; prevon = new Image(); prevon.src = "prevon.png"; prevoff = new Image(); prevoff.src = "prev.png"; nexton = new Image(); nexton.src = "nexton.png"; nextoff = new Image(); nextoff.src = "next.png"; upon = new Image(); upon.src = "upon.png"; upoff = new Image(); upoff.src = "up.png"; } function img_act(imgName) { if (checkVersion()) { imgOn = eval(imgName + "on.src"); document [imgName].src = imgOn; } } function img_inact(imgName) { if (checkVersion()) { imgOff = eval(imgName + "off.src"); document [imgName].src = imgOff; } }// --></SCRIPT></HEAD><BODY LANG="EN" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#6688AA" VLINK="#336688" ALINK="#808080"><A NAME="SEC120"></A><TABLE BORDER=0 CELLPADDING=0 CELLSPACING=10><TR VALIGN="TOP"><TD ALIGN="MIDDLE" WIDTH=50 BGCOLOR="#e6e6e6"><TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0><TR VALIGN="TOP" ALIGN="LEFT"><TD VALIGN="MIDDLE" ALIGN="LEFT"><A HREF="autobook_119.html#SEC119" onMouseover="img_act('prev')" onMouseout="img_inact('prev')"><IMG SRC="prev.png" BORDER="0" ALT="Back: Cross-Unix Function Calls" ALIGN="MIDDLE" NAME="prev"></A></TD></TR><TR VALIGN="TOP" ALIGN="LEFT"><TD VALIGN="MIDDLE" ALIGN="LEFT"><A HREF="autobook_121.html#SEC121" onMouseover="img_act('next')" onMouseout="img_inact('next')"><IMG SRC="next.png" BORDER="0" ALT="Forward: Unix/Windows Portability" ALIGN="MIDDLE" NAME="next"></A></TD></TR><TR VALIGN="TOP" ALIGN="LEFT"><TD VALIGN="MIDDLE" ALIGN="LEFT"> <TR VALIGN="TOP" ALIGN="LEFT"><TD VALIGN="MIDDLE" ALIGN="LEFT"><A HREF="autobook_121.html#SEC121" onMouseover="img_act('back')" onMouseout="img_inact('back')"><IMG SRC="back.png" BORDER="0" ALT="FastBack: Unix/Windows Portability" ALIGN="MIDDLE" NAME="back"></A></TD></TR><TR VALIGN="TOP" ALIGN="LEFT"><TD VALIGN="MIDDLE" ALIGN="LEFT"><A HREF="autobook_118.html#SEC118" onMouseover="img_act('up')" onMouseout="img_inact('up')"><IMG SRC="up.png" BORDER="0" ALT="Up: Cross-Unix Portability" ALIGN="MIDDLE" NAME="up"></A></TD></TR><TR VALIGN="TOP" ALIGN="LEFT"><TD VALIGN="MIDDLE" ALIGN="LEFT"><A HREF="autobook_121.html#SEC121" onMouseover="img_act('forward')" onMouseout="img_inact('forward')"><IMG SRC="forward.png" BORDER="0" ALT="FastForward: Unix/Windows Portability" ALIGN="MIDDLE" NAME="forward"></A></TD></TR><TR VALIGN="TOP" ALIGN="LEFT"><TD VALIGN="MIDDLE" ALIGN="LEFT"><A HREF="autobook.html#SEC_Top" onMouseover="img_act('home')" onMouseout="img_inact('home')"><IMG SRC="home.png" BORDER="0" ALT="Top: Autoconf, Automake, and Libtool" ALIGN="MIDDLE" NAME="home"></A></TD></TR><TR VALIGN="TOP" ALIGN="LEFT"><TD VALIGN="MIDDLE" ALIGN="LEFT"><A HREF="autobook_toc.html#SEC_Contents" onMouseover="img_act('toc')" onMouseout="img_inact('toc')"><IMG SRC="toc.png" BORDER="0" ALT="Contents: Table of Contents" ALIGN="MIDDLE" NAME="toc"></A></TD></TR><TR VALIGN="TOP" ALIGN="LEFT"><TD VALIGN="MIDDLE" ALIGN="LEFT"><A HREF="autobook_285.html#SEC285" onMouseover="img_act('index')" onMouseout="img_inact('index')"><IMG SRC="index.png" BORDER="0" ALT="Index: Index" ALIGN="MIDDLE" NAME="index"></A></TD></TR><TR VALIGN="TOP" ALIGN="LEFT"><TD VALIGN="MIDDLE" ALIGN="LEFT"><A HREF="autobook_abt.html#SEC_About" onMouseover="img_act('help')" onMouseout="img_inact('help')"><IMG SRC="help.png" BORDER="0" ALT="About: About this document" ALIGN="MIDDLE" NAME="help"></A></TD></TR></TABLE></TD><TD ALIGN="LEFT"><H3> 15.2.2 Cross-Unix System Interfaces </H3><!--docid::SEC120::--><P>There are several Unix system interfaces which have associatedportability issues. We do not have the space here to discuss all ofthese in detail across all Unix systems. However, we mention them hereto indicate issues where you may need to consider portability.</P><P><DL COMPACT><DT><SAMP>`curses'</SAMP><DD><DT><SAMP>`termcap'</SAMP><DD><DT><SAMP>`terminfo'</SAMP><DD>Many Unix systems provide the <SAMP>`curses'</SAMP> interface for simplegraphical terminal access, but the name of the library varies. Typicalnames are <SAMP>`-lcurses'</SAMP> or <SAMP>`-lncurses'</SAMP>. Some Unix systems do notprovide <SAMP>`curses'</SAMP>, but do provide the <SAMP>`-ltermcap'</SAMP> or<SAMP>`-lterminfo'</SAMP> library. The latter libraries only provide aninterface to the <TT>`termcap'</TT> file or <TT>`terminfo'</TT> files. Thesefiles contain information about specific terminals, the difference beingmainly the manner in which they are stored.<DT><SAMP>`proc file system'</SAMP><DD>The <TT>`/proc'</TT> file system is not available on all Unix systems, andwhen it is available the actual set of files and their format varies.<DT><SAMP>`pseudo terminals'</SAMP><DD>All Unix systems provide pseudo terminals, but the interface to obtainthem varies widely. We recommend examining the configuration of anexisting program which uses them, such as GNU emacs or Expect.<DT><SAMP>`shared libraries'</SAMP><DD>Shared libraries differ across Unix systems. The GNU libtoolprogram was written to provide an interface to hide the differences.See section <A HREF="autobook_68.html#SEC68">10. Introducing GNU Libtool</A>.<DT><SAMP>`termios'</SAMP><DD><DT><SAMP>`termio'</SAMP><DD><DT><SAMP>`tty'</SAMP><DD>The <SAMP>`termios'</SAMP> interface to terminals is standard on modern Unixsystems. Avoid the older, non-portable, <SAMP>`termio'</SAMP> and <SAMP>`tty'</SAMP>interfaces (these interfaces are defined in <TT>`termio.h'</TT> and<TT>`sgtty.h'</TT>, respectively).<DT><SAMP>`threads'</SAMP><DD>Many, but not all, Unix systems support multiple threads in a singleprocess, but the interfaces differ. One thread interface, pthreads, wasstandardized in the 1996 edition of POSIX.1, so Unix systems are likelyto converge on that interface over time.<DT><SAMP>`utmp'</SAMP><DD><DT><SAMP>`wtmp'</SAMP><DD>Most Unix systems maintain the <TT>`utmp'</TT> and <TT>`wtmp'</TT> files torecord information about which users are logged onto the system.However, the format of the information in the files varies across Unixsystems, as does the exact location of the files and the functions whichsome systems provide to access the information. Programs which merelyneed to obtain login information will be more portable if they invoke aprogram such as <CODE>w</CODE>. Programs which need to update the logininformation must be prepared to handle a range of portability issues.<DT><SAMP>`X Window System'</SAMP><DD>Version 11 of the X Window System is widely available across Unixsystems. The actual release number varies somewhat, as does the set ofavailable programs and window managers. Extensions such as OpenGL arenot available on all systems.</DL><P><A NAME="Unix/Windows Portability"></A></TR></TABLE><BR> <FONT SIZE="-1">This document was generatedby <I>Gary V. Vaughan</I> on <I>September, 12 2004</I>using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html"><I>texi2html</I></A></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -