docs/101388: [UPDATE] zh_TW: Update developers-handbook to SVN#963
chinsan
chinsan.tw at gmail.com
Sat Aug 5 04:40:30 UTC 2006
>Number: 101388
>Category: docs
>Synopsis: [UPDATE] zh_TW: Update developers-handbook to SVN#963
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-doc
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: update
>Submitter-Id: current-users
>Arrival-Date: Sat Aug 05 04:40:16 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator: chinsan
>Release: FreeBSD 6.1-STABLE i386
>Organization:
FreeBSD Taiwan
>Environment:
System: FreeBSD chinsan2.twbbs.org 6.1-STABLE FreeBSD 6.1-STABLE #1: Fri Jun 2 16:44:35 CST 2006 root at chinsan2.twbbs.org:/usr/obj/usr/src/sys/GENERIC i386
- Update developers-handbook to SVN#963
(patch URL http://chinsan2.twbbs.org/chinsan/zh_TW.Big5.20060805_1.diff )
- ChangeLog (Trac Timeline)
https://opensvn.csie.org/traccgi/freebsddoc/timeline
>Description:
>How-To-Repeat:
>Fix:
--- zh_TW.Big5.20060805_1.diff begins here ---
diff -ruN zh_TW.Big5.orig/books/developers-handbook/introduction/chapter.sgml zh_TW.Big5/books/developers-handbook/introduction/chapter.sgml
--- zh_TW.Big5.orig/books/developers-handbook/introduction/chapter.sgml Wed Jul 26 11:55:46 2006
+++ zh_TW.Big5/books/developers-handbook/introduction/chapter.sgml Sat Aug 5 12:27:48 2006
@@ -73,11 +73,9 @@
<sect1 id="introduction-layout">
<title><filename class="directory">/usr/src</filename> ªº¬[ºc</title>
- <para>
- §¹¾ãªº FreeBSD ì©l½X³£¦b¤½¶}ªº CVS repository ¤¤¡C
+ <para>§¹¾ãªº FreeBSD ì©l½X³£¦b¤½¶}ªº CVS repository ¤¤¡C
³q±` FreeBSD ì©l½X³£·|¸Ë¦b <filename class="directory">/usr/src</filename>¡A
- ¦Ó¥B¥]§t¤U¦C¤l¥Ø¿ý¡G
- </para>
+ ¦Ó¥B¥]§t¤U¦C¤l¥Ø¿ý¡G</para>
<para>
<informaltable frame="none" pgwide="1">
diff -ruN zh_TW.Big5.orig/books/developers-handbook/tools/chapter.sgml zh_TW.Big5/books/developers-handbook/tools/chapter.sgml
--- zh_TW.Big5.orig/books/developers-handbook/tools/chapter.sgml Wed Jul 26 11:56:43 2006
+++ zh_TW.Big5/books/developers-handbook/tools/chapter.sgml Sat Aug 5 12:27:44 2006
@@ -23,94 +23,77 @@
<title>µ{¦¡¶}µo¤u¨ã</title>
<sect1 id="tools-synopsis"><title>·§±Ô</title>
- <para>
- ¥»³¹±N¤¶²Ð¦p¦ó¨Ï¥Î¤@¨Ç FreeBSD ©Ò´£¨Ñªºµ{¦¡¶}µo¤u¨ã(programing tools)¡A
+ <para>¥»³¹±N¤¶²Ð¦p¦ó¨Ï¥Î¤@¨Ç FreeBSD ©Ò´£¨Ñªºµ{¦¡¶}µo¤u¨ã(programing tools)¡A
¥»³¹©Ò¤¶²Ðªº¤u¨ãµ{¦¡¦b¨ä¥Lª©¥»ªº &unix; ¤W¤]¥i¨Ï¥Î¡A
¦b¦¹ <emphasis>¨Ã¤£·|</emphasis> ¹Á¸Õ´yz¼gµ{¦¡®Éªº¨CÓ²Ó¸`¡A
¥»³¹¤j³¡¤À½g´T³£¬O°²³]§A¥H«e¨S¦³©Î¥u¦³¤Ö¼Æªº¼gµ{¦¡¸gÅç¡A
- ¤£¹L¡AÁÙ¬O§Æ±æ¤j¦h¼Æªºµ{¦¡¶}µo¤Hû³£¯à±q¤¤«·s±o¨ì¤@¨Ç±Òµo¡C
- </para>
+ ¤£¹L¡AÁÙ¬O§Æ±æ¤j¦h¼Æªºµ{¦¡¶}µo¤Hû³£¯à±q¤¤«·s±o¨ì¤@¨Ç±Òµo¡C</para>
</sect1>
<sect1 id="tools-intro"><title>²¤¶</title>
- <para>
- FreeBSD ´£¨Ñ¤@Ó«D±`´Îªº¶}µoÀô¹Ò¡A
+ <para>FreeBSD ´£¨Ñ¤@Ó«D±`´Îªº¶}µoÀô¹Ò¡A
¤ñ¦p»¡¹³¬O C¡BC++¡BFortran ©M assembler(²Õ¦X»y¨¥)ªº½sĶ¾¹(compiler),
¦b FreeBSD ¤¤³£¤w¸g¥]§t¦b°ò¥»ªº¨t²Î¤¤¤F
§ó§O´£ Perl ©M¨ä¥L¼Ð·Ç &unix; ¤u¨ã¡A¹³¬O<command>sed</command> ¥H¤Î <command>awk</command>¡A
¦pªG§AÁÙ¬Oı±o¤£°÷¡AFreeBSD¦b Ports collection ¤¤ÁÙ´£¨Ñ¨ä¥Lªº½sĶ¾¹©Mª½Ä¶¾¹(interpreter),
FreeBSD ¬Û®e³\¦h¼Ð·Ç¡A¹³¬O <acronym>&posix;</acronym> ©M <acronym>ANSI</acronym> C¡A
·íµMÁÙ¦³¥¦©ÒÄ~©Óªº BSD ¶Ç²Î¡C
- ©Ò¥H¦b FreeBSD ¤W¼gªºµ{¦¡¤£»Ýקï©Î³»¦hµy·Lקï¡A´N¥i¥H¦b³\¦h¥¥x¤W½sĶ¡B°õ¦æ¡C
- </para>
+ ©Ò¥H¦b FreeBSD ¤W¼gªºµ{¦¡¤£»Ýקï©Î³»¦hµy·Lקï¡A´N¥i¥H¦b³\¦h¥¥x¤W½sĶ¡B°õ¦æ¡C</para>
- <para>
- µL½×¦p¦ó¡A´Nºâ§A±q¨Ó¨S¦b &unix; ¥¥x¤W¼g¹Lµ{¦¡¡A¤]¥i¥H¹ý©³·P¨ü¨ìFreeBSD ¥O¤HµLªk§Ü©Úªº°g¤HÅ]¤O¡C
+ <para>µL½×¦p¦ó¡A´Nºâ§A±q¨Ó¨S¦b &unix; ¥¥x¤W¼g¹Lµ{¦¡¡A¤]¥i¥H¹ý©³·P¨ü¨ìFreeBSD ¥O¤HµLªk§Ü©Úªº°g¤HÅ]¤O¡C
¥»³¹ªº¥Ø¼Ð´N¬O¨ó§U§A§Ö³t¤W¤â¡A¦Ó¼È®É¤£»Ý²`¤J¤Ó¦h¶i¶¥¥DÃD¡A
- ¨Ã¥BÁ¿¸Ñ¤@¨Ç°ò¦·§©À¡A¥HÅý§A¥i¥HÁA¸Ñ§Ú̦bÁ¿¨Ç¤°»ò¡C
- </para>
+ ¨Ã¥BÁ¿¸Ñ¤@¨Ç°ò¦·§©À¡A¥HÅý§A¥i¥HÁA¸Ñ§Ú̦bÁ¿¨Ç¤°»ò¡C</para>
- <para>
- ¥»³¹¤º®e¨Ã¤£n¨D§A±o¦³µ{¦¡¶}µo¸gÅç¡A©ÎªÌ§A¥u¦³¤@ÂIÂIªº¸gÅç¦Ó¤w¡C
+ <para>¥»³¹¤º®e¨Ã¤£n¨D§A±o¦³µ{¦¡¶}µo¸gÅç¡A©ÎªÌ§A¥u¦³¤@ÂIÂIªº¸gÅç¦Ó¤w¡C
¤£¹L¡A§ÚÌ°²³]§A¤w¸g·| &unix; ¨t²Îªº°ò¥»¾Þ§@¡A
- ¦Ó¥B§ó«nªº¬O¡A½Ð«O«ù¼Ö©ó¾Ç²ßªº¤ßºA¡I
- </para>
+ ¦Ó¥B§ó«nªº¬O¡A½Ð«O«ù¼Ö©ó¾Ç²ßªº¤ßºA¡I</para>
</sect1>
<sect1 id="tools-programming">
<title>Programming ·§©À</title>
- <para>
- ²³æªº»¡¡Aµ{¦¡¥u¬O¤@°ï«ü¥Oªº¶°¦XÅé¡F¦Ó³o¨Ç«ü¥O¬O¥Î¨Ó§i¶D¹q¸£À³¸Ón§@¨º¨Ç¨Æ±¡¡C
+ <para>²³æªº»¡¡Aµ{¦¡¥u¬O¤@°ï«ü¥Oªº¶°¦XÅé¡F¦Ó³o¨Ç«ü¥O¬O¥Î¨Ó§i¶D¹q¸£À³¸Ón§@¨º¨Ç¨Æ±¡¡C
¦³®ÉÔ¡A«ü¥Oªº°õ¦æ¨ú¨M©ó«e¤@Ó«ü¥Oªºµ²ªG¦Ó©w¡C
¥»³¹±N·|§i¶D§A¦³ 2 Ó¥Dnªº¤èªk¡AÅý§A¥i¥H¹ï¹q¸£¤U¹F³o¨Ç«ü¥Ü(instruction) ©Î <quote>©R¥O(commands)</quote>¡C
²Ä¤@Ó¤èªk´N¬O <firstterm>ª½Ä¶¾¹(interpreter)</firstterm>¡A
¦Ó²Ä¤GÓ¤èªk¬O <firstterm>½sĶ¾¹(compiler)</firstterm>¡C
¥Ñ©ó¹ï©ó¹q¸£¦Ó¨¥¡A¤HÃþ»y¨¥ªº»y·N¹L©ó¼Ò½k¦Ó¤ÓÃø²z¸Ñ¡A
- ¦]¦¹©R¥O(commands)´N±`·|¥H¤@ºØ(©Î¦hºØ)µ{¦¡»y¨¥¼g¦¨¡A¥Î¨Ó«ü¥Ü¹q¸£©Òn°õ¦æªº¯S©w°Ê§@¬°¦ó¡C
- </para>
+ ¦]¦¹©R¥O(commands)´N±`·|¥H¤@ºØ(©Î¦hºØ)µ{¦¡»y¨¥¼g¦¨¡A¥Î¨Ó«ü¥Ü¹q¸£©Òn°õ¦æªº¯S©w°Ê§@¬°¦ó¡C</para>
<sect2>
<title>ª½Ä¶¾¹</title>
- <para>
- ¨Ï¥Îª½Ä¶¾¹®É¡A©Ò¨Ï¥Îªºµ{¦¡»y¨¥´N¹³Åܦ¨¤@Ó·|©M§A¤¬°ÊªºÀô¹Ò¡C
+ <para>¨Ï¥Îª½Ä¶¾¹®É¡A©Ò¨Ï¥Îªºµ{¦¡»y¨¥´N¹³Åܦ¨¤@Ó·|©M§A¤¬°ÊªºÀô¹Ò¡C
·í¦b©R¥O´£¥Ü¦C¤W¥´¤W©R¥O®É¡Aª½Ä¶¾¹·|§Y®É°õ¦æ¸Ó©R¥O¡C
¦b¤ñ¸û½ÆÂøªºµ{¦¡¤¤¡A¥i¥H§â©Ò¦³·Q¤U¹Fªº©R¥O²Î²Î¿é¤J¨ì¬YÀɮ׸̱¥h¡A
µM«á©I¥sª½Ä¶¾¹¥hŪ¨ú¸ÓÀɮסA¨Ã¥B°õ¦æ§A¼g¦b³oÓÀɮפ¤ªº«ü¥O¡C
¦pªG©Ò¤Uªº«ü¥O¦³¿ù»~²£¥Í¡A¤j¦h¼Æªºª½Ä¶¾¹·|¶i¤J°»¿ù¼Ò¦¡(debugger)¡A
- ¨Ã¥BÅã¥Ü¬ÛÃö¿ù»~°T®§¡A¥H«K¹ïµ{¦¡°£¿ù¡C
- </para>
+ ¨Ã¥BÅã¥Ü¬ÛÃö¿ù»~°T®§¡A¥H«K¹ïµ{¦¡°£¿ù¡C</para>
- <para>
- ³oºØ¤è¦¡¦n³B¦b©ó¡G¥i¥H¥ß¨è¬Ý¨ì«ü¥Oªº°õ¦æµ²ªG¡A¥H¤Î¿ù»~¤]¥i¨³³t×¥¿¡C
- ¬Û¹ïªº¡A³Ì¤jªºÃa³B«K¬O·í§A·Q§â§A¼gªºµ{¦¡¤À¨Éµ¹¨ä¥L¤H®É¡A³o¨Ç¤H¥²¶·n¦³¸ò§A¤@¼Ëªºª½Ä¶¾¹¡C
- ¦Ó¥B§O§Ñ¤F¡A¥L̤]n·|¨Ï¥Îª½Ä¶¾¹ª½Ä¶µ{¦¡¤~¦æ¡C
- ·íµM¨Ï¥ÎªÌ¤]¤£§Æ±æ¤£¤p¤ß«ö¿ùÁä¡A´N¶i¤J°»¿ù¼Ò¦¡¦Ó¤£ª¾©Ò±¹¡C
- ´N°õ¦æ®Ä²v¦Ó¨¥¡Aª½Ä¶¾¹·|¨Ï¥Î¨ì«Ü¦hªº°O¾ÐÅé¡A
- ¦Ó¥B³oÃþª½Ä¶¦¡µ{¦¡¡A³q±`¨Ã¤£·|¤ñ½sĶ¾¹©Ò½sĶªºµ{¦¡ªº§ó¦³®Ä²v¡C
- </para>
-
- <para>
- µ§ªÌÓ¤H»{¬°¡A¦pªG§A¤§«e¨S¦³¾Ç¹L¥ô¦óµ{¦¡»y¨¥¡A³Ì¦n¥ý¾Ç¾Ç²ßª½Ä¶¦¡»y¨¥(interpreted languages)¡A
- ¹³¬O Lisp¡ASmalltalk¡APerl ©M Basic ³£¬O¡A&unix; ªº shell ¹³¬O <command>sh</command> ©M <command>csh</command>
- ¥¦Ì¥»¨´N¬Oª½Ä¶¾¹¡A¨Æ¹ê¤W¡A«Ü¦h¤H³£¦b¥¦Ì¦Û¤v¾÷¾¹¤W¼¶¼g¦U¦¡ªº shell <quote>script</quote>¡A
- ¨Ó¶¶§Q§¹¦¨¦U¶µ <quote>housekeeping(ºûÅ@)</quote> ¥ô°È¡C
- &unix; ¨Ï¥Îõ¾Ç¤§¤@´N¬O´£¨Ñ¤j¶qªº¤p¤u¨ã¡A
- ¨Ã¨Ï¥Î shell script ¨Ó²Õ¦X¹B¥Î³o¨Ç¤p¤u¨ã¡A¥H«K¤u§@§ó¦³®Ä²v¡C
+ <para>³oºØ¤è¦¡¦n³B¦b©ó¡G¥i¥H¥ß¨è¬Ý¨ì«ü¥Oªº°õ¦æµ²ªG¡A¥H¤Î¿ù»~¤]¥i¨³³t×¥¿¡C
+ ¬Û¹ïªº¡A³Ì¤jªºÃa³B«K¬O·í§A·Q§â§A¼gªºµ{¦¡¤À¨Éµ¹¨ä¥L¤H®É¡A³o¨Ç¤H¥²¶·n¦³¸ò§A¤@¼Ëªºª½Ä¶¾¹¡C
+ ¦Ó¥B§O§Ñ¤F¡A¥L̤]n·|¨Ï¥Îª½Ä¶¾¹ª½Ä¶µ{¦¡¤~¦æ¡C
+ ·íµM¨Ï¥ÎªÌ¤]¤£§Æ±æ¤£¤p¤ß«ö¿ùÁä¡A´N¶i¤J°»¿ù¼Ò¦¡¦Ó¤£ª¾©Ò±¹¡C
+ ´N°õ¦æ®Ä²v¦Ó¨¥¡Aª½Ä¶¾¹·|¨Ï¥Î¨ì«Ü¦hªº°O¾ÐÅé¡A
+ ¦Ó¥B³oÃþª½Ä¶¦¡µ{¦¡¡A³q±`¨Ã¤£·|¤ñ½sĶ¾¹©Ò½sĶªºµ{¦¡ªº§ó¦³®Ä²v¡C</para>
+
+ <para>µ§ªÌÓ¤H»{¬°¡A¦pªG§A¤§«e¨S¦³¾Ç¹L¥ô¦óµ{¦¡»y¨¥¡A³Ì¦n¥ý¾Ç¾Ç²ßª½Ä¶¦¡»y¨¥(interpreted languages)¡A
+ ¹³¬O Lisp¡ASmalltalk¡APerl ©M Basic ³£¬O¡A&unix; ªº shell ¹³¬O <command>sh</command> ©M <command>csh</command>
+ ¥¦Ì¥»¨´N¬Oª½Ä¶¾¹¡A¨Æ¹ê¤W¡A«Ü¦h¤H³£¦b¥¦Ì¦Û¤v¾÷¾¹¤W¼¶¼g¦U¦¡ªº shell <quote>script</quote>¡A
+ ¨Ó¶¶§Q§¹¦¨¦U¶µ <quote>housekeeping(ºûÅ@)</quote> ¥ô°È¡C
+ &unix; ªº¨Ï¥Îõ¾Ç¤§¤@´N¬O´£¨Ñ¤j¶qªº¤p¤u¨ã¡A
+ ¨Ã¨Ï¥Î shell script ¨Ó²Õ¦X¹B¥Î³o¨Ç¤p¤u¨ã¡A¥H«K¤u§@§ó¦³®Ä²v¡C</para>
</sect2>
<sect2>
<title>FreeBSD ´£¨Ñªºª½Ä¶¾¹</title>
- <para>
- ¤U±³oÃ䦳¥÷ &os; Ports Collection ©Ò´£¨Ñªºª½Ä¶¾¹²M³æ¡AÁÙ¦³°Q½×¤@¨Ç¤ñ¸û¨üÅwªïªºª½Ä¶¦¡»y¨¥</para>
+ <para>¤U±³oÃ䦳¥÷ &os; Ports Collection ©Ò´£¨Ñªºª½Ä¶¾¹²M³æ¡AÁÙ¦³°Q½×¤@¨Ç¤ñ¸û¨üÅwªïªºª½Ä¶¦¡»y¨¥</para>
- <para>
- ¦Ü©ó¦p¦ó¨Ï¥Î Ports Collection ¦w¸Ëªº»¡©ú¡A¥i°Ñ¾\ FreeBSD Handbook ¤¤ªº
+ <para>¦Ü©ó¦p¦ó¨Ï¥Î Ports Collection ¦w¸Ëªº»¡©ú¡A¥i°Ñ¾\ FreeBSD Handbook ¤¤ªº
<ulink url="&url.books.handbook;/ports-using.html">Ports³¹¸`</ulink>¡C
<variablelist>
<varlistentry>
@@ -146,8 +129,7 @@
¡A¦¹¥~ CMUCL(¥]§t¤@Ó¤w¸g³Ì¨Î¤Æªº½sĶ¾¹)¡A
¥H¤Î¨ä¥L²¤Æª©ªº LISP ª½Ä¶¾¹(¤ñ¦p¥H C »y¨¥¼gªº SLisp¡A¥u¥Î´X¦Ê¦æµ{¦¡½X´N¹ê§@¤j¦h¼Æ Common Lisp ªº¥\¯à)
«h¬O¤À§O¦¬¿ý¦b <filename role="package">lang/cmucl</filename> ¥H¤Î
- <filename role="package">lang/slisp</filename>¡C
- </para>
+ <filename role="package">lang/slisp</filename>¡C</para>
</listitem>
</varlistentry>
@@ -169,8 +151,7 @@
<listitem>
<para>Scheme ¬O LISP ªº¥t¤@¤À¤ä¡AScheme ªº¯SÂI´N¬O¤ñ Common LISP ÁÙn²¼ä¦³¤O¡C
¥Ñ©ó Scheme ²³æ¡A©Ò¥H«Ü¦h¤j¾Ç®³¨Ó·í§@²Ä¤@°óµ{¦¡»y¨¥±Ð¾Ç±Ð§÷¡C
- ¦Ó¥B¹ï©ó¬ã¨s¤Hû¨Ó»¡¤]¥i¥H§Ö³tªº¶}µo¥LÌ©Ò»Ýnªºµ{¦¡¡C
- </para>
+ ¦Ó¥B¹ï©ó¬ã¨s¤Hû¨Ó»¡¤]¥i¥H§Ö³tªº¶}µo¥LÌ©Ò»Ýnªºµ{¦¡¡C</para>
<para>Scheme ¦¬¿ý¦b <filename role="package">lang/elk</filename>¡A
Elk Scheme ª½Ä¶¾¹(¥Ñ³Â¬Ù²z¤u¾Ç°|©Òµo®iªº Scheme ª½Ä¶¾¹)¦¬¿ý¦b
@@ -208,8 +189,7 @@
<para>Python ¬Oª«¥ó¾É¦Vªºª½Ä¶¦¡»y¨¥¡A
Python ªº¾ÖÅ@ªÌÁ`¬O«ÅºÙ Python ¬O³Ì¦n¤Jªùªºµ{¦¡»y¨¥¡C
ÁöµM Python ¥i¥H«Ü²³æªº¶}©l¡A¦ý¬O¤£¥Nªí¥¦´N·|¿éµ¹¨ä¥Lª½Ä¶¦¡»y¨¥(¹³¬O Perl ©M Tcl)¡A
- ¨Æ¹êÃÒ©ú Python ¤]¥i¥H®³¨Ó¶}µo¤j«¬¡B½ÆÂøªºÀ³¥Îµ{¦¡¡C
- </para>
+ ¨Æ¹êÃÒ©ú Python ¤]¥i¥H®³¨Ó¶}µo¤j«¬¡B½ÆÂøªºÀ³¥Îµ{¦¡¡C</para>
<para>&os; Ports Collection ¦¬¿ý¦b <filename role="package">lang/python</filename>¡C</para>
</listitem>
@@ -245,9 +225,9 @@
<title>½sĶ¾¹</title>
<para>½sĶ¾¹©Mª½Ä¶¾¹¨âªÌ¬Û¤ñªº¸Ü¡A¦³¨Ç¤£¦P¡Aº¥ý´N¬O¥²¶·¥ý§âµ{¦¡½X²Î²Î¼g¤J¨ìÀɮ׸̱¡A
- µM«á¥²¶·°õ¦æ½sĶ¾¹¨Ó¸ÕµÛ½sĶµ{¦¡¡A¦pªG½sĶ¾¹¤£±µ¨ü©Ò¼gªºµ{¦¡¡A¨º´N¥²¶·¤@ª½×§ïµ{¦¡¡A
- ª½¨ì½sĶ¾¹±µ¨ü¥B§â§Aªºµ{¦¡½sĶ¦¨°õ¦æÀÉ¡C
- ¦¹¥~¡A¤]¥i¥H¦b´£¥Ü©R¥O¦C¡A©Î¦b°£¿ù¾¹¤¤°õ¦æ§A½sĶ¦nªºµ{¦¡¬Ý¬Ý¥¦¬O§_¥i¥H¹B§@¡C
+ µM«á¥²¶·°õ¦æ½sĶ¾¹¨Ó¸ÕµÛ½sĶµ{¦¡¡A¦pªG½sĶ¾¹¤£±µ¨ü©Ò¼gªºµ{¦¡¡A¨º´N¥²¶·¤@ª½×§ïµ{¦¡¡A
+ ª½¨ì½sĶ¾¹±µ¨ü¥B§â§Aªºµ{¦¡½sĶ¦¨°õ¦æÀÉ¡C
+ ¦¹¥~¡A¤]¥i¥H¦b´£¥Ü©R¥O¦C¡A©Î¦b°£¿ù¾¹¤¤°õ¦æ§A½sĶ¦nªºµ{¦¡¬Ý¬Ý¥¦¬O§_¥i¥H¹B§@¡C
<footnote>
<para>¦pªG¦b´£¥Ü©R¥O¦C¤U°õ¦æ¡A¨º»ò¦³¥i¯à·|²£¥Í core dump¡C</para>
</footnote></para>
@@ -260,8 +240,7 @@
¦Ó½sĶ¾¹»Pª½Ä¶¾¹³Ì¤jªº®t§O¦b©ó¡G·í§A·Q§â§A¼g¦nªºµ{¦¡®³¨ì¥t¥~¤@¥x¾÷¾¹¤W¶]®É¡A
§A¥un±N½sĶ¾¹½sĶ¥X¨Óªº¥i°õ¦æÀÉ¡A®³¨ì·s¾÷¾¹¤W«K¥i¥H°õ¦æ¡A
¦Óª½Ä¶¾¹«h¥²¶·n¨D·s¾÷¾¹¤W¡A¥²¶·n¦³¸ò¥t¤@¥x¾÷¾¹¤W¬Û¦Pªºª½Ä¶¾¹¡A
- ¤~¯à²ÕĶ°õ¦æ§Aªºµ{¦¡¡I
- </para>
+ ¤~¯à²ÕĶ°õ¦æ§Aªºµ{¦¡¡I</para>
<para>½sĶ¦¡ªºµ{¦¡»y¨¥¥]§t Pascal¡BC ©M C++¡A
C ©M C++ ¤£¬O¤@Ó¿Ë©M¤O¤Q¨¬ªº»y¨¥¡A¦ý¬O«Ü¾A¦X¨ã¦³¸gÅ窺 Programmer¡C
@@ -271,8 +250,10 @@
<filename role="package">lang/gpc</filename> ©M <filename role="package">lang/fpc</filename> ¤¤§ä¨ì¡C</para>
<para>¦pªG§A¥Î¤£¦Pªºµ{¦¡¨Ó¼g½sĶ¦¡µ{¦¡¡A¨º»ò¤£Â_¦a½s¿è-½sĶ-°õ¦æ-°£¿ùªº³oÓ´`ÀôªÖ©w·|«Ü·Ð¤H¡A
- ¬°¤F§ó²¤Æ¡B¤è«Kµ{¦¡¶}µo¬yµ{¡A«Ü¦h°Ó·~½sĶ¾¹¼t°Ó¶}©lµo®i©Ò¿×ªº <acronym>IDE</acronym>(Integrated Development Environments) ¶}µoÀô¹Ò¡A
- FreeBSD ¹w³]¨Ã¨S¦³§â IDE ¾ã¦X¶i base system ¤¤¡A¦ý¬O§A¥i³z¹L <filename role="package">devel/kdevelop</filename> ¦w¸Ë kdevelop
+ ¬°¤F§ó²¤Æ¡B¤è«Kµ{¦¡¶}µo¬yµ{¡A«Ü¦h°Ó·~½sĶ¾¹¼t°Ó¶}©lµo®i©Ò¿×ªº <acronym>IDE</acronym>
+ (Integrated Development Environments) ¶}µoÀô¹Ò¡A
+ FreeBSD ¹w³]¨Ã¨S¦³§â IDE ¾ã¦X¶i base system ¤¤¡A
+ ¦ý¬O§A¥i³z¹L <filename role="package">devel/kdevelop</filename> ¦w¸Ë kdevelop
©Î¨Ï¥Î <application>Emacs</application> ¨ÓÅéÅç IDE ¶}µoÀô¹Ò¡C
¦b«á±ªº <xref linkend="emacs"> ±MÃD±N¤¶²Ð¡A¦p¦ó¥H <application>Emacs</application> ¨Ó§@¬° IDE ¶}µoÀô¹Ò¡C</para>
</sect2>
@@ -338,7 +319,7 @@
<para>©¯¹Bªº¬O¡A§A¥i¥H¤£¥Î²z·|¥H¤W²Ó¸`¡A½sĶ¾¹³£·|¦Û°Ê§¹¦¨¡C
¦]¬° <command>cc</command> ¥u¬O¬OÓ«eºÝµ{¦¡(front end)¡A¥¦·|¨Ì·Ó¥¿½Tªº°Ñ¼Æ¨Ó©I¥s¬ÛÃöµ{¦¡À°§A³B²z¡C
- ¥u»Ý¥´¡G
+ ¥u»Ý¥´¡G</para>
<screen>&prompt.user; <userinput>cc foobar.c</userinput></screen>
<para>¤Wz«ü¥O·|§â <filename>foobar.c</filename> ¶}©l½sĶ¡A¨Ã§¹¦¨¤Wz°Ê§@¡C
@@ -362,7 +343,7 @@
<listitem>
<para><option>-o</option> ½sĶ«áªº°õ¦æÀÉÀɦW¡A¦pªG¨S¦³¨Ï¥Î³o¿ï¶µªº¸Ü¡A
- ½sĶ¦nªºµ{¦¡¹w³]ÀɦW±N·|¬O <filename>a.out</filename>
+ ½sĶ¦nªºµ{¦¡¹w³]ÀɦW±N·|¬O <filename>a.out</filename>
<footnote>
<para>¦Ü©ó <option>-o</option> ªºì¦]¡A«h¬O¤@¹Î¾ú¥v°gÃú¤F¡C</para>
@@ -398,8 +379,7 @@
<term><option>-g</option></term>
<listitem>
- <para>
- <option>-g</option> ±N·|§â¤@¨Çµ¹ gdb ¥Îªº°£¿ù°T®§¥]¶i¥h°õ¦æÀɸ̱¡A©Ò¿×ªº°£¿ù°T®§¨Ò¦p¡G
+ <para><option>-g</option> ±N·|§â¤@¨Çµ¹ gdb ¥Îªº°£¿ù°T®§¥]¶i¥h°õ¦æÀɸ̱¡A©Ò¿×ªº°£¿ù°T®§¨Ò¦p¡G
µ{¦¡¦b²Ä´X¦æ¥X¿ù¡B¨ºÓµ{¦¡²Ä´X¦æ°µ¤°»ò¨ç¦¡©I¥sµ¥µ¥¡C°£¿ù¸ê°T<emphasis>«D±`</emphasis>¦n¥Î¡C
¦ý¯ÊÂI´N¬O¡G¹ï©óµ{¦¡¨Ó»¡¡AÃB¥~ªº°£¿ù°T®§·|Åý½sĶ¥X¨Óªºµ{¦¡¤ñ¸ûªÎ¨Ç¡C
<option>-g</option> ªº¾A¥Î®É¾÷¦b©ó¡G·íµ{¦¡ÁÙ¦b¶}µo®É¨Ï¥Î´N¦n¡A
@@ -426,13 +406,12 @@
<listitem>
<para><option>-O</option> ·|²£¥Í³Ì¨Î¤Æªº°õ¦æÀÉ¡A
- ½sĶ¾¹·|¨Ï¥Î¤@¨Ç§Þ¥©¡A¨ÓÅýµ{¦¡¥i¥H¶]ªº¤ñ¥¼¸g³Ì¨Î¤Æªºµ{¦¡ÁÙ§Ö¡A
- §A¥i¥H¦b¤j¼g O «á±¥[¤W¼Æ¦r¨Ó«ü©ú§A·Qnªº³Ì¨Î¤Æ¼h¯Å¡C
- ¦ý¬O³Ì¨Î¤ÆÁÙ¬O·|¦³¤@¨Ç¿ù»~¡AÁ|¨Ò¨Ó»¡¦b·í¦b FreeBSD 2.10 release ¤¤¨Ï¥Î <command>cc</command>
- ¨Ã¥B«ü©w <option>-O2</option> ®É¡A¦b¬Y¨Ç±¡§Î¤U·|²£¥Í¿ù»~ªº°õ¦æÀÉ¡C</para>
+ ½sĶ¾¹·|¨Ï¥Î¤@¨Ç§Þ¥©¡A¨ÓÅýµ{¦¡¥i¥H¶]ªº¤ñ¥¼¸g³Ì¨Î¤Æªºµ{¦¡ÁÙ§Ö¡A
+ ¥i¥H¦b¤j¼g O «á±¥[¤W¼Æ¦r¨Ó«ü©ú·Qnªº³Ì¨Î¤Æ¼h¯Å¡C
+ ¦ý¬O³Ì¨Î¤ÆÁÙ¬O·|¦³¤@¨Ç¿ù»~¡AÁ|¨Ò¨Ó»¡¦b FreeBSD 2.10 release ¤¤¥Î <command>cc</command>
+ ¥B«ü©w <option>-O2</option> ®É¡A¦b¬Y¨Ç±¡§Î¤U·|²£¥Í¿ù»~ªº°õ¦æÀÉ¡C</para>
- <para>¥u¦³·ínÄÀ¥Xµo¦æª©¥»¡B©ÎªÌ¥[³tµ{¦¡®É¡A¤~»Ýn¨Ï¥Î³Ì¨Î¤Æ¿ï¶µ¡C
- </para>
+ <para>¥u¦³·ínÄÀ¥Xµo¦æª©¥»¡B©ÎªÌ¥[³tµ{¦¡®É¡A¤~»Ýn¨Ï¥Î³Ì¨Î¤Æ¿ï¶µ¡C</para>
<informalexample>
<screen>&prompt.user; <userinput>cc -O -o foobar foobar.c</userinput>
@@ -444,11 +423,9 @@
</varlistentry>
</variablelist>
- <para>
- ¥H¤U¤TӰѼƱN·|±j¢ <command>cc</command> ½T»{µ{¦¡½X¬O§_²Å¦X¤@¨Ç°ê»Ú¼Ð·Çªº³W½d¡A
+ <para>¥H¤U¤TӰѼƱN·|±j¢ <command>cc</command> ½T»{µ{¦¡½X¬O§_²Å¦X¤@¨Ç°ê»Ú¼Ð·Çªº³W½d¡A
¤]´N¬O³q±`»¡ªº <acronym>ANSI</acronym> ¼Ð·Ç¡A
- ¦Ó <acronym>ANSI</acronym> ÄY®æ¨ÓÁ¿ÄÝ <acronym>ISO</acronym> ¼Ð·Ç¡C
- </para>
+ ¦Ó <acronym>ANSI</acronym> ÄY®æ¨ÓÁ¿ÄÝ <acronym>ISO</acronym> ¼Ð·Ç¡C</para>
<variablelist>
<varlistentry>
@@ -501,15 +478,14 @@
<para>§i¶D gcc ¦b³sµ²(linking)µ{¦¡®É§A»Ýn¥Î¨ìªº¨ç¦¡®w¦WºÙ¡C</para>
<para>³Ì±`¨£ªº±¡ªp´N¬O¡A·í§A¦bµ{¦¡¤¤¨Ï¥Î¤F C ¼Æ¾Ç¨ç¦¡®w¡A
- ¸ò¨ä¥L§@·~¥¥x¤£¤@¼Ëªº¬O¡A³o¨Ç¼Æ¾Ç¨ç¦¡³£¤£¦b¼Ð·Ç¨ç¦¡®w(library)¤¤¡A
+ ¸ò¨ä¥L§@·~¥¥x¤£¤@¼Ëªº¬O¡A³o¨ç¥Ü¾Ç¨ç¦¡³£¤£¦b¼Ð·Ç¨ç¦¡®w(library)¤¤¡A
¦]¦¹½sĶ¾¹¨Ã¤£ª¾¹D³o¨ç¦¡®w¦WºÙ¡A§A¥²¶·§i¶D½sĶ¾¹n¥[¤W¥¦¤~¦æ¡C</para>
- <para>³o³W«h«Ü²³æ¡A¦pªG¦³Ó¨ç¦¡®w¥s°µ <filename>lib<replaceable>something</replaceable>/a</filename>¡A
+ <para>³W«h«Ü²³æ¡A¦pªG¦³Ó¨ç¦¡®w¥s°µ <filename>lib<replaceable>something</replaceable>.a</filename>¡A
´N¥²¶·¦b½sĶ®É¥[¤W°Ñ¼Æ <option>-l<replaceable>something</replaceable></option> ¤~¦æ¡C
Á|¨Ò¨Ó»¡¡A¼Æ¾Ç¨ç¦¡®w¥s°µ <filename>libm.a</filename>¡A
©Ò¥H§A¥²¶·µ¹ <command>cc</command> ªº°Ñ¼Æ´N¬O <option>-lm</option>¡C
- ¤@¯ë±¡ªp¤U¡A³q±`·|§â³o°Ñ¼Æ¥²¶·©ñ¦b«ü¥Oªº³Ì«á¡C
- </para>
+ ¤@¯ë±¡ªp¤U¡A³q±`·|§â³o°Ñ¼Æ¥²¶·©ñ¦b«ü¥Oªº³Ì«á¡C</para>
<informalexample>
<screen>&prompt.user; <userinput>cc -o foobar foobar.c -lm</userinput>
@@ -522,42 +498,34 @@
<option>-lstdc++</option>¡C
¦pªG§Aªº FreeBSD ¬O 2.2(§t)¥H«áª©¥»¡A
§A¥i¥H¥Î«ü¥O <command>c++</command> ¨Ó¨ú¥N <command>cc</command>¡C
- ¦b FreeBSD ¤W <command>c++</command> ¤]¥i¥H¥Î <command>g++</command> ¨ú¥N¡C
- </para>
+ ¦b FreeBSD ¤W <command>c++</command> ¤]¥i¥H¥Î <command>g++</command> ¨ú¥N¡C</para>
<informalexample>
- <screen>&prompt.user; <userinput>cc -o foobar foobar.cc -lg++</userinput> <lineannotation>For FreeBSD 2.1.6 and earlier</lineannotation>
-&prompt.user; <userinput>cc -o foobar foobar.cc -lstdc++</userinput> <lineannotation>For FreeBSD 2.2 and later</lineannotation>
+ <screen>&prompt.user; <userinput>cc -o foobar foobar.cc -lg++</userinput> <lineannotation>¾A¥Î FreeBSD 2.1.6 ©Î§ó¦´Áªºª©¥»</lineannotation>
+&prompt.user; <userinput>cc -o foobar foobar.cc -lstdc++</userinput> <lineannotation>¾A¥Î FreeBSD 2.2 ¤Î¤§«áªºª©¥»</lineannotation>
&prompt.user; <userinput>c++ -o foobar foobar.cc</userinput>
</screen>
</informalexample>
- <para>Each of these will both produce an executable
- <filename>foobar</filename> from the C++ source file
- <filename>foobar.cc</filename>. Note that, on &unix;
- systems, C++ source files traditionally end in
- <filename>.C</filename>, <filename>.cxx</filename> or
- <filename>.cc</filename>, rather than the
- &ms-dos; style
- <filename>.cpp</filename> (which was already used for
- something else). <command>gcc</command> used to rely on
- this to work out what kind of compiler to use on the
- source file; however, this restriction no longer applies,
- so you may now call your C++ files
- <filename>.cpp</filename> with impunity!</para>
+ <para>¤Wz«ü¥O³£·|±qì©lÀÉ <filename>foobar.cc</filename> ½sĶ²£¥Í¦W¬° <filename>fooboar</filename> ªº°õ¦æÀÉ¡C
+ ³oÃän´£¿ôªº¬O¦b &unix; ¨t²Î¤¤ C++ µ{¦¡¶Ç²Î³£¥H <filename>.C</filename>¡B
+ <filename>.cxx</filename> ©ÎªÌ¬O <filename>.cc</filename> §@¬°°ÆÀɦW¡A
+ ¦Ó«D &ms-dos; ¨ººØ¥H <filename>.cpp</filename> §@¬°°ÆÀɦWªº©R¦W¤è¦¡(¤£¹L¤]¶V¨Ó¶V´¶¹M¤F)¡C
+ <command>gcc</command> ·|¨Ì°ÆÀɦW¨Ó¨M©w¥Îþ¤@ºØ½sĶ¾¹½sĶ¡A
+ µM¦Ó¡A²{¦b¤w¸g¤£¦A¨î°ÆÀɦW¤F¡A
+ ©Ò¥H¥i¥H¦Û¥Ñªº¨Ï¥Î <filename>.cpp</filename> §@¬° C++ µ{¦¡½Xªº°ÆÀɦW¡I</para>
</listitem>
</varlistentry>
</variablelist>
<sect2>
- <title>Common <command>cc</command> Queries and Problems</title>
+ <title>±`¨£ªº <command>cc</command> °ÝÃD</title>
<qandaset>
<qandaentry>
<question>
- <para>I am trying to write a program which uses the
- <function>sin()</function> function and I get an error
- like this. What does it mean?</para>
+ <para>§Ú¥Î <function>sin()</function> ¨ç¥Ü¼¶¼g§Úªºµ{¦¡¡A
+ ¦ý¬O¦³Ó¿ù»~°T®§(¦p¤U)¡A³o¥NªíµÛ¡H</para>
<informalexample>
<screen>/var/tmp/cc0143941.o: Undefined symbol `_sin' referenced from text segment
@@ -566,10 +534,8 @@
</question>
<answer>
- <para>When using mathematical functions like
- <function>sin()</function>, you have to tell
- <command>cc</command> to link in the math library, like
- so:</para>
+ <para>·í¨Ï¥Î <function>sin()</function> ³oÃþªº¼Æ¾Ç¨ç¥Ü®É¡A
+ §A¥²¶·§i¶D cc n©M¼Æ¾Ç¨ç¦¡®w§@³sµ²(linking)¡A´N¹³³o¼Ë¡G</para>
<informalexample>
<screen>&prompt.user; <userinput>cc -o foobar foobar.c -lm</userinput>
@@ -580,9 +546,7 @@
<qandaentry>
<question>
- <para>All right, I wrote this simple program to practice
- using <option>-lm</option>. All it does is raise 2.1 to
- the power of 6.</para>
+ <para>¦n§a¡A§Ú¸ÕµÛ¼g¨Ç²³æªºµ{¦¡¡A¨Ó½m²ß¨Ï¥Î -lm ¿ï¶µ(¸Óµ{¦¡·|¹Bºâ 2.1 ªº 6 ¦¸¤è)</para>
<informalexample>
<programlisting>#include <stdio.h>
@@ -597,15 +561,14 @@
</programlisting>
</informalexample>
- <para>and I compiled it as:</para>
+ <para>µM«á¶i¦æ½sĶ¡G</para>
<informalexample>
<screen>&prompt.user; <userinput>cc temp.c -lm</userinput>
</screen>
</informalexample>
- <para>like you said I should, but I get this when I run
- it:</para>
+ <para>½sĶ«á°õ¦æµ{¦¡¡A±o¨ì¤U±³oµ²ªG¡G</para>
<informalexample>
<screen>&prompt.user; <userinput>./a.out</userinput>
@@ -613,30 +576,24 @@
</screen>
</informalexample>
- <para>This is <emphasis>not</emphasis> the right answer!
- What is going on?</para>
+ <para>«Ü©úÅ㪺¡Aµ{¦¡µ²ªG<emphasis>¤£¬O</emphasis>¥¿½Tµª®×¡A¨ì©³¬OþÃä¥X¿ù¡H</para>
</question>
<answer>
- <para>When the compiler sees you call a function, it
- checks if it has already seen a prototype for it. If it
- has not, it assumes the function returns an
- <type>int</type>, which is definitely not what you want
- here.</para>
+ <para>·í½sĶ¾¹µo²{§A©I¥s¤@Ó¨ç¥Ü®É¡A¥¦·|½T»{¸Ó¨ç¥Üªº¦^¶ÇÈÃþ«¬(prototype)¡A
+ ¦pªG¨S¦³¯S§O«ü©ú¡A«h¹w³]ªº¦^¶ÇÈÃþ«¬¬° <type>int(¾ã¼Æ)</type>¡C
+ «Ü©úÅ㪺¡A§Aªºµ{¦¡©Ò»Ýnªº¨Ã¤£¬O¦^¶ÇÈÃþ§O¬° <type>int</type>¡C</para>
</answer>
</qandaentry>
<qandaentry>
<question>
- <para>So how do I fix this?</para>
+ <para>¨º¦p¦ó¤~¥i¥H×¥¿è©Ò»¡ªº°ÝÃD¡H</para>
</question>
<answer>
- <para>The prototypes for the mathematical functions are in
- <filename>math.h</filename>. If you include this file,
- the compiler will be able to find the prototype and it
- will stop doing strange things to your
- calculation!</para>
+ <para>¼Æ¾Ç¨ç¥Üªº¦^¶ÇÈÃþ«¬(prototype)·|©w¸q¦b <filename>math.h</filename>¡A
+ ¦pªG§A¦³ include ³oÀÉ¡A½sĶ¾¹´N·|ª¾¹D¸Ó¨ç¥Üªº¦^¶ÇÈÃþ«¬¡A¦p¦¹¤@¨Ó¸Ó¹Bºâ´N·|±o¨ì¥¿½Tªºµ²ªG¡I</para>
<informalexample>
<programlisting>#include <math.h>
@@ -647,8 +604,7 @@
</programlisting>
</informalexample>
- <para>After recompiling it as you did before, run
- it:</para>
+ <para>¥[¤F¤Wz¤º®e¤§«á¡A¦A«·s½sĶ¡A³Ì«á°õ¦æ¡G</para>
<informalexample>
<screen>&prompt.user; <userinput>./a.out</userinput>
@@ -656,27 +612,21 @@
</screen>
</informalexample>
- <para>If you are using any of the mathematical functions,
- <emphasis>always</emphasis> include
- <filename>math.h</filename> and remember to link in the
- math library.</para>
+ <para>¦pªG¦³¥Î¨ì¼Æ¾Ç¨ç¦¡¡A<emphasis>½Ð½T©w</emphasis>n¦³ include <filename>math.h</filename> ³oÀÉ¡A
+ ¦Ó¥B°O±on©M¼Æ¾Ç¨ç¦¡®w§@³sµ²¡C</para>
</answer>
</qandaentry>
<qandaentry>
<question>
- <para>I compiled a file called
- <filename>foobar.c</filename> and I cannot find an
- executable called <filename>foobar</filename>. Where has
- it gone?</para>
+ <para>¤w¸g½sĶ¦n <filename>foobar.c</filename>¡A
+ ¦ý¬O½sĶ«á§ä¤£¨ì <filename>foobar</filename> °õ¦æÀÉ¡C ¸Ó¥hþÃä§ä©O¡H</para>
</question>
<answer>
- <para>Remember, <command>cc</command> will call the
- executable <filename>a.out</filename> unless you tell it
- differently. Use the
- <option>-o <replaceable>filename</replaceable></option>
- option:</para>
+ <para>°O±o¡A°£«D¦³«ü©w½sĶµ²ªGªº°õ¦æÀÉÀɦW¡A§_«h¹w³]ªº°õ¦æÀÉÀɦW¬O a.out¡C
+ ¥Î <option>-o <replaceable>filename</replaceable></option> °Ñ¼Æ¡A
+ ´N¥i¥H¹F¨ì©Ò·Qnªºµ²ªG¡A¤ñ¦p¡G</para>
<informalexample>
<screen>&prompt.user; <userinput>cc -o foobar foobar.c</userinput>
@@ -687,108 +637,88 @@
<qandaentry>
<question>
- <para>OK, I have an executable called
- <filename>foobar</filename>, I can see it when I run
- <command>ls</command>, but when I type in
- <command>foobar</command> at the command prompt it tells
- me there is no such file. Why can it not find
- it?</para>
+ <para>¦n¡A¦³Ó½sĶ¦nªºµ{¦¡¥s°µ <filename>foobar</filename>¡A
+ ¥Î <command>ls</command> «ü¥O®É¥i¥H¬Ý¨ì¡A
+ ¦ý°õ¦æ®É¡A°T®§«o»¡«o¨S¦³³oÀɮסC¬°¤°»ò¡H</para>
</question>
<answer>
- <para>Unlike &ms-dos;, &unix; does not
- look in the current directory when it is trying to find
- out which executable you want it to run, unless you tell
- it to. Either type <command>./foobar</command>, which
- means <quote>run the file called
- <filename>foobar</filename> in the current
- directory</quote>, or change your <envar>PATH</envar>
- environment
- variable so that it looks something like</para>
+ <para>»P &ms-dos; ¤£¦Pªº¬O¡A°£«D¦³«ü©w°õ¦æÀɪº¸ô®|¡A
+ §_«h &unix; ¨t²Î¨Ã¤£·|¦b¥Ø«eªº¥Ø¿ý¤U´M§ä§A·Q°õ¦æªºÀɮסC
+ ¦b«ü¥O¦C¤U¥´ <command>./foobar</command> ¥Nªí
+ <quote>°õ¦æ¦b³oӥؿý©³¤U¦W¬° <filename>foobar</filename> ªºµ{¦¡</quote>¡A
+ ©ÎªÌ¤]¥i¥H§ó§ï <envar>PATH</envar> Àô¹ÒÅܼƳ]©w¦p¤U¡A¥H¹F¦¨Ãþ¦ü®ÄªG¡G</para>
<informalexample>
<screen>bin:/usr/bin:/usr/local/bin:.
</screen>
</informalexample>
- <para>The dot at the end means <quote>look in the current
- directory if it is not in any of the
- others</quote>.</para>
+ <para>¤W¤@¦æ³Ì«áªº "." ¥Nªí<quote>¦pªG¦b«e±¼gªº¨ä¥L¥Ø¿ý§ä¤£¨ì¡A´N§ä¥Ø«eªº¥Ø¿ý</quote>¡C</para>
</answer>
</qandaentry>
<qandaentry>
<question>
- <para>I called my executable <filename>test</filename>,
- but nothing happens when I run it. What is going
- on?</para>
+ <para>¸ÕµÛ°õ¦æ <filename>test</filename> °õ¦æÀÉ¡A
+ ¦ý¬O«o¨S¦³¥ô¦ó¨Æµo¥Í¡A¨ì©³¬Oþ¸Ì¥X¿ù¤F¡H</para>
</question>
<answer>
- <para>Most &unix; systems have a program called
- <command>test</command> in <filename>/usr/bin</filename>
- and the shell is picking that one up before it gets to
- checking the current directory. Either type:</para>
+ <para>¤j¦h¼Æªº &unix; ¨t²Î³£·|¦b¸ô®| <filename>/usr/bin</filename> Â\©ñ°õ¦æÀÉ¡C
+ °£«D¦³«ü©w¨Ï¥Î¦b¥Ø«e¥Ø¿ý¤ºªº <filename>test</filename>¡A§_«h shell ·|Àu¥ý¿ï¾Ü¦ì¦b
+ <filename>/usr/bin</filename> ªº <filename>test</filename>¡A
+ n«ü©wÀɦWªº¸Ü¡A§@ªkÃþ¦ü¡G</para>
<informalexample>
<screen>&prompt.user; <userinput>./test</userinput>
</screen>
</informalexample>
- <para>or choose a better name for your program!</para>
+ <para>¬°¤FÁקK¤Wz§xÂZ¡A½Ð¬°§Aªºµ{¦¡¨ú§ó¦nªº¦WºÙ§a¡I</para>
</answer>
</qandaentry>
<qandaentry>
<question>
- <para>I compiled my program and it seemed to run all right
- at first, then there was an error and it said something
- about <errorname>core dumped</errorname>. What does that
- mean?</para>
+ <para>·í°õ¦æ§Ú¼gªºµ{¦¡®Éè¶}©l¥¿±`¡A
+ ±µ¤U¨Ó«o¥X²{ <errorname>core dumped</errorname> ¿ù»~°T®§¡C³o¿ù»~°T®§¨ì©³¥Nªí¤°»ò¡H</para>
</question>
<answer>
- <para>The name <firstterm>core dump</firstterm> dates back
- to the very early days of &unix;, when the machines used
- core memory for storing data. Basically, if the program
- failed under certain conditions, the system would write
- the contents of core memory to disk in a file called
- <filename>core</filename>, which the programmer could
- then pore over to find out what went wrong.</para>
+ <para>Ãö©ó <firstterm>core dumped</firstterm> ³oÓ¦WºÙªº¥Ñ¨Ó¡A
+ ¥i¥H°l·¹¨ì¦´Áªº &unix; ¨t²Î¶}©l¨Ï¥Î core memory ¹ï¸ê®Æ±Æ§Ç®É¡C
+ °ò¥»¤W·íµ{¦¡¦b«Ü¦h±¡ªp¤Uµo¥Í¿ù»~«á¡A
+ §@·~¨t²Î·|§â core memory ¤¤ªº¸ê°T¼g¤J <filename>core</filename> ³oÀɮפ¤¡A
+ ¥H«KÅý programmer ª¾¹Dµ{¦¡¨ì©³¬O¬°¦ó¥X¿ù¡C</para>
</answer>
</qandaentry>
<qandaentry>
<question>
- <para>Fascinating stuff, but what I am supposed to do
- now?</para>
+ <para>¯u¬O¤Ó¯«©_¤F¡Iµ{¦¡©~µMµo¥Í <errorname>core dumped</errorname> ¤F¡A¸Ó«ç»ò¿ì¡H</para>
</question>
<answer>
- <para>Use <command>gdb</command> to analyze the core (see
- <xref linkend="debugging">).</para>
+ <para>½Ð¥Î <command>gdb</command> ¨Ó¤ÀªR core µ²ªG(¸Ô±¡½Ð°Ñ¦Ò <xref linkend="debugging">)¡C</para>
</answer>
</qandaentry>
<qandaentry>
<question>
- <para>When my program dumped core, it said something about
- a <errorname>segmentation fault</errorname>. What is
- that?</para>
+ <para>·íµ{¦¡¤w¸g§â core memory ¸ê®Æ dump ¥X¨Ó«á¡A
+ ¦P®É¤]¥X²{¥t¤@Ó¿ù»~ <errorname>segmentation fault</errorname> ³o·N«ä¬O¡H</para>
</question>
<answer>
- <para>This basically means that your program tried to
- perform some sort of illegal operation on memory; &unix;
- is designed to protect the operating system and other
- programs from rogue programs.</para>
+ <para>°ò¥»¤W¡A³oÓ¿ù»~ªí¥Ü§Aªºµ{¦¡¦b°O¾ÐÅ餤¸ÕµÛ°µ¤@ÓÄY«ªº«Dªk¹B§@(illegal operation)¡A
+ &unix; ´N¬O³Q³]p¨Ó«OÅ@¾ãÓ§@·~¨t²Î§K©ó³Q´c½èªºµ{¦¡¯}Ãa¡A©Ò¥H¤~·|§i¶D§A³oÓ°T®§¡C</para>
- <para>Common causes for this are:</para>
+ <para>³Ì±`³y¦¨<quote>segmentation fault</quote>ªºì¦]³q±`¬°¡G</para>
<itemizedlist>
<listitem>
- <para>Trying to write to a <symbol>NULL</symbol>
- pointer, eg</para>
+ <para>¸ÕµÛ¹ï¤@Ó <symbol>NULL</symbol> ªº«ü¼Ð(pointer)§@¼g¤Jªº°Ê§@¡A¦p</para>
<programlisting>char *foo = NULL;
strcpy(foo, "bang!");
@@ -796,25 +726,21 @@
</listitem>
<listitem>
- <para>Using a pointer that has not been initialized,
- eg</para>
+ <para>¨Ï¥Î¤@Ó©|¥¼ªì©l¤Æ(initialized)ªº«ü¼Ð¡A¦p¡G</para>
<programlisting>char *foo;
strcpy(foo, "bang!");
</programlisting>
- <para>The pointer will have some random value that,
- with luck, will point into an area of memory that
- is not available to your program and the kernel will
- kill your program before it can do any damage. If
- you are unlucky, it will point somewhere inside your
- own program and corrupt one of your data structures,
- causing the program to fail mysteriously.</para>
+ <para>©|¥¼ªì©l¤Æªº«ü¼Ðªºªì©lȱN·|¬OÀH¾÷ªº¡A¦pªG§A°÷©¯¹Bªº¸Ü¡A
+ ³oÓ«ü¼Ðªºªì©lÈ·|«ü¦V kernel ¤w¸g¥Î¨ìªº°O¾ÐÅé¦ì¸m¡A
+ kernel ·|µ²§ô±¼³oÓµ{¦¡¥H½T«O¨t²Î¹B§@¥¿±`¡C¦pªG§A¤£°÷©¯¹B¡A
+ ªì©l«ü¨ìªº°O¾ÐÅé¦ì¸m¬O§Aµ{¦¡¥²¶·n¥Î¨ìªº¸ê®Æµ²ºc(data structures)ªº¦ì¸m¡A
+ ·í³oÓ±¡§Îµo¥Í®Éµ{¦¡±N·|·íªº¤£ª¾¨ä©Ò¥HµM¡C</para>
</listitem>
<listitem>
- <para>Trying to access past the end of an array,
- eg</para>
+ <para>¸ÕµÛ¼g¤J¶W¹L°}¦C(array)¤¸¯ÀӼơA¦p¡G</para>
<programlisting>int bar[20];
bar[27] = 6;
@@ -822,8 +748,7 @@
</listitem>
<listitem>
- <para>Trying to store something in read-only memory,
- eg</para>
+ <para>¸ÕµÛŪ¼g¦b°ßŪ°O¾ÐÅé(read-only memory)¤¤ªº¸ê®Æ¡A¦p¡G</para>
<programlisting>char *foo = "My string";
strcpy(foo, "bang!");
--- zh_TW.Big5.20060805_1.diff ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-doc
mailing list