# SOME DESCRIPTIVE TITLE # Copyright (C) YEAR Free Software Foundation, Inc. # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "POT-Creation-Date: 2015-01-23 22:24+0900\n" "PO-Revision-Date: 2015-01-25 07:18+0900\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #. type: TH #: build/C/man7/feature_test_macros.7:25 #, no-wrap msgid "FEATURE_TEST_MACROS" msgstr "FEATURE_TEST_MACROS" #. type: TH #: build/C/man7/feature_test_macros.7:25 #, no-wrap msgid "2014-03-20" msgstr "2014-03-20" #. type: TH #: build/C/man7/feature_test_macros.7:25 build/C/man1/intro.1:28 #: build/C/man2/intro.2:29 build/C/man3/intro.3:26 build/C/man4/intro.4:26 #: build/C/man5/intro.5:27 build/C/man6/intro.6:26 build/C/man7/intro.7:28 #: build/C/man8/intro.8:29 build/C/man7/libc.7:26 build/C/man7/mailaddr.7:27 #: build/C/man7/man-pages.7:30 build/C/man7/man.7:34 build/C/man7/mdoc.7:44 #: build/C/man7/operator.7:40 build/C/man5/proc.5:55 #: build/C/man7/standards.7:24 build/C/man7/suffixes.7:39 #: build/C/man3/undocumented.3:29 build/C/man2/unimplemented.2:26 #: build/C/man7/units.7:26 #, no-wrap msgid "Linux" msgstr "Linux" #. type: TH #: build/C/man7/feature_test_macros.7:25 build/C/man2/intro.2:29 #: build/C/man3/intro.3:26 build/C/man4/intro.4:26 build/C/man5/intro.5:27 #: build/C/man6/intro.6:26 build/C/man7/intro.7:28 build/C/man8/intro.8:29 #: build/C/man7/libc.7:26 build/C/man7/man-pages.7:30 build/C/man7/man.7:34 #: build/C/man7/operator.7:40 build/C/man7/posixoptions.7:24 #: build/C/man5/proc.5:55 build/C/man7/standards.7:24 #: build/C/man7/suffixes.7:39 build/C/man3/undocumented.3:29 #: build/C/man2/unimplemented.2:26 build/C/man7/units.7:26 #, no-wrap msgid "Linux Programmer's Manual" msgstr "Linux Programmer's Manual" #. type: Sh #: build/C/man7/feature_test_macros.7:26 build/C/man1/intro.1:29 #: build/C/man2/intro.2:30 build/C/man3/intro.3:27 build/C/man4/intro.4:27 #: build/C/man5/intro.5:28 build/C/man6/intro.6:27 build/C/man7/intro.7:29 #: build/C/man8/intro.8:30 build/C/man7/libc.7:27 build/C/man7/mailaddr.7:29 #: build/C/man7/man-pages.7:31 build/C/man7/man.7:35 build/C/man7/mdoc.7:45 #: build/C/man7/operator.7:41 build/C/man7/posixoptions.7:25 #: build/C/man5/proc.5:56 build/C/man7/standards.7:25 #: build/C/man7/suffixes.7:40 build/C/man3/undocumented.3:30 #: build/C/man2/unimplemented.2:27 build/C/man7/units.7:27 #: build/C/man7/mdoc.samples.7:46 #, no-wrap msgid "NAME" msgstr "名前" #. type: Plain text #: build/C/man7/feature_test_macros.7:28 msgid "feature_test_macros - feature test macros" msgstr "feature_test_macros - 機能検査マクロ" #. type: Sh #: build/C/man7/feature_test_macros.7:28 build/C/man7/man-pages.7:33 #: build/C/man7/man.7:37 build/C/man7/mdoc.7:50 build/C/man3/undocumented.3:32 #: build/C/man2/unimplemented.2:31 build/C/man7/mdoc.samples.7:52 #, no-wrap msgid "SYNOPSIS" msgstr "書式" #. type: Plain text #: build/C/man7/feature_test_macros.7:31 #, no-wrap msgid "B<#include Efeatures.hE>\n" msgstr "B<#include Efeatures.hE>\n" #. type: Sh #: build/C/man7/feature_test_macros.7:32 build/C/man1/intro.1:31 #: build/C/man2/intro.2:32 build/C/man3/intro.3:29 build/C/man4/intro.4:29 #: build/C/man5/intro.5:30 build/C/man6/intro.6:29 build/C/man7/intro.7:31 #: build/C/man8/intro.8:32 build/C/man7/libc.7:29 build/C/man7/mailaddr.7:31 #: build/C/man7/man-pages.7:37 build/C/man7/man.7:49 build/C/man7/mdoc.7:54 #: build/C/man7/operator.7:43 build/C/man7/posixoptions.7:27 #: build/C/man5/proc.5:58 build/C/man7/standards.7:27 #: build/C/man7/suffixes.7:42 build/C/man3/undocumented.3:34 #: build/C/man2/unimplemented.2:33 build/C/man7/units.7:29 #: build/C/man7/mdoc.samples.7:54 #, no-wrap msgid "DESCRIPTION" msgstr "説明" #. type: Plain text #: build/C/man7/feature_test_macros.7:35 msgid "Feature test macros allow the programmer to control the definitions that are exposed by system header files when a program is compiled." msgstr "機能検査マクロ (feature test macro) により、プログラマは プログラムがコンパイルされる際にシステムのヘッダファイルにより 公開される定義を制御することができる。" #. type: Plain text #: build/C/man7/feature_test_macros.7:43 msgid "B In order to be effective, a feature test macro I. This can be done either in the compilation command (I) or by defining the macro within the source code before including any headers." msgstr "B<注意:> 機能検査マクロを機能させるには、機能検査マクロの定義を 「どのヘッダファイルのインクルードよりも前で」行わなければならない。 これを実現するには、 コンパイルコマンドで指定する方法 (I) と、ソースコード内で必要なマクロの定義を どのヘッダのインクルードよりも前で行う方法がある。" #. type: Plain text #: build/C/man7/feature_test_macros.7:52 msgid "Some feature test macros are useful for creating portable applications, by preventing nonstandard definitions from being exposed. Other macros can be used to expose nonstandard definitions that are not exposed by default. The precise effects of each of the feature test macros described below can be ascertained by inspecting the Ifeatures.hE> header file." msgstr "機能検査マクロを使うと、非標準の定義が公開されないようにでき、 移植性のあるアプリケーションを作成するのに役立つ。 他のマクロを使うと、デフォルトでは公開されない非標準の定義を 公開することができる。 以下で説明する機能検査マクロのそれぞれの正確な影響を確認するには、 ヘッダファイル Ifeatures.hE> を調べればよい。" #. type: SS #: build/C/man7/feature_test_macros.7:52 #, no-wrap msgid "Specification of feature test macro requirements in manual pages" msgstr "マニュアルページでの機能検査マクロの要件の規定" #. type: Plain text #: build/C/man7/feature_test_macros.7:58 msgid "When a function requires that a feature test macro is defined, the manual page SYNOPSIS typically includes a note of the following form (this example from the B(2) manual page):" msgstr "関数が機能検査マクロの定義を必要とする場合、 マニュアルページの書式 (SYNOPSIS) の節に 以下の形式の注釈を入れる (以下の例は B(2) のマニュアルページからの引用である)。" #. type: Plain text #: build/C/man7/feature_test_macros.7:61 msgid "B<#include Eunistd.hE>" msgstr "B<#include Eunistd.hE>" #. type: Plain text #: build/C/man7/feature_test_macros.7:63 msgid "BIB<);>" msgstr "BIB<);>" #. type: Plain text #: build/C/man7/feature_test_macros.7:68 #, no-wrap msgid "" "Feature Test Macro Requirements for glibc (see\n" "B(7)):\n" msgstr "" "glibc 向けの機能検査マクロの要件\n" "(B(7)\n" "参照):\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:73 msgid "B(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E\\ 500)" msgstr "B(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E\\ 500)" #. type: Plain text #: build/C/man7/feature_test_macros.7:84 msgid "The B<||> means that in order to obtain the declaration of B(2) from Iunistd.hE>, I of the following macro definitions must be made before including any header files:" msgstr "B<||> は、 B(2) の定義を Iunistd.hE> から得るには、以下のマクロの定義のいずれかを、どのヘッダファイルの インクルードよりも前で行わなければならないことを意味する。" #. type: Plain text #: build/C/man7/feature_test_macros.7:89 #, no-wrap msgid "" "#define _BSD_SOURCE\n" "#define _XOPEN_SOURCE /* or any value E 500 */\n" msgstr "" "#define _BSD_SOURCE\n" "#define _XOPEN_SOURCE /* 500 未満の任意の値 */\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:94 msgid "Alternatively, equivalent definitions can be included in the compilation command:" msgstr "別の方法としては、等価な定義をコンパイル用のコマンドで 指定することもできる。" #. type: Plain text #: build/C/man7/feature_test_macros.7:99 #, no-wrap msgid "" "cc -D_BSD_SOURCE\n" "cc -D_XOPEN_SOURCE # Or any value E 500\n" msgstr "" "cc -D_BSD_SOURCE\n" "cc -D_XOPEN_SOURCE # 500 未満の任意の値\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:107 msgid "Note that, as described below, B, so that it may not always be necessary to explicitly specify the feature test macro(s) shown in the SYNOPSIS." msgstr "後で述べるが、 B<「いくつかの機能検査マクロはデフォルトで定義される」> 点に注意すること。 このため、「書式」に記載された機能検査マクロを常に 明示的に指定する必要があるわけではない。" #. type: Plain text #: build/C/man7/feature_test_macros.7:111 msgid "In a few cases, manual pages use a shorthand for expressing the feature test macro requirements (this example from B(2)):" msgstr "あまり多くないが、マニュアルページによっては、 機能検査マクロの要件を以下のように簡単な表現で記載する場合がある。 (以下の例は B(2) のマニュアルページからの引用である)。" #. type: Plain text #: build/C/man7/feature_test_macros.7:116 #, no-wrap msgid "" "B<#define _GNU_SOURCE>\n" "B<#include Efcntl.hE>\n" msgstr "" "B<#define _GNU_SOURCE>\n" "B<#include Efcntl.hE>\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:118 #, no-wrap msgid "BIB<, off64_t *>IB<, size_t >IB<);>\n" msgstr "BIB<, off64_t *>IB<, size_t >IB<);>\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:124 msgid "This format is employed in cases where only a single feature test macro can be used to expose the function declaration, and that macro is not defined by default." msgstr "関数定義の公開に使える機能検査マクロが一つだけで、 デフォルトではそのマクロが定義されない場合に、 この形式の表現を利用する。" #. type: SS #: build/C/man7/feature_test_macros.7:124 #, no-wrap msgid "Feature test macros understood by glibc" msgstr "glibc が解釈する機能検査マクロ" #. The details in glibc 2.0 are simpler, but combining a #. a description of them with the details in later glibc versions #. would make for a complicated description. #. type: Plain text #: build/C/man7/feature_test_macros.7:132 msgid "The following paragraphs explain how feature test macros are handled in Linux glibc 2.I, I E 0." msgstr "以下では、Linux glibc 2.I (I E 0) において、 機能検査マクロがどのように扱われるかを説明する。" #. type: Plain text #: build/C/man7/feature_test_macros.7:134 msgid "Linux glibc understands the following feature test macros:" msgstr "Linux/glibc は以下の機能検査マクロを解釈する:" #. type: TP #: build/C/man7/feature_test_macros.7:134 #, no-wrap msgid "B<__STRICT_ANSI__>" msgstr "B<__STRICT_ANSI__>" #. type: Plain text #: build/C/man7/feature_test_macros.7:144 msgid "ISO Standard C. This macro is implicitly defined by B(1) when invoked with, for example, the I<-std=c99> or I<-ansi> flag." msgstr "ISO 標準の C。 B(1) を I<-std=c99> や I<-ansi> などのフラグを付けて起動した場合、 このマクロは暗黙のうちに定義される。" #. type: TP #: build/C/man7/feature_test_macros.7:144 #, no-wrap msgid "B<_POSIX_C_SOURCE>" msgstr "B<_POSIX_C_SOURCE>" #. type: Plain text #: build/C/man7/feature_test_macros.7:147 #: build/C/man7/feature_test_macros.7:180 msgid "Defining this macro causes header files to expose definitions as follows:" msgstr "このマクロを定義すると、ヘッダファイルで以下の定義が公開される。" #. type: IP #: build/C/man7/feature_test_macros.7:148 #: build/C/man7/feature_test_macros.7:151 #: build/C/man7/feature_test_macros.7:154 #: build/C/man7/feature_test_macros.7:158 #: build/C/man7/feature_test_macros.7:161 #: build/C/man7/feature_test_macros.7:167 #: build/C/man7/feature_test_macros.7:181 #: build/C/man7/feature_test_macros.7:184 #: build/C/man7/feature_test_macros.7:187 #: build/C/man7/feature_test_macros.7:191 #: build/C/man7/feature_test_macros.7:210 #: build/C/man7/feature_test_macros.7:213 #: build/C/man7/feature_test_macros.7:543 #: build/C/man7/feature_test_macros.7:548 #: build/C/man7/feature_test_macros.7:554 #: build/C/man7/feature_test_macros.7:559 #: build/C/man7/feature_test_macros.7:565 #: build/C/man7/feature_test_macros.7:570 build/C/man5/proc.5:3345 #: build/C/man5/proc.5:3347 build/C/man5/proc.5:3349 build/C/man5/proc.5:3352 #, no-wrap msgid "\\(bu" msgstr "\\(bu" #. type: Plain text #: build/C/man7/feature_test_macros.7:151 msgid "The value 1 exposes definitions conforming to POSIX.1-1990 and ISO C (1990)." msgstr "値が 1 の場合、POSIX.1-1990 と ISO C (1990) に準拠する定義が公開される。" #. type: Plain text #: build/C/man7/feature_test_macros.7:154 msgid "The value 2 or greater additionally exposes definitions for POSIX.2-1992." msgstr "値が 2 以上の場合、 POSIX.2-1992 関連の定義も追加で公開される。" #. 199506L functionality is available only since glibc 2.1 #. type: Plain text #: build/C/man7/feature_test_macros.7:158 msgid "The value 199309L or greater additionally exposes definitions for POSIX.1b (real-time extensions)." msgstr "値が 199309 以上の場合、 POSIX.1b (リアルタイム拡張) 関連の定義が追加で公開される。" #. type: Plain text #: build/C/man7/feature_test_macros.7:161 msgid "The value 199506L or greater additionally exposes definitions for POSIX.1c (threads)." msgstr "値が 199506 以上の場合、 POSIX.1c (スレッド) 関連の定義が追加で公開される。" #. type: Plain text #: build/C/man7/feature_test_macros.7:167 msgid "(Since glibc 2.3.3) The value 200112L or greater additionally exposes definitions corresponding to the POSIX.1-2001 base specification (excluding the XSI extension) and also causes C95 (since glibc 2.12) and C99 (since glibc 2.10) features to be exposed." msgstr "(glibc 2.3.3 以降) 値が 200112L 以上の場合、 (XSI 拡張を除く) POSIX.1-2001 基本仕様に対応する定義も追加で公開され、また C95 (glibc 2.12 以降) と C99 (glibc 2.10 以降) の機能も公開される。" #. type: Plain text #: build/C/man7/feature_test_macros.7:171 msgid "(Since glibc 2.10) The value 200809L or greater additionally exposes definitions corresponding to the POSIX.1-2008 base specification (excluding the XSI extension)." msgstr "(glibc 2.10 以降) 値が 200809L 以上の場合、 (XSI 拡張を除く) POSIX.1-2008 基本仕様に対応する定義が追加で公開される。" #. type: TP #: build/C/man7/feature_test_macros.7:172 #, no-wrap msgid "B<_POSIX_SOURCE>" msgstr "B<_POSIX_SOURCE>" #. type: Plain text #: build/C/man7/feature_test_macros.7:177 msgid "Defining this obsolete macro with any value is equivalent to defining B<_POSIX_C_SOURCE> with the value 1." msgstr "このマクロは廃止予定である。 このマクロが定義されると、値に関わらず、 B<_POSIX_C_SOURCE> を値 1 で定義するのと等価となる。" #. type: TP #: build/C/man7/feature_test_macros.7:177 #, no-wrap msgid "B<_XOPEN_SOURCE>" msgstr "B<_XOPEN_SOURCE>" #. type: Plain text #: build/C/man7/feature_test_macros.7:184 msgid "Defining with any value exposes definitions conforming to POSIX.1, POSIX.2, and XPG4." msgstr "どんな値でも、ヘッダファイルで POSIX.1, POSIX.2, XPG4 に準拠する定義が公開される。" #. type: Plain text #: build/C/man7/feature_test_macros.7:187 msgid "The value 500 or greater additionally exposes definitions for SUSv2 (UNIX 98)." msgstr "値が 500 以上の場合、 SUSv2 (UNIX 98) 関連の定義が追加で公開される。" #. type: Plain text #: build/C/man7/feature_test_macros.7:191 msgid "(Since glibc 2.2) The value 600 or greater additionally exposes definitions for SUSv3 (UNIX 03; i.e., the POSIX.1-2001 base specification plus the XSI extension) and C99 definitions." msgstr "(glibc 2.2 以降) 値が 600 以上の場合、 SUSv3 (UNIX 03; POSIX.1-2001 基本仕様 + XSI 拡張と同じ) 関連の定義と C99 での定義が追加で公開される。" #. type: Plain text #: build/C/man7/feature_test_macros.7:195 msgid "(Since glibc 2.10) The value 700 or greater additionally exposes definitions for SUSv4 (i.e., the POSIX.1-2008 base specification plus the XSI extension)." msgstr "(glibc 2.10 以降) 値が 700 以上の場合、 SUSv4 (POSIX.1-2008 基本仕様 + XSI 拡張と同じ) 関連の定義が追加で公開される。" #. type: Plain text #: build/C/man7/feature_test_macros.7:209 msgid "If B<__STRICT_ANSI__> is not defined, or B<_XOPEN_SOURCE> is defined with a value greater than or equal to 500 I neither B<_POSIX_SOURCE> not B<_POSIX_C_SOURCE> is explicitly defined, then the following macros are implicitly defined:" msgstr "B<__STRICT_ANSI__> が定義されていない場合、または B<_XOPEN_SOURCE> が 500 以上の値で定義されていて、 B<_POSIX_SOURCE> も B<_POSIX_C_SOURCE> も明示的に定義されていない場合、以下のマクロが暗黙のうちに定義される。" #. type: Plain text #: build/C/man7/feature_test_macros.7:213 msgid "B<_POSIX_SOURCE> is defined with the value 1." msgstr "B<_POSIX_SOURCE> が値 1 で定義される。" #. type: Plain text #: build/C/man7/feature_test_macros.7:217 msgid "B<_POSIX_C_SOURCE> is defined, according to the value of B<_XOPEN_SOURCE>:" msgstr "B<_POSIX_C_SOURCE> は、B<_XOPEN_SOURCE> の値に基づいて定義される。" #. type: TP #: build/C/man7/feature_test_macros.7:218 #, no-wrap msgid "B<_XOPEN_SOURCE> E 500" msgstr "B<_XOPEN_SOURCE> E 500" #. type: Plain text #: build/C/man7/feature_test_macros.7:222 msgid "B<_POSIX_C_SOURCE> is defined with the value 2." msgstr "B<_POSIX_C_SOURCE> が値 2 で定義される。" #. type: TP #: build/C/man7/feature_test_macros.7:222 #, no-wrap msgid "500 E= B<_XOPEN_SOURCE> E 600" msgstr "500 E= B<_XOPEN_SOURCE> E 600" #. type: Plain text #: build/C/man7/feature_test_macros.7:226 msgid "B<_POSIX_C_SOURCE> is defined with the value 199506L." msgstr "B<_POSIX_C_SOURCE> が値 199506L で定義される。" #. type: TP #: build/C/man7/feature_test_macros.7:226 #, no-wrap msgid "600 E= B<_XOPEN_SOURCE> E 700" msgstr "600 E= B<_XOPEN_SOURCE> E 700" #. type: Plain text #: build/C/man7/feature_test_macros.7:230 msgid "B<_POSIX_C_SOURCE> is defined with the value 200112L." msgstr "B<_POSIX_C_SOURCE> が値 200112L で定義される。" #. type: TP #: build/C/man7/feature_test_macros.7:230 #, no-wrap msgid "700 E= B<_XOPEN_SOURCE> (since glibc 2.10)" msgstr "700 E= B<_XOPEN_SOURCE> (glibc 2.10 以降)" #. type: Plain text #: build/C/man7/feature_test_macros.7:234 msgid "B<_POSIX_C_SOURCE> is defined with the value 200809L." msgstr "B<_POSIX_C_SOURCE> が値 200809L で定義される。" #. type: TP #: build/C/man7/feature_test_macros.7:236 #, no-wrap msgid "B<_XOPEN_SOURCE_EXTENDED>" msgstr "B<_XOPEN_SOURCE_EXTENDED>" #. type: Plain text #: build/C/man7/feature_test_macros.7:245 msgid "If this macro is defined, and B<_XOPEN_SOURCE> is defined, then expose definitions corresponding to the XPG4v2 (SUSv1) UNIX extensions (UNIX 95). This macro is also implicitly defined if B<_XOPEN_SOURCE> is defined with a value of 500 or more." msgstr "このマクロが定義され、さらに B<_XOPEN_SOURCE> が定義されていると、XPG4v2 (SUSv1) UNIX 拡張 (UNIX 95) に対応する定義が公開される。 B<_XOPEN_SOURCE> が 500 以上の値で定義された場合、このマクロは暗黙のうちに定義される。" #. type: TP #: build/C/man7/feature_test_macros.7:245 #, no-wrap msgid "B<_ISOC99_SOURCE> (since glibc 2.1.3)" msgstr "B<_ISOC99_SOURCE> (glibc 2.1.3 以降)" #. type: Plain text #: build/C/man7/feature_test_macros.7:248 msgid "Exposes declarations consistent with the ISO C99 standard." msgstr "ISO C99 標準に準拠した宣言を公開する。" #. type: Plain text #: build/C/man7/feature_test_macros.7:254 msgid "Earlier glibc 2.1.x versions recognized an equivalent macro named B<_ISOC9X_SOURCE> (because the C99 standard had not then been finalized). Although the use of this macro is obsolete, glibc continues to recognize it for backward compatibility." msgstr "初期のバージョン 2.1.x の glibc では、これと等価な B<_ISOC9X_SOURCE> という名前のマクロが使われていた (なぜなら、C99 標準はまだ確定していなかったからである)。 B<_ISOC9X_SOURCE> マクロの使用は廃止されているが、 glibc は過去との互換性のため今でもこのマクロを認識する。" #. type: Plain text #: build/C/man7/feature_test_macros.7:259 msgid "Defining B<_ISOC99_SOURCE> also exposes ISO C (1990) Amendment 1 (\"C95\") definitions. (The primary change in C95 was support for international character sets.)" msgstr "B<_ISOC99_SOURCE> を定義すると、 ISO C (1990) Amendment 1 (\"C95\") の定義も公開される (C95 での主要な変更点は国際化文字集合のサポートであった)。" #. type: TP #: build/C/man7/feature_test_macros.7:259 #, no-wrap msgid "B<_ISOC11_SOURCE> (since glibc 2.16)" msgstr "B<_ISOC11_SOURCE> (glibc 2.16 以降)" #. type: Plain text #: build/C/man7/feature_test_macros.7:264 msgid "Exposes declarations consistent with the ISO C11 standard. Defining this macro also enables C99 and C95 features (like B<_ISOC99_SOURCE>)." msgstr "ISO C11 標準に準拠した宣言を公開する。 このマクロを定義すると (B<_ISOC99_SOURCE> 同様) C99 と C95 の機能も有効になる。" #. type: TP #: build/C/man7/feature_test_macros.7:264 #, no-wrap msgid "B<_LARGEFILE64_SOURCE>" msgstr "B<_LARGEFILE64_SOURCE>" #. type: Plain text #: build/C/man7/feature_test_macros.7:285 msgid "Expose definitions for the alternative API specified by the LFS (Large File Summit) as a \"transitional extension\" to the Single UNIX Specification. (See E<.UR http:\\:/\\:/opengroup.org\\:/platform\\:/lfs.html> E<.UE .)> The alternative API consists of a set of new objects (i.e., functions and types) whose names are suffixed with \"64\" (e.g., I versus I, B() versus B(), etc.). New programs should not employ this macro; instead I<_FILE_OFFSET_BITS=64> should be employed." msgstr "LFS (Large File Summit) により \"暫定拡張 (transitional extension)\" Single UNIX Specification として規定された代替 API (alternative API) に関する定義を公開する (E<.UR http:\\:/\\:/opengroup.org\\:/platform\\:/lfs.html> E<.UE> 参照)。 代替 API は新規オブジェクト (関数と型) の集合で構成され、 その名前は \"64\" で終わる (例えば、 I に対応するのは I、 B() に対応するのは B() である)。 新しいプログラムではこのマクロを利用しないこと。 代わりに I<_FILE_OFFSET_BITS=64> を利用すること。" #. type: TP #: build/C/man7/feature_test_macros.7:285 #, no-wrap msgid "B<_LARGEFILE_SOURCE>" msgstr "B<_LARGEFILE_SOURCE>" #. type: Plain text #: build/C/man7/feature_test_macros.7:307 msgid "This macro was historically used to expose certain functions (specifically B(3) and B(3)) that address limitations of earlier APIs (B(3) and B(3)) that use I for file offsets. This macro is implicitly defined if B<_XOPEN_SOURCE> is defined with a value greater than or equal to 500. New programs should not employ this macro; defining B<_XOPEN_SOURCE> as just described or defining B<_FILE_OFFSET_BITS> with the value 64 is the preferred mechanism to achieve the same result." msgstr "このマクロは、歴史的には、ファイルオフセットで I を使う以前の API (B(3) や B(3)) の制限を解決する関数 (特に B(3) と B(3)) を公開するのに使われていた。 このマクロは B<_XOPEN_SOURCE> が 500 以上の値で定義されている場合に暗黙のうちに定義される。 新しいプログラムでぇあこのマクロは使用すべきではない。 B<_XOPEN_SOURCE> をただ定義するか、 B<_FILE_OFFSET_BITS> を値 64 で定義するのが、同じ結果を得るための推奨される方法である。" #. type: TP #: build/C/man7/feature_test_macros.7:307 #, no-wrap msgid "B<_FILE_OFFSET_BITS>" msgstr "B<_FILE_OFFSET_BITS>" #. type: Plain text #: build/C/man7/feature_test_macros.7:317 msgid "Defining this macro with the value 64 automatically converts references to 32-bit functions and data types related to file I/O and filesystem operations into references to their 64-bit counterparts. This is useful for performing I/O on large files (E 2 Gigabytes) on 32-bit systems. (Defining this macro permits correctly written programs to use large files with only a recompilation being required.)" msgstr "このマクロを値 64 で定義すると、ファイル I/O とファイルシステム操作に 関連する 32 ビット版の関数とデータタイプは自動的に 64 ビット版に 変換される。 これは、32 ビットシステムで大きなファイル (E 2 ギガバイト) の I/O を実行する際に役立つ (このマクロを定義すると、コンパイルし直すだけで大きなファイルを 扱えるプログラムを書くことができる)。" #. type: Plain text #: build/C/man7/feature_test_macros.7:320 msgid "64-bit systems naturally permit file sizes greater than 2 Gigabytes, and on those systems this macro has no effect." msgstr "64 ビットシステムは、もともと 2 ギガバイトより大きなファイルを 扱えるので、64 ビットシステムではこのマクロは効果を持たない。" #. type: TP #: build/C/man7/feature_test_macros.7:320 #, no-wrap msgid "B<_BSD_SOURCE> (deprecated since glibc 2.20)" msgstr "B<_BSD_SOURCE> (glibc 2.20 以降では非推奨)" #. type: Plain text #: build/C/man7/feature_test_macros.7:324 msgid "Defining this macro with any value causes header files to expose BSD-derived definitions." msgstr "このマクロを定義すると、値に関わらず、ヘッダファイルで BSD 由来の定義が公開される。" #. type: Plain text #: build/C/man7/feature_test_macros.7:339 msgid "In glibc versions up to and including 2.18, defining this macro also causes BSD definitions to be preferred in some situations where standards conflict, unless one or more of B<_SVID_SOURCE>, B<_POSIX_SOURCE>, B<_POSIX_C_SOURCE>, B<_XOPEN_SOURCE>, B<_XOPEN_SOURCE_EXTENDED>, or B<_GNU_SOURCE> is defined, in which case BSD definitions are disfavored. Since glibc 2.19, B<_BSD_SOURCE> no longer causes BSD definitions to be preferred in case of conflicts." msgstr "バージョン 2.18 以前の glibc では、このマクロを定義すると、相容れない標準が存在する状況において BSD 由来の定義を優先するようになる。 ただし、 B<_SVID_SOURCE>, B<_POSIX_SOURCE>, B<_POSIX_C_SOURCE>, B<_XOPEN_SOURCE>, B<_XOPEN_SOURCE_EXTENDED>, B<_GNU_SOURCE> が一つでも定義された場合には、BSD 由来の定義は優先されなくなる。 glibc 2.19 以降では、 B<_BSD_SOURCE> を定義しても相容れない標準があっても BSD 由来の定義が優先されることはもはやなくなった。" #. commit c941736c92fa3a319221f65f6755659b2a5e0a20 #. commit 498afc54dfee41d33ba519f496e96480badace8e #. commit acd7f096d79c181866d56d4aaf3b043e741f1e2c #. commit ade40b10ff5fa59a318cf55b9d8414b758e8df78 #. type: Plain text #: build/C/man7/feature_test_macros.7:362 msgid "Since glibc 2.20, this macro is deprecated. It now has the same effect as defining B<_DEFAULT_SOURCE>, but generates a compile-time warning (unless B<_DEFAULT_SOURCE> is also defined). Use B<_DEFAULT_SOURCE> instead. To allow code that requires B<_BSD_SOURCE> in glibc 2.19 and earlier and B<_DEFAULT_SOURCE> in glibc 2.20 and later to compile without warnings, define I B<_BSD_SOURCE> and B<_DEFAULT_SOURCE>." msgstr "glibc 2.20 以降では、このマクロは非推奨である。 このマクロは現在は B<_DEFAULT_SOURCE> を定義するのと同じ効果を持つが、 (B<_DEFAULT_SOURCE> が合わせて定義されていない場合には) コンパイル時の警告が出る。 代わりに B<_DEFAULT_SOURCE> を使用すること。 glibc 2.19 以前で B<_BSD_SOURCE> が必要で glibc 2.20 以降で B<_DEFAULT_SOURCE> を必要とするプログラムを警告を出さずにコンパイルするには、 B<_BSD_SOURCE> と B<_DEFAULT_SOURCE> のI<両方>を定義すること。" #. type: TP #: build/C/man7/feature_test_macros.7:362 #, no-wrap msgid "B<_SVID_SOURCE> (deprecated since glibc 2.20)" msgstr "B<_SVID_SOURCE> (glibc 2.20 以降では非推奨)" #. type: Plain text #: build/C/man7/feature_test_macros.7:368 msgid "Defining this macro with any value causes header files to expose System V-derived definitions. (SVID == System V Interface Definition; see B(7).)" msgstr "このマクロを定義すると (値に関わらず) ヘッダファイルで System V 由来の定義が公開される (SVID == System V Interface Definition; B(7) 参照)。" #. type: Plain text #: build/C/man7/feature_test_macros.7:371 msgid "Since glibc 2.20, this macro is deprecated in the same fashion as B<_BSD_SOURCE>." msgstr "glibc 2.20 以降、 B<_BSD_SOURCE> と同様にこのマクロは非推奨となっている。" #. type: TP #: build/C/man7/feature_test_macros.7:371 #, no-wrap msgid "B<_DEFAULT_SOURCE> (since glibc 2.19)" msgstr "B<_DEFAULT_SOURCE> (glibc 2.19 以降)" #. type: Plain text #: build/C/man7/feature_test_macros.7:383 msgid "This macro can be defined to ensure that the \"default\" definitions are provided even when the defaults would otherwise be disabled, as happens when individual macros are explicitly defined, or the compiler is invoked in one of its \"standard\" modes (e.g., I). Defining B<_DEFAULT_SOURCE> without defining other individual macros or invoking the compiler in one of its \"standard\" modes has no effect." msgstr "このマクロを使うと、「デフォルト」が無効になるような場合でも「デフォルト」の定義が提供されるようにすることができる。「デフォルト」が無効になるような状況は、個別のマクロが明示的に定義された場合や、コンパイラが「標準」モードのいずれか (例えば I) で起動された場合などである。他の個々のマクロが定義されず、コンパイラも「標準」モードのいずれかを指定して起動されていない場合は、 B<_DEFAULT_SOURCE> を定義しても何の効果もない。" #. type: Plain text #: build/C/man7/feature_test_macros.7:388 msgid "The \"default\" definitions comprise those required by POSIX.1-2008 as well as various definitions derived from BSD and System V. On glibc 2.19 and earlier, these defaults were approximately equivalent to explicitly defining the following:" msgstr "「デフォルト」定義は、 POSIX.1-2008 で必須となっている定義と、 BSD と System V 由来の種々の定義を公開する。 glibc 2.19 以前では、これらのデフォルトは以下を明示的に定義するのとほぼ等価である。" #. type: Plain text #: build/C/man7/feature_test_macros.7:390 #, no-wrap msgid " cc -D_BSD_SOURCE -D_SVID_SOURCE -D_POSIX_C_SOURCE=200809\n" msgstr " cc -D_BSD_SOURCE -D_SVID_SOURCE -D_POSIX_C_SOURCE=200809\n" #. type: TP #: build/C/man7/feature_test_macros.7:391 #, no-wrap msgid "B<_ATFILE_SOURCE> (since glibc 2.4)" msgstr "B<_ATFILE_SOURCE> (glibc 2.4 以降)" #. type: Plain text #: build/C/man7/feature_test_macros.7:400 msgid "Defining this macro with any value causes header files to expose declarations of a range of functions with the suffix \"at\"; see B(2). Since glibc 2.10, this macro is also implicitly defined if B<_POSIX_C_SOURCE> is defined with a value greater than or equal to 200809L." msgstr "このマクロを定義すると (値に関わらず) ヘッダファイルで 名前の末尾が \"at\" の各種の関数の定義が公開される。 B(2) 参照。 glibc 2.10 以降では、 B<_POSIX_C_SOURCE> が 200809L 以上の値で定義された場合には、 このマクロも暗黙のうちに定義される。" #. type: TP #: build/C/man7/feature_test_macros.7:400 #, no-wrap msgid "B<_GNU_SOURCE>" msgstr "B<_GNU_SOURCE>" #. type: Plain text #: build/C/man7/feature_test_macros.7:419 msgid "Defining this macro (with any value) implicitly defines B<_ATFILE_SOURCE>, B<_LARGEFILE64_SOURCE>, B<_ISOC99_SOURCE>, B<_XOPEN_SOURCE_EXTENDED>, B<_POSIX_SOURCE>, B<_POSIX_C_SOURCE> with the value 200809L (200112L in glibc versions before 2.10; 199506L in glibc versions before 2.5; 199309L in glibc versions before 2.1) and B<_XOPEN_SOURCE> with the value 700 (600 in glibc versions before 2.10; 500 in glibc versions before 2.2). In addition, various GNU-specific extensions are also exposed." msgstr "このマクロを定義すると (値に関わらず) 以下のマクロが暗黙のうちに定義される: B<_ATFILE_SOURCE>, B<_LARGEFILE64_SOURCE>, B<_ISOC99_SOURCE>, B<_XOPEN_SOURCE_EXTENDED>, B<_POSIX_SOURCE>, 値 200809L の B<_POSIX_C_SOURCE> (バージョン 2.10 より前の glibc では値は 200112L、 バージョン 2.5 より前の glibc では値は 199506L、 バージョン 2.1 より前の glibc では値は 199309L), 値 700 の B<_XOPEN_SOURCE> (バージョン 2.10 より前の glibc では値は 600、 バージョン 2.2 より前の glibc では値は 500)。" #. type: Plain text #: build/C/man7/feature_test_macros.7:430 msgid "Since glibc 2.19, defining B<_GNU_SOURCE> also has the effect of implicitly defining B<_DEFAULT_SOURCE>. In glibc versions before 2.20, defining B<_GNU_SOURCE> also had the effect of implicitly defining B<_BSD_SOURCE> and B<_SVID_SOURCE>." msgstr "glibc 2.19 以降では、 B<_GNU_SOURCE> を定義すると、 B<_DEFAULT_SOURCE> も暗黙のうちに定義される。 バージョン 2.20 より前の glibc では、 B<_GNU_SOURCE> を定義すると、 B<_BSD_SOURCE> と B<_SVID_SOURCE> も暗黙のうちに定義されていた。" #. type: TP #: build/C/man7/feature_test_macros.7:430 #, no-wrap msgid "B<_REENTRANT>" msgstr "B<_REENTRANT>" #. type: Plain text #: build/C/man7/feature_test_macros.7:436 msgid "Defining this macro exposes definitions of certain reentrant functions. For multithreaded programs, use I instead." msgstr "このマクロを定義すると、いくつかのリエントラント (再入可能) な関数 定義が公開される。マルチスレッドプログラムでは、この代わりに I を使用すること。" #. type: TP #: build/C/man7/feature_test_macros.7:436 #, no-wrap msgid "B<_THREAD_SAFE>" msgstr "B<_THREAD_SAFE>" #. type: Plain text #: build/C/man7/feature_test_macros.7:441 msgid "Synonym for B<_REENTRANT>, provided for compatibility with some other implementations." msgstr "B<_REENTRANT> の同義語。 他のいくつかの実装との互換性を提供するためのもの。" #. type: TP #: build/C/man7/feature_test_macros.7:441 #, no-wrap msgid "B<_FORTIFY_SOURCE> (since glibc 2.3.4)" msgstr "B<_FORTIFY_SOURCE> (glibc 2.3.4 以降)" #. For more detail, see: #. http://gcc.gnu.org/ml/gcc-patches/2004-09/msg02055.html #. [PATCH] Object size checking to prevent (some) buffer overflows #. * From: Jakub Jelinek #. * To: gcc-patches at gcc dot gnu dot org #. * Date: Tue, 21 Sep 2004 04:16:40 -0400 #. type: Plain text #: build/C/man7/feature_test_macros.7:453 msgid "Defining this macro causes some lightweight checks to be performed to detect some buffer overflow errors when employing various string and memory manipulation functions. Not all buffer overflows are detected, just some common cases." msgstr "このマクロを定義すると、文字列やメモリの操作を行う様々な関数を使用する際にバッファーオーバーフローを検出するための軽めのチェックが実行されるようになる。すべてのバッファーオーバーフローが検出されるわけではなく、あくまでよくある例についてだけである。" #. type: Plain text #: build/C/man7/feature_test_macros.7:471 msgid "In the current implementation, checks are added for calls to B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(3), and B(3)." msgstr "ついてだけである。 現在の実装では、以下の関数にチェックが追加されている: B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(3), B(3)" #. type: Plain text #: build/C/man7/feature_test_macros.7:486 msgid "If B<_FORTIFY_SOURCE> is set to 1, with compiler optimization level 1 (I) and above, checks that shouldn't change the behavior of conforming programs are performed. With B<_FORTIFY_SOURCE> set to 2 some more checking is added, but some conforming programs might fail. Some of the checks can be performed at compile time, and result in compiler warnings; other checks take place at run time, and result in a run-time error if the check fails." msgstr "B<_FORTIFY_SOURCE> が 1 に設定された場合、コンパイラの最適化レベルが 1 (I) かそれ以上であれば、規格に準拠するプログラムの振る舞いを 変化させないようなチェックが実行される。 B<_FORTIFY_SOURCE> が 2 に設定された場合、さらなるチェックが追加されるが、 規格に準拠するプログラムのいくつかが失敗する可能性がある。 いくつかのチェックはコンパイル時に実行でき、コンパイラの警告として 表示される。他のチェックは実行時に行われ、チェックに失敗した場合 には実行時エラーとなる。" #. type: Plain text #: build/C/man7/feature_test_macros.7:490 msgid "Use of this macro requires compiler support, available with B(1) since version 4.0." msgstr "このマクロを使用するにはコンパイラの対応が必要であり、 バージョン 4.0 以降の B(1) で利用できる。" #. type: SS #: build/C/man7/feature_test_macros.7:490 #, no-wrap msgid "Default definitions, implicit definitions, and combining definitions" msgstr "デフォルトの定義、暗黙の定義、組み合わせ定義" #. type: Plain text #: build/C/man7/feature_test_macros.7:506 msgid "If no feature test macros are explicitly defined, then the following feature test macros are defined by default: B<_BSD_SOURCE> (in glibc 2.19 and earlier), B<_SVID_SOURCE> (in glibc 2.19 and earlier), B<_DEFAULT_SOURCE> (since glibc 2.19), B<_POSIX_SOURCE>, and B<_POSIX_C_SOURCE>=200809L (200112L in glibc versions before 2.10; 199506L in glibc versions before 2.4; 199309L in glibc versions before 2.1)." msgstr "機能検査マクロが一つも明示的に定義されなかった場合、 デフォルトで機能検査マクロ B<_BSD_SOURCE> (glibc 2.19 以前), B<_SVID_SOURCE> (glibc 2.19 以前), B<_DEFAULT_SOURCE> (glibc 2.19 以降), B<_POSIX_SOURCE>, B<_POSIX_C_SOURCE>=200809L が定義される (バージョン 2.10 より前の glibc では値は 200112L、 バージョン 2.4 より前の glibc では値は 199506L、 バージョン 2.1 より前の glibc では値は 199309L)。" #. type: Plain text #: build/C/man7/feature_test_macros.7:525 msgid "If any of B<__STRICT_ANSI__>, B<_ISOC99_SOURCE>, B<_POSIX_SOURCE>, B<_POSIX_C_SOURCE>, B<_XOPEN_SOURCE>, B<_XOPEN_SOURCE_EXTENDED>, B<_BSD_SOURCE> (in glibc 2.19 and earlier), or B<_SVID_SOURCE> (in glibc 2.19 and earlier) is explicitly defined, then B<_BSD_SOURCE>, B<_SVID_SOURCE>, and B<_DEFAULT_SOURCE> are not defined by default." msgstr "B<__STRICT_ANSI__>, B<_ISOC99_SOURCE>, B<_POSIX_SOURCE>, B<_POSIX_C_SOURCE>, B<_XOPEN_SOURCE>, B<_XOPEN_SOURCE_EXTENDED>, B<_BSD_SOURCE> (glibc 2.19 以前), B<_SVID_SOURCE> (glibc 2.19 以前) のいずれかが明示的に定義された場合、 B<_BSD_SOURCE>, B<_SVID_SOURCE>, B<_SVID_SOURCE> はデフォルトでは定義されない。" #. type: Plain text #: build/C/man7/feature_test_macros.7:536 msgid "If B<_POSIX_SOURCE> and B<_POSIX_C_SOURCE> are not explicitly defined, and either B<__STRICT_ANSI__> is not defined or B<_XOPEN_SOURCE> is defined with a value of 500 or more, then" msgstr "B<_POSIX_SOURCE> と B<_POSIX_C_SOURCE> が明示的に定義されない場合で、 B<__STRICT_ANSI__> が定義されない、もしくは B<_XOPEN_SOURCE> が 500 以上の値で定義されたときには、" #. type: IP #: build/C/man7/feature_test_macros.7:536 #: build/C/man7/feature_test_macros.7:539 build/C/man2/intro.2:44 #: build/C/man2/intro.2:47 build/C/man2/intro.2:50 #: build/C/man7/man-pages.7:371 build/C/man7/man-pages.7:373 #: build/C/man7/man-pages.7:375 build/C/man7/man-pages.7:599 #: build/C/man7/man-pages.7:849 build/C/man7/man-pages.7:851 #: build/C/man7/man-pages.7:857 build/C/man7/man-pages.7:860 #: build/C/man7/man-pages.7:863 build/C/man7/man-pages.7:866 #: build/C/man7/man-pages.7:871 build/C/man7/man-pages.7:875 #: build/C/man7/man-pages.7:886 build/C/man7/man-pages.7:899 #: build/C/man7/man-pages.7:901 build/C/man7/man-pages.7:903 #: build/C/man5/proc.5:909 build/C/man5/proc.5:913 build/C/man5/proc.5:916 #: build/C/man5/proc.5:918 build/C/man5/proc.5:921 build/C/man5/proc.5:1614 #: build/C/man5/proc.5:1617 build/C/man5/proc.5:1629 build/C/man5/proc.5:1632 #: build/C/man5/proc.5:1636 build/C/man5/proc.5:1639 build/C/man5/proc.5:1642 #: build/C/man5/proc.5:1645 build/C/man5/proc.5:1648 build/C/man5/proc.5:1651 #: build/C/man5/proc.5:1654 build/C/man5/proc.5:1657 build/C/man5/proc.5:1661 #: build/C/man5/proc.5:1664 build/C/man5/proc.5:1667 build/C/man5/proc.5:1670 #: build/C/man5/proc.5:1673 build/C/man5/proc.5:1676 build/C/man5/proc.5:1680 #: build/C/man5/proc.5:1683 build/C/man5/proc.5:1694 build/C/man5/proc.5:1700 #: build/C/man5/proc.5:1704 build/C/man5/proc.5:1709 build/C/man5/proc.5:1714 #: build/C/man5/proc.5:1729 build/C/man5/proc.5:1734 build/C/man5/proc.5:1739 #: build/C/man5/proc.5:1744 build/C/man5/proc.5:1749 build/C/man5/proc.5:1898 #: build/C/man5/proc.5:1901 build/C/man5/proc.5:1903 build/C/man5/proc.5:1906 #: build/C/man5/proc.5:1924 build/C/man5/proc.5:1930 build/C/man5/proc.5:1935 #: build/C/man5/proc.5:3119 build/C/man5/proc.5:3123 build/C/man5/proc.5:3126 #: build/C/man5/proc.5:3131 build/C/man5/proc.5:3332 build/C/man5/proc.5:3336 #: build/C/man5/proc.5:3342 build/C/man5/proc.5:3381 build/C/man5/proc.5:3387 #: build/C/man5/proc.5:3389 build/C/man5/proc.5:4157 build/C/man5/proc.5:4160 #: build/C/man5/proc.5:4163 build/C/man5/proc.5:4168 build/C/man5/proc.5:4343 #: build/C/man5/proc.5:4348 build/C/man5/proc.5:4350 build/C/man5/proc.5:4352 #: build/C/man5/proc.5:4354 #, no-wrap msgid "*" msgstr "*" #. type: Plain text #: build/C/man7/feature_test_macros.7:539 msgid "B<_POSIX_SOURCE> is defined with the value 1; and" msgstr "B<_POSIX_SOURCE> が値 1 で定義され、かつ" #. type: Plain text #: build/C/man7/feature_test_macros.7:542 msgid "B<_POSIX_C_SOURCE> is defined with one of the following values:" msgstr "B<_POSIX_C_SOURCE> は以下の値のいずれか一つで定義される。" #. type: Plain text #: build/C/man7/feature_test_macros.7:548 msgid "2, if B<_XOPEN_SOURCE> is defined with a value less than 500;" msgstr "2 (B<_XOPEN_SOURCE> が 500 未満の値で定義された場合)" #. type: Plain text #: build/C/man7/feature_test_macros.7:554 msgid "199506L, if B<_XOPEN_SOURCE> is defined with a value greater than or equal to 500 and less than 600; or" msgstr "199506L (B<_XOPEN_SOURCE> が 500 以上 600 未満の値で定義された場合)" #. type: Plain text #: build/C/man7/feature_test_macros.7:559 msgid "(since glibc 2.4) 200112L, if B<_XOPEN_SOURCE> is defined with a value greater than or equal to 600 and less than 700." msgstr "(glibc 2.4 以降) 200112L (B<_XOPEN_SOURCE> が 600 以上 700 未満の値で定義された場合)" #. type: Plain text #: build/C/man7/feature_test_macros.7:565 msgid "(Since glibc 2.10) 200809L, if B<_XOPEN_SOURCE> is defined with a value greater than or equal to 700." msgstr "(glibc 2.10 以降) 200809L (B<_XOPEN_SOURCE> が 700 以上の値で定義された場合)" #. type: Plain text #: build/C/man7/feature_test_macros.7:570 msgid "Older versions of glibc do not know about the values 200112L and 200809L for B<_POSIX_C_SOURCE>, and the setting of this macro will depend on the glibc version." msgstr "古いバージョンの glibc では B<_POSIX_C_SOURCE> の値として 200112L や 200809L は存在せず、 B<_POSIX_C_SOURCE> の値がどうなるかは glibc のバージョンにより異なる。" #. type: Plain text #: build/C/man7/feature_test_macros.7:579 msgid "If B<_XOPEN_SOURCE> is undefined, then the setting of B<_POSIX_C_SOURCE> depends on the glibc version: 199506L, in glibc versions before 2.4; 200112L, in glibc 2.4 to 2.9; and 200809L, since glibc 2.10." msgstr "B<_XOPEN_SOURCE> が未定義の場合、 B<_POSIX_C_SOURCE> の値は glibc のバージョンにより異なる。 バージョン 2.4 より前の glibc では 199506L、 バージョン 2.4 以降 2.9 未満では 200112L、 glibc 2.10 以降では 200809L となる。" #. type: Plain text #: build/C/man7/feature_test_macros.7:582 msgid "Multiple macros can be defined; the results are additive." msgstr "また、複数のマクロを定義することもできる。 この場合、定義したマクロはすべて有効になる。" #. type: SH #: build/C/man7/feature_test_macros.7:582 build/C/man2/intro.2:93 #: build/C/man3/intro.3:87 build/C/man7/suffixes.7:276 #, no-wrap msgid "CONFORMING TO" msgstr "準拠" #. type: Plain text #: build/C/man7/feature_test_macros.7:590 msgid "POSIX.1 specifies B<_POSIX_C_SOURCE>, B<_POSIX_SOURCE>, and B<_XOPEN_SOURCE>. B<_XOPEN_SOURCE_EXTENDED> was specified by XPG4v2 (aka SUSv1)." msgstr "POSIX.1 では B<_POSIX_C_SOURCE>, B<_POSIX_SOURCE>, B<_XOPEN_SOURCE> が規定されている。 B<_XOPEN_SOURCE_EXTENDED> は XPG4v2 (別名 SUSv1) で規定されていた。" #. type: Plain text #: build/C/man7/feature_test_macros.7:594 msgid "B<_FILE_OFFSET_BITS> is not specified by any standard, but is employed on some other implementations." msgstr "B<_FILE_OFFSET_BITS> はどの標準でも規定されていないが、 他のいくつかの実装で採用されている。" #. type: Plain text #: build/C/man7/feature_test_macros.7:605 msgid "B<_BSD_SOURCE>, B<_SVID_SOURCE>, B<_DEFAULT_SOURCE>, B<_ATFILE_SOURCE>, B<_GNU_SOURCE>, B<_FORTIFY_SOURCE>, B<_REENTRANT>, and B<_THREAD_SAFE> are specific to Linux (glibc)." msgstr "B<_BSD_SOURCE>, B<_SVID_SOURCE>, B<_DEFAULT_SOURCE>, B<_ATFILE_SOURCE>, B<_GNU_SOURCE>, B<_FORTIFY_SOURCE>, B<_REENTRANT>, B<_THREAD_SAFE> は Linux (glibc) 固有である。" #. type: SH #: build/C/man7/feature_test_macros.7:605 build/C/man1/intro.1:48 #: build/C/man2/intro.2:98 build/C/man3/intro.3:92 build/C/man4/intro.4:33 #: build/C/man5/intro.5:33 build/C/man6/intro.6:32 build/C/man7/intro.7:36 #: build/C/man8/intro.8:44 build/C/man7/man.7:479 build/C/man5/proc.5:4395 #: build/C/man2/unimplemented.2:40 #, no-wrap msgid "NOTES" msgstr "注意" #. type: Plain text #: build/C/man7/feature_test_macros.7:612 msgid "Ifeatures.hE> is a Linux/glibc-specific header file. Other systems have an analogous file, but typically with a different name. This header file is automatically included by other header files as required: it is not necessary to explicitly include it in order to employ feature test macros." msgstr "Ifeatures.hE> は Linux/glibc 固有のヘッダファイルである。 他のシステムにも同様の目的のファイルがあるが、普通は違う名前である。 このヘッダファイルは、他のヘッダファイルにより必要に応じて 自動的にインクルードされる。機能検査マクロを利用するために 明示的にインクルードする必要はない。" #. type: Plain text #: build/C/man7/feature_test_macros.7:624 msgid "According to which of the above feature test macros are defined, Ifeatures.hE> internally defines various other macros that are checked by other glibc header files. These macros have names prefixed by two underscores (e.g., B<__USE_MISC>). Programs should I define these macros directly: instead, the appropriate feature test macro(s) from the list above should be employed." msgstr "上記の機能検査マクロのうちどれが定義されたかにしたがって、 Ifeatures.hE> は、他の glibc ヘッダファイルでチェックされる各種の他のマクロを、 内部で定義する。これらのマクロの名前はアンダースコア 2つで始まる (例えば B<__USE_MISC>)。 ユーザープログラムはこれらのマクロを I<決して> 直接定義すべきではない。 代わりに、上記のリストにある適切な機能検査マクロを利用すべきである。" #. type: SH #: build/C/man7/feature_test_macros.7:624 build/C/man7/man-pages.7:911 #, no-wrap msgid "EXAMPLE" msgstr "例" #. type: Plain text #: build/C/man7/feature_test_macros.7:630 msgid "The program below can be used to explore how the various feature test macros are set depending on the glibc version and what feature test macros are explicitly set. The following shell session, on a system with glibc 2.10, shows some examples of what we would see:" msgstr "下記のプログラムを使うと、各種の機能検査マクロが glibc のバージョン に応じてどのように設定されるかや、どの機能検査マクロが明示的に 設定されるか、を調べることができる。 以下に示すシェルセッションは、 glibc 2.10 のシステムでの実行結果の例である。" #. type: Plain text #: build/C/man7/feature_test_macros.7:657 #, no-wrap msgid "" "$ B\n" "$ B<./a.out>\n" "_POSIX_SOURCE defined\n" "_POSIX_C_SOURCE defined: 200809L\n" "_BSD_SOURCE defined\n" "_SVID_SOURCE defined\n" "_ATFILE_SOURCE defined\n" "$ B\n" "$ B<./a.out>\n" "_POSIX_SOURCE defined\n" "_POSIX_C_SOURCE defined: 199506L\n" "_XOPEN_SOURCE defined: 500\n" "$ B\n" "$ B<./a.out>\n" "_POSIX_SOURCE defined\n" "_POSIX_C_SOURCE defined: 200809L\n" "_ISOC99_SOURCE defined\n" "_XOPEN_SOURCE defined: 700\n" "_XOPEN_SOURCE_EXTENDED defined\n" "_LARGEFILE64_SOURCE defined\n" "_BSD_SOURCE defined\n" "_SVID_SOURCE defined\n" "_ATFILE_SOURCE defined\n" "_GNU_SOURCE defined\n" msgstr "" "$ B\n" "$ B<./a.out>\n" "_POSIX_SOURCE defined\n" "_POSIX_C_SOURCE defined: 200809L\n" "_BSD_SOURCE defined\n" "_SVID_SOURCE defined\n" "_ATFILE_SOURCE defined\n" "$ B\n" "$ B<./a.out>\n" "_POSIX_SOURCE defined\n" "_POSIX_C_SOURCE defined: 199506L\n" "_XOPEN_SOURCE defined: 500\n" "$ B\n" "$ B<./a.out>\n" "_POSIX_SOURCE defined\n" "_POSIX_C_SOURCE defined: 200809L\n" "_ISOC99_SOURCE defined\n" "_XOPEN_SOURCE defined: 700\n" "_XOPEN_SOURCE_EXTENDED defined\n" "_LARGEFILE64_SOURCE defined\n" "_BSD_SOURCE defined\n" "_SVID_SOURCE defined\n" "_ATFILE_SOURCE defined\n" "_GNU_SOURCE defined\n" #. type: SS #: build/C/man7/feature_test_macros.7:659 #, no-wrap msgid "Program source" msgstr "プログラムのソース" #. type: Plain text #: build/C/man7/feature_test_macros.7:663 #, no-wrap msgid "/* ftm.c */\n" msgstr "/* ftm.c */\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:667 #, no-wrap msgid "" "#include Estdio.hE\n" "#include Eunistd.hE\n" "#include Estdlib.hE\n" msgstr "" "#include Estdio.hE\n" "#include Eunistd.hE\n" "#include Estdlib.hE\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:674 #, no-wrap msgid "" "int\n" "main(int argc, char *argv[])\n" "{\n" "#ifdef _POSIX_SOURCE\n" " printf(\"_POSIX_SOURCE defined\\en\");\n" "#endif\n" msgstr "" "int\n" "main(int argc, char *argv[])\n" "{\n" "#ifdef _POSIX_SOURCE\n" " printf(\"_POSIX_SOURCE defined\\en\");\n" "#endif\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:678 #, no-wrap msgid "" "#ifdef _POSIX_C_SOURCE\n" " printf(\"_POSIX_C_SOURCE defined: %ldL\\en\", (long) _POSIX_C_SOURCE);\n" "#endif\n" msgstr "" "#ifdef _POSIX_C_SOURCE\n" " printf(\"_POSIX_C_SOURCE defined: %ldL\\en\", (long) _POSIX_C_SOURCE);\n" "#endif\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:682 #, no-wrap msgid "" "#ifdef _ISOC99_SOURCE\n" " printf(\"_ISOC99_SOURCE defined\\en\");\n" "#endif\n" msgstr "" "#ifdef _ISOC99_SOURCE\n" " printf(\"_ISOC99_SOURCE defined\\en\");\n" "#endif\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:686 #, no-wrap msgid "" "#ifdef _ISOC11_SOURCE\n" " printf(\"_ISOC11_SOURCE defined\\en\");\n" "#endif\n" msgstr "" "#ifdef _ISOC11_SOURCE\n" " printf(\"_ISOC11_SOURCE defined\\en\");\n" "#endif\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:690 #, no-wrap msgid "" "#ifdef _XOPEN_SOURCE\n" " printf(\"_XOPEN_SOURCE defined: %d\\en\", _XOPEN_SOURCE);\n" "#endif\n" msgstr "" "#ifdef _XOPEN_SOURCE\n" " printf(\"_XOPEN_SOURCE defined: %d\\en\", _XOPEN_SOURCE);\n" "#endif\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:694 #, no-wrap msgid "" "#ifdef _XOPEN_SOURCE_EXTENDED\n" " printf(\"_XOPEN_SOURCE_EXTENDED defined\\en\");\n" "#endif\n" msgstr "" "#ifdef _XOPEN_SOURCE_EXTENDED\n" " printf(\"_XOPEN_SOURCE_EXTENDED defined\\en\");\n" "#endif\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:698 #, no-wrap msgid "" "#ifdef _LARGEFILE64_SOURCE\n" " printf(\"_LARGEFILE64_SOURCE defined\\en\");\n" "#endif\n" msgstr "" "#ifdef _LARGEFILE64_SOURCE\n" " printf(\"_LARGEFILE64_SOURCE defined\\en\");\n" "#endif\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:702 #, no-wrap msgid "" "#ifdef _FILE_OFFSET_BITS\n" " printf(\"_FILE_OFFSET_BITS defined: %d\\en\", _FILE_OFFSET_BITS);\n" "#endif\n" msgstr "" "#ifdef _FILE_OFFSET_BITS\n" " printf(\"_FILE_OFFSET_BITS defined: %d\\en\", _FILE_OFFSET_BITS);\n" "#endif\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:706 #, no-wrap msgid "" "#ifdef _BSD_SOURCE\n" " printf(\"_BSD_SOURCE defined\\en\");\n" "#endif\n" msgstr "" "#ifdef _BSD_SOURCE\n" " printf(\"_BSD_SOURCE defined\\en\");\n" "#endif\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:710 #, no-wrap msgid "" "#ifdef _SVID_SOURCE\n" " printf(\"_SVID_SOURCE defined\\en\");\n" "#endif\n" msgstr "" "#ifdef _SVID_SOURCE\n" " printf(\"_SVID_SOURCE defined\\en\");\n" "#endif\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:714 #, no-wrap msgid "" "#ifdef _DEFAULT_SOURCE\n" " printf(\"_DEFAULT_SOURCE defined\\en\");\n" "#endif\n" msgstr "" "#ifdef _DEFAULT_SOURCE\n" " printf(\"_DEFAULT_SOURCE defined\\en\");\n" "#endif\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:718 #, no-wrap msgid "" "#ifdef _ATFILE_SOURCE\n" " printf(\"_ATFILE_SOURCE defined\\en\");\n" "#endif\n" msgstr "" "#ifdef _ATFILE_SOURCE\n" " printf(\"_ATFILE_SOURCE defined\\en\");\n" "#endif\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:722 #, no-wrap msgid "" "#ifdef _GNU_SOURCE\n" " printf(\"_GNU_SOURCE defined\\en\");\n" "#endif\n" msgstr "" "#ifdef _GNU_SOURCE\n" " printf(\"_GNU_SOURCE defined\\en\");\n" "#endif\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:726 #, no-wrap msgid "" "#ifdef _REENTRANT\n" " printf(\"_REENTRANT defined\\en\");\n" "#endif\n" msgstr "" "#ifdef _REENTRANT\n" " printf(\"_REENTRANT defined\\en\");\n" "#endif\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:730 #, no-wrap msgid "" "#ifdef _THREAD_SAFE\n" " printf(\"_THREAD_SAFE defined\\en\");\n" "#endif\n" msgstr "" "#ifdef _THREAD_SAFE\n" " printf(\"_THREAD_SAFE defined\\en\");\n" "#endif\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:734 #, no-wrap msgid "" "#ifdef _FORTIFY_SOURCE\n" " printf(\"_FORTIFY_SOURCE defined\\en\");\n" "#endif\n" msgstr "" "#ifdef _FORTIFY_SOURCE\n" " printf(\"_FORTIFY_SOURCE defined\\en\");\n" "#endif\n" #. type: Plain text #: build/C/man7/feature_test_macros.7:737 #, no-wrap msgid "" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" " exit(EXIT_SUCCESS);\n" "}\n" #. type: Sh #: build/C/man7/feature_test_macros.7:738 build/C/man1/intro.1:302 #: build/C/man2/intro.2:112 build/C/man3/intro.3:97 build/C/man4/intro.4:38 #: build/C/man5/intro.5:38 build/C/man7/intro.7:41 build/C/man7/libc.7:106 #: build/C/man7/mailaddr.7:117 build/C/man7/man-pages.7:918 #: build/C/man7/man.7:560 build/C/man7/mdoc.7:428 #: build/C/man7/posixoptions.7:854 build/C/man5/proc.5:4408 #: build/C/man7/standards.7:277 build/C/man7/suffixes.7:280 #: build/C/man2/unimplemented.2:64 build/C/man7/mdoc.samples.7:2952 #, no-wrap msgid "SEE ALSO" msgstr "関連項目" #. type: Plain text #: build/C/man7/feature_test_macros.7:741 msgid "B(7), B(7)" msgstr "B(7), B(7)" #. But beware: the info libc document is out of date (Jul 07, mtk) #. type: Plain text #: build/C/man7/feature_test_macros.7:745 msgid "The section \"Feature Test Macros\" under I." msgstr "I の \"Feature Test Macros\" の節。" #. type: Plain text #: build/C/man7/feature_test_macros.7:747 msgid "I" msgstr "I" #. type: Sh #: build/C/man7/feature_test_macros.7:747 build/C/man1/intro.1:304 #: build/C/man2/intro.2:135 build/C/man3/intro.3:110 build/C/man4/intro.4:40 #: build/C/man5/intro.5:40 build/C/man6/intro.6:37 build/C/man7/intro.7:43 #: build/C/man8/intro.8:49 build/C/man7/libc.7:114 build/C/man7/mailaddr.7:127 #: build/C/man7/man-pages.7:925 build/C/man7/man.7:572 build/C/man7/mdoc.7:433 #: build/C/man7/operator.7:65 build/C/man7/posixoptions.7:857 #: build/C/man5/proc.5:4443 build/C/man7/standards.7:281 #: build/C/man7/suffixes.7:283 build/C/man3/undocumented.3:183 #: build/C/man2/unimplemented.2:66 build/C/man7/units.7:130 #: build/C/man7/mdoc.samples.7:2957 #, no-wrap msgid "COLOPHON" msgstr "この文書について" #. type: Plain text #: build/C/man7/feature_test_macros.7:755 build/C/man1/intro.1:312 #: build/C/man2/intro.2:143 build/C/man3/intro.3:118 build/C/man4/intro.4:48 #: build/C/man5/intro.5:48 build/C/man6/intro.6:45 build/C/man7/intro.7:51 #: build/C/man8/intro.8:57 build/C/man7/libc.7:122 build/C/man7/mailaddr.7:135 #: build/C/man7/man-pages.7:933 build/C/man7/man.7:580 #: build/C/man7/operator.7:73 build/C/man7/posixoptions.7:865 #: build/C/man5/proc.5:4451 build/C/man7/standards.7:289 #: build/C/man7/suffixes.7:291 build/C/man3/undocumented.3:191 #: build/C/man2/unimplemented.2:74 build/C/man7/units.7:138 msgid "This page is part of release 3.78 of the Linux I project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at \\%http://www.kernel.org/doc/man-pages/." msgstr "" "この man ページは Linux I プロジェクトのリリース 3.78 の一部\n" "である。プロジェクトの説明とバグ報告に関する情報は\n" "http://www.kernel.org/doc/man-pages/ に書かれている。" #. type: TH #: build/C/man1/intro.1:28 build/C/man2/intro.2:29 build/C/man3/intro.3:26 #: build/C/man4/intro.4:26 build/C/man5/intro.5:27 build/C/man6/intro.6:26 #: build/C/man7/intro.7:28 build/C/man8/intro.8:29 #, no-wrap msgid "INTRO" msgstr "INTRO" #. type: TH #: build/C/man1/intro.1:28 #, no-wrap msgid "2007-11-15" msgstr "2007-11-15" #. type: TH #: build/C/man1/intro.1:28 build/C/man7/mailaddr.7:27 #, no-wrap msgid "Linux User's Manual" msgstr "Linux User's Manual" #. type: Plain text #: build/C/man1/intro.1:31 msgid "intro - introduction to user commands" msgstr "intro - ユーザーコマンドの紹介" #. type: Plain text #: build/C/man1/intro.1:35 msgid "Section 1 of the manual describes user commands and tools, for example, file manipulation tools, shells, compilers, web browsers, file and image viewers and editors, and so on." msgstr "マニュアルの 1 章は、ユーザーコマンドやツールの説明について説明している。 例えば、ファイル操作ツール、シェル、コンパイラ、ウェブブラウザ、 ファイルやイメージのビューアやエディタ、などである。" #. type: Plain text #: build/C/man1/intro.1:48 msgid "All commands yield a status value on termination. This value can be tested (e.g., in most shells the variable I<$?> contains the status of the last executed command) to see whether the command completed successfully. A zero exit status is conventionally used to indicate success, and a nonzero status means that the command was unsuccessful. (Details of the exit status can be found in B(2).) A nonzero exit status can be in the range 1 to 255, and some commands use different nonzero status values to indicate the reason why the command failed." msgstr "すべてのコマンドは終了時にステータス値を返す。 この値を検査することで (例えば、ほとんどのシェルでは変数 I<$?> に最後に実行したコマンドのステータスが保持される)、 そのコマンドが成功して完了したかどうかを知ることができる。 伝統的に、終了ステータス 0 は成功を示すのに使われ、非 0 の値は そのコマンドが成功しなかったことを示す (終了ステータスの詳細は B(2) に書かれている)。 非 0 の終了ステータスは 1 から 255 の範囲の値をとることができ、 いくつかのコマンドではコマンドが失敗した理由を示すために 複数の非 0 のステータス値が使用されている。" #. type: Plain text #: build/C/man1/intro.1:52 msgid "Linux is a flavor of UNIX, and as a first approximation all user commands under UNIX work precisely the same under Linux (and FreeBSD and lots of other UNIX-like systems)." msgstr "Linux は UNIX の一種であり、大雑把にいえば、 UNIX 上のユーザーコマンドはすべて Linux 上でも全く同じ動作をする (FreeBSD や他のの多くの UNIX 風のシステムでも同様である)。" #. type: Plain text #: build/C/man1/intro.1:62 msgid "Under Linux, there are GUIs (graphical user interfaces), where you can point and click and drag, and hopefully get work done without first reading lots of documentation. The traditional UNIX environment is a CLI (command line interface), where you type commands to tell the computer what to do. That is faster and more powerful, but requires finding out what the commands are. Below a bare minimum, to get started." msgstr "Linux には GUI (グラフィカルユーザーインタフェース) が用意されており、 何かをポイントしたり、クリックしたり、ドラッグしたりでき、うまくいけば 最初にたくさんの文書を読まなくても目的の作業ができてしまうこともある。 伝統的な UNIX 環境は CLI (コマンドラインインタフェース) であり、 コマンドを打ち込んで、コンピュータに何をすべきか教えてやる。 CLI は GUI よりも速く強力だが、どのコマンドが何をするのか知っている必要 がある。CLI を使い始めるために必要最小限のコマンドを以下に述べる。" #. type: SS #: build/C/man1/intro.1:62 #, no-wrap msgid "Login" msgstr "ログイン" #. type: Plain text #: build/C/man1/intro.1:76 msgid "In order to start working, you probably first have to login, that is, give your username and password. See also B(1). The program I now starts a I (command interpreter) for you. In case of a graphical login, you get a screen with menus or icons and a mouse click will start a shell in a window. See also B(1)." msgstr "作業を開始するためには、ます最初にログインしなければならないだろう。 すなわち、ユーザー名とパスワードを入力しなければならない。詳しくは B(1) を参照のこと。 I プログラムは (コマンドインタープリタである) I<シェル (shell)> を起動する。グラフィカルログインの場合は、メニューやアイコンがある スクリーンが表示され、マウスをクリックするとウィンドウが開いて シェルが起動されることだろう。詳しくは B(1) を参照のこと。" #. type: SS #: build/C/man1/intro.1:76 #, no-wrap msgid "The shell" msgstr "シェル" #. type: Plain text #: build/C/man1/intro.1:91 msgid "One types commands to the I, the command interpreter. It is not built-in, but is just a program and you can change your shell. Everybody has her own favorite one. The standard one is called I. See also B(1), B(1), B(1), B(1), B(1)." msgstr "コマンドは、コマンドインタープリタである I<シェル> に対して入力する。 I<シェル> は、組み込みコマンドではなく普通のプログラムであり、好みのものに変更する ことができる。各人にはそれぞれ好みのシェルがある。標準のシェルは I と呼ばれる。 B(1), B(1), B(1), B(1), B(1) を参照のこと。" #. type: Plain text #: build/C/man1/intro.1:93 msgid "A session might go like" msgstr "セッションの例を以下に示す。" #. type: Plain text #: build/C/man1/intro.1:108 #, no-wrap msgid "" "BI\n" "BI<********>\n" "B<% >I\n" "Tue Aug 6 23:50:44 CEST 2002\n" "B<% >I\n" " August 2002\n" "Su Mo Tu We Th Fr Sa\n" " 1 2 3\n" " 4 5 6 7 8 9 10\n" "11 12 13 14 15 16 17\n" "18 19 20 21 22 23 24\n" "25 26 27 28 29 30 31\n" msgstr "" "BI\n" "BI<********>\n" "B<% >I\n" "Tue Aug 6 23:50:44 CEST 2002\n" "B<% >I\n" "\t August 2002\n" "Su Mo Tu We Th Fr Sa\n" " 1 2 3\n" " 4 5 6 7 8 9 10\n" "11 12 13 14 15 16 17\n" "18 19 20 21 22 23 24\n" "25 26 27 28 29 30 31\n" #. type: Plain text #: build/C/man1/intro.1:135 #, no-wrap msgid "" "B<% >I\n" "bin tel\n" "B<% >I\n" "total 2\n" "drwxrwxr-x 2 aeb 1024 Aug 6 23:51 bin\n" "-rw-rw-r-- 1 aeb 37 Aug 6 23:52 tel\n" "B<% >I\n" "maja 0501-1136285\n" "peter 0136-7399214\n" "B<% >I\n" "B<% >I\n" "total 3\n" "drwxr-xr-x 2 aeb 1024 Aug 6 23:51 bin\n" "-rw-r--r-- 1 aeb 37 Aug 6 23:52 tel\n" "-rw-r--r-- 1 aeb 37 Aug 6 23:53 tel2\n" "B<% >I\n" "B<% >I\n" "total 3\n" "drwxr-xr-x 2 aeb 1024 Aug 6 23:51 bin\n" "-rw-r--r-- 1 aeb 37 Aug 6 23:52 tel1\n" "-rw-r--r-- 1 aeb 37 Aug 6 23:53 tel2\n" "B<% >I\n" "B<% >I\n" "B<% >I\n" "maja 0501-1136285\n" "B<% >\n" msgstr "" "B<% >I\n" "bin tel\n" "B<% >I\n" "total 2\n" "drwxrwxr-x 2 aeb 1024 Aug 6 23:51 bin\n" "-rw-rw-r-- 1 aeb 37 Aug 6 23:52 tel\n" "B<% >I\n" "maja 0501-1136285\n" "peter 0136-7399214\n" "B<% >I\n" "B<% >I\n" "total 3\n" "drwxr-xr-x 2 aeb 1024 Aug 6 23:51 bin\n" "-rw-r--r-- 1 aeb 37 Aug 6 23:52 tel\n" "-rw-r--r-- 1 aeb 37 Aug 6 23:53 tel2\n" "B<% >I\n" "B<% >I\n" "total 3\n" "drwxr-xr-x 2 aeb 1024 Aug 6 23:51 bin\n" "-rw-r--r-- 1 aeb 37 Aug 6 23:52 tel1\n" "-rw-r--r-- 1 aeb 37 Aug 6 23:53 tel2\n" "B<% >I\n" "B<% >I\n" "B<% >I\n" "maja 0501-1136285\n" "B<% >\n" #. type: Plain text #: build/C/man1/intro.1:147 msgid "and here typing Control-D ended the session. The B<% > here was the command prompt\\(emit is the shell's way of indicating that it is ready for the next command. The prompt can be customized in lots of ways, and one might include stuff like username, machine name, current directory, time, and so on. An assignment PS1=\"What next, master? \" would change the prompt as indicated." msgstr "ここで Control-D を打つとセッションが終了する。 ここで、 B<% > はコマンドプロンプトである。コマンドプロンプトはシェル独特のやり方で、 シェルが次のコマンドを受け付けられる状態になっていることを示している。 プロンプトは、柔軟にカスタマイズ することができ、ユーザー名、マシン名、カレントディレクトリ、時刻などを プロンプトに含めることができる。 PS1=\"What next, master? \" と設定すると、 プロンプトはそのように変更されるだろう。" #. type: Plain text #: build/C/man1/intro.1:153 msgid "We see that there are commands I (that gives date and time), and I (that gives a calendar)." msgstr "例にあるように、 I という日付と時刻を表示するコマンドや、 I というカレンダを表示するコマンドもある。" #. type: Plain text #: build/C/man1/intro.1:169 msgid "The command I lists the contents of the current directory\\(emit tells you what files you have. With a I<-l> option it gives a long listing, that includes the owner and size and date of the file, and the permissions people have for reading and/or changing the file. For example, the file \"tel\" here is 37 bytes long, owned by aeb and the owner can read and write it, others can only read it. Owner and permissions can be changed by the commands I and I." msgstr "I コマンドはカレントディレクトリの内容をリスト表示する、つまり ディレクトリ内にどんなファイルがあるかを教えてくれる。 I<-l> オプションをつけて実行すると、詳細表示が行われ、 ファイルの所有者、サイズ、日付などが表示される。 上の例では、\"tel\" ファイルは、サイズが 37 バイトで、所有者は aeb で、 所有者は読み書きができ、他の人は読み出しだけができることが分かる。 ファイルの所有者と権限 (permission) は、それぞれ I コマンドと I コマンドで変更できる。" #. type: Plain text #: build/C/man1/intro.1:176 msgid "The command I will show the contents of a file. (The name is from \"concatenate and print\": all files given as parameters are concatenated and sent to \"standard output\", here the terminal screen.)" msgstr "I コマンドはファイルの内容を表示する。 (コマンド名は \"concatenate and print\" (連結して印字する) に由来している。 引数として与えられた全てのファイルの内容が連結され、「標準出力」 に送られる。上の例では、標準出力は端末のスクリーンである。)" #. type: Plain text #: build/C/man1/intro.1:183 msgid "The command I (from \"copy\") will copy a file. On the other hand, the command I (from \"move\") only renames it." msgstr "I コマンドはファイルのコピーを行う (その名前は \"copy\" に由来する)。 一方、 I コマンドは単純にファイル名の変更を行う (その名前は \"move\" に由来する)。" #. type: Plain text #: build/C/man1/intro.1:188 msgid "The command I lists the differences between two files. Here there was no output because there were no differences." msgstr "I コマンドは 2 つのファイルの違いを表示する。 上の例では、二つのファイルに違いがないので、何も出力されていない。" #. type: Plain text #: build/C/man1/intro.1:194 msgid "The command I (from \"remove\") deletes the file, and be careful! it is gone. No wastepaper basket or anything. Deleted means lost." msgstr "I コマンドはファイルを削除する。ファイルはなくなってしまうので 注意して使用すること! ゴミ箱に相当するものはなく、 削除はそのファイルが完全に失われることを意味する。" #. type: Plain text #: build/C/man1/intro.1:199 msgid "The command I (from \"g/re/p\") finds occurrences of a string in one or more files. Here it finds Maja's telephone number." msgstr "I コマンドは、指定された文字列を一つ以上のファイルから探す (コマンド名は \"g/re/p\" に由来している)。 上の例では、Maja の電話番号が見つかっている。" #. type: SS #: build/C/man1/intro.1:199 #, no-wrap msgid "Pathnames and the current directory" msgstr "パス名とカレントディレクトリ" #. type: Plain text #: build/C/man1/intro.1:211 msgid "Files live in a large tree, the file hierarchy. Each has a I describing the path from the root of the tree (which is called /) to the file. For example, such a full pathname might be /home/aeb/tel. Always using full pathnames would be inconvenient, and the name of a file in the current directory may be abbreviated by giving only the last component. That is why \"/home/aeb/tel\" can be abbreviated to \"tel\" when the current directory is \"/home/aeb\"." msgstr "ファイルはファイル階層という大きな木の中にある。それぞれのファイルには I<パス名 (pathname)> があり、パス名は (/ と呼ばれる) 木の根からの経路を示すものである。 上の例では、完全なパス名は /home/aeb/tel のようになる。 いつも完全なパス名を使うのは不便なので、カレントディレクトリにある ファイル名は、ファイル名の最後の部分だけに省略することができる。 したがって、カレントディレクトリが \"/home/aeb\" の時は、 \"/home/aeb/tel\" を \"tel\" に省略して書くことができる。" #. type: Plain text #: build/C/man1/intro.1:215 msgid "The command I prints the current directory." msgstr "I コマンドはカレントディレクトリを表示する。" #. type: Plain text #: build/C/man1/intro.1:220 msgid "The command I changes the current directory. Try \"cd /\" and \"pwd\" and \"cd\" and \"pwd\"." msgstr "I コマンドはカレントディレクトリを変更する。 \"cd /\"、\"pwd\"、\"cd\"、\"pwd\" と順に実行してみるとよい。" #. type: SS #: build/C/man1/intro.1:220 #, no-wrap msgid "Directories" msgstr "ディレクトリ" #. type: Plain text #: build/C/man1/intro.1:224 msgid "The command I makes a new directory." msgstr "I コマンドはディレクトリを新規に作成する。" #. type: Plain text #: build/C/man1/intro.1:228 msgid "The command I removes a directory if it is empty, and complains otherwise." msgstr "I コマンドは空であればディレクトリを削除し、 空でなければエラーメッセージを表示する。" #. type: Plain text #: build/C/man1/intro.1:240 msgid "The command I (with a rather baroque syntax) will find files with given name or other properties. For example, \"find . -name tel\" would find the file \"tel\" starting in the present directory (which is called \".\"). And \"find / -name tel\" would do the same, but starting at the root of the tree. Large searches on a multi-GB disk will be time-consuming, and it may be better to use B(1)." msgstr "I コマンドは、指定された名前やその他の属性を持つファイルを探す (書式はかなり変わっている)。例えば、\"find . -name tel\" を実行すると、 \"tel\" という名前のファイルの検索をカレントディレクトリから開始する。 (カレントディレクトリは \".\" で表す)。\"find / -name tel\" としても 同じことを行うが、検索は木の根 (/) から開始される。 数 GB のディスクに対して検索をかけると時間がかかるので、 そのようなときは B(1) を使った方がいいかもしれない。" #. type: SS #: build/C/man1/intro.1:240 #, no-wrap msgid "Disks and filesystems" msgstr "ディスクとファイルシステム" #. type: Plain text #: build/C/man1/intro.1:251 msgid "The command I will attach the filesystem found on some disk (or floppy, or CDROM or so) to the big filesystem hierarchy. And I detaches it again. The command I will tell you how much of your disk is still free." msgstr "I コマンドは、(フロッピーや CDROM などの) ディスク上のファイルシステムを 大きなファイルシステム階層に接続する。逆に I コマンドは切り離しを行う。 I コマンドを実行すると、ディスクの未使用量がどの程度かを表示する。" #. type: SS #: build/C/man1/intro.1:251 #, no-wrap msgid "Processes" msgstr "プロセス" #. type: Plain text #: build/C/man1/intro.1:269 msgid "On a UNIX system many user and system processes run simultaneously. The one you are talking to runs in the I, the others in the I. The command I will show you which processes are active and what numbers these processes have. The command I allows you to get rid of them. Without option this is a friendly request: please go away. And \"kill -9\" followed by the number of the process is an immediate kill. Foreground processes can often be killed by typing Control-C." msgstr "UNIX システムでは、多くのユーザープロセスとシステムプロセスが同時に実行される。 対話的に実行できるプロセスは I で実行されており、そうでないものは I で実行されている。 コマンド I により、どのプロセスが実行されているかやプロセスが持っている番号 (プロセス番号) を表示できる。 コマンド I を使うことで、プロセスを取り除くことができる。 オプションなしで実行されると、「いなくなって下さい」というやさしい要求 を行う。\"kill -9\" に続けてプロセス番号を指定すると、指定したプロセスを 直ちに削除する。 foreground プロセスは多くの場合 Control-C をタイプすることで 殺すことができる。" #. type: SS #: build/C/man1/intro.1:269 #, no-wrap msgid "Getting information" msgstr "情報の探し方" #. type: Plain text #: build/C/man1/intro.1:282 msgid "There are thousands of commands, each with many options. Traditionally commands are documented on I, (like this one), so that the command \"man kill\" will document the use of the command \"kill\" (and \"man man\" document the command \"man\"). The program I sends the text through some I, usually I. Hit the space bar to get the next page, hit q to quit." msgstr "非常にたくさんのコマンドがあり、 それぞれのコマンドにはたくさんのオプションがある。 伝統的には、コマンドの説明は (このドキュメントもそうだが) I に書かれている。例えば \"man kill\" コマンドを実行すると、\"kill\" コマンドの 使い方に関する説明が表示される。(同様に \"man man\" は \"man\" コマンドに ついての説明を表示する。) I プログラムはテキストを I に渡して表示を行う。 I として I が使われることが多い。 次のページに進むにはスペースキーを、終了するには q を押す。" #. type: Plain text #: build/C/man1/intro.1:290 msgid "In documentation it is customary to refer to man pages by giving the name and section number, as in B(1). Man pages are terse, and allow you to find quickly some forgotten detail. For newcomers an introductory text with more examples and explanations is useful." msgstr "ドキュメントでは、他の man ページへの参照は B(1) のように名前とセクション番号で示すのが一般的である。 man ページは簡潔に書かれており、詳細を忘れたときに素早く情報を見つける ことができる。例や説明とともに入門向けの記載もあるので、初めての人にとっても 役に立つものである。" #. type: Plain text #: build/C/man1/intro.1:294 msgid "A lot of GNU/FSF software is provided with info files. Type \"info info\" for an introduction on the use of the program \"info\"." msgstr "多くの GNU/FSF ソフトウェアには info ファイルが付属している。 \"info info\" とタイプすると、\"info\" プログラムの使い方の紹介が表示される。" #. Actual examples? Separate section for each of cat, cp, ...? #. gzip, bzip2, tar, rpm #. type: Plain text #: build/C/man1/intro.1:302 msgid "Special topics are often treated in HOWTOs. Look in I and use a browser if you find HTML files there." msgstr "特集記事については HOWTO で扱われることが多い。 I を見るといいだろう。 HTML ファイルがあった場合はブラウザを使って表示すればよい。" #. type: Plain text #: build/C/man1/intro.1:304 build/C/man4/intro.4:40 build/C/man5/intro.5:40 #: build/C/man7/intro.7:43 msgid "B(7)" msgstr "B(7)" #. type: TH #: build/C/man2/intro.2:29 #, no-wrap msgid "2014-02-20" msgstr "2014-02-20" #. type: Plain text #: build/C/man2/intro.2:32 msgid "intro - introduction to system calls" msgstr "intro - システムコールの説明" #. type: Plain text #: build/C/man2/intro.2:42 msgid "Section 2 of the manual describes the Linux system calls. A system call is an entry point into the Linux kernel. Usually, system calls are not invoked directly: instead, most system calls have corresponding C library wrapper functions which perform the steps required (e.g., trapping to kernel mode) in order to invoke the system call. Thus, making a system call looks the same as invoking a normal library function." msgstr "マニュアルの 2 章では Linux のシステムコールについて説明している。 システムコールは Linux カーネルへのエントリポイントである。 通常は、システムコールは直接起動される訳ではなく、 ほとんどのシステムコールには対応する C ライブラリのラッパー関数があり、 そのラッパー関数がシステムコールを呼び出すのに必要な処理を実行する。 そのため、システムコールを呼び出すのは通常のライブラリ関数を呼び出すのと 同じように見える。" #. type: Plain text #: build/C/man2/intro.2:44 msgid "In many cases, the C library wrapper function does nothing more than:" msgstr "多くの場合、 C ライブラリのラッパー関数が行うのは以下のことだけである。" #. type: Plain text #: build/C/man2/intro.2:47 msgid "copying arguments and the unique system call number to the registers where the kernel expects them;" msgstr "引き数と一意なシステムコール番号をカーネルが期待するレジスターにコピーする" #. type: Plain text #: build/C/man2/intro.2:50 msgid "trapping to kernel mode, at which point the kernel does the real work of the system call; and" msgstr "カーネルがシステムコールの実際の処理を行う時点でカーネルモードに入る" #. type: Plain text #: build/C/man2/intro.2:55 msgid "setting I if the system call returns an error number when the kernel returns the CPU to user mode." msgstr "カーネルが CPU をユーザーモードに返した際にシステムコールがエラー番号を返したいれば I を設定する" #. type: Plain text #: build/C/man2/intro.2:65 msgid "However, in a few cases, a wrapper function may do rather more than this, for example, performing some preprocessing of the arguments of arguments before trapping to kernel mode, or postprocessing of values returned by the system call. Where this is the case, the manual pages in Section 2 generally try to note the details of both the (usually GNU) C library API interface and the raw system call. Most commonly, the main DESCRIPTION will focus on the C library interface, and differences for the system call are covered in the NOTES section." msgstr "しかし、ラッパー関数がこれ以上のことを行う場合もいくつかある。例えば、カーネルモードに入る前に引き数に対する前処理を実行したり、システムコールが返した値に対する後処理を行うなどである。このような場合、セクション 2 のマニュアルページでは、基本的に、C ライブラリ API インターフェース (通常は GNU C ライブラリのもの) と生のシステムコールの両方の詳細をできるだけ説明しようとする。ほとんどの場合、メインとなる「説明」では C ライブラリのインターフェースに焦点をあてて説明し、システムコールでの差分については「注意」のセクションに説明がある。" #. type: Plain text #: build/C/man2/intro.2:68 msgid "For a list of the Linux system calls, see B(2)." msgstr "Linux のシステムコールのリストについては B(2) を参照のこと。" #. type: SH #: build/C/man2/intro.2:68 build/C/man2/unimplemented.2:35 #, no-wrap msgid "RETURN VALUE" msgstr "返り値" #. type: Plain text #: build/C/man2/intro.2:77 msgid "On error, most system calls return a negative error number (i.e., the negated value of one of the constants described in B(3)). The C library wrapper hides this detail from the caller: when a system call returns a negative value, the wrapper copies the absolute value into the I variable, and returns -1 as the return value of the wrapper." msgstr "エラーの場合、ほとんどのシステムコールは負のエラー番号を返す (具体的には B(3) で説明されている定数のいずれかを負にした値を返す)。 C ライブラリのラッパーは呼び出し元からこうした詳細を隠蔽している。 システムコールが負の値を返した場合、ラッパーは絶対値を I 変数にコピーし、ラッパーの返り値として -1 を返す。" #. type: Plain text #: build/C/man2/intro.2:82 msgid "The value returned by a successful system call depends on the call. Many system calls return 0 on success, but some can return nonzero values from a successful call. The details are described in the individual manual pages." msgstr "成功時にシステムコールが返す値はシステムコールにより異なる。 多くのシステムコールは成功時に 0 を返すが、 成功時に 0 以外の値を返すシステムコールもある。 詳細は個々のマニュアルページで説明されている。" #. type: Plain text #: build/C/man2/intro.2:93 msgid "In some cases, the programmer must define a feature test macro in order to obtain the declaration of a system call from the header file specified in the man page SYNOPSIS section. (Where required, these feature test macros must be defined before including I header files.) In such cases, the required macro is described in the man page. For further information on feature test macros, see B(7)." msgstr "マニュアルページの「書式」の節に規定されたヘッダファイルから関数の定義を 得るために、プログラマが機能検査マクロを定義しなければならない場合がある (機能検査マクロの定義が必要な場合、これらの機能検査マクロの定義は 「どの」ヘッダファイルのインクルードよりも前で行われなければならない)。 このような場合には、必要なマクロがマニュアルページで説明されている。 機能検査マクロのさらなる情報については、 B(7) を参照のこと。" #. type: Plain text #: build/C/man2/intro.2:98 build/C/man3/intro.3:92 msgid "Certain terms and abbreviations are used to indicate UNIX variants and standards to which calls in this section conform. See B(7)." msgstr "この章の関数が準拠する UNIX システムや標準を示すのにいくつかの単語や略号が 使用されている。 B(7) を参照のこと。" #. type: SS #: build/C/man2/intro.2:99 #, no-wrap msgid "Calling directly" msgstr "直接呼び出す" #. type: Plain text #: build/C/man2/intro.2:108 msgid "In most cases, it is unnecessary to invoke a system call directly, but there are times when the Standard C library does not implement a nice wrapper function for you. In this case, the programmer must manually invoke the system call using B(2). Historically, this was also possible using one of the _syscall macros described in B<_syscall>(2)." msgstr "ほとんどの場合、直接システムコールを呼び出す必要はないが、 場合によっては標準 C ライブラリに適切な関数が実装されていないこともある。 このような場合は、プログラマは B(2) を使って、自分でシステムコールを呼び出さなければならない。 過去には、 B<_syscall>(2) マクロの一つを使ってシステムコールの呼び出すこともできた。" #. type: SS #: build/C/man2/intro.2:108 build/C/man3/intro.3:93 build/C/man4/intro.4:34 #: build/C/man5/intro.5:34 build/C/man6/intro.6:33 build/C/man7/intro.7:37 #: build/C/man8/intro.8:45 #, no-wrap msgid "Authors and copyright conditions" msgstr "著者と著作権" #. type: Plain text #: build/C/man2/intro.2:112 build/C/man3/intro.3:97 build/C/man4/intro.4:38 #: build/C/man5/intro.5:38 build/C/man6/intro.6:37 build/C/man7/intro.7:41 #: build/C/man8/intro.8:49 msgid "Look at the header of the manual page source for the author(s) and copyright conditions. Note that these can be different from page to page!" msgstr "著者と著作権に関しては各マニュアルページのソースのヘッダを参照すること。 これらはページごとに異なる可能性があることに注意してほしい。" #. type: Plain text #: build/C/man2/intro.2:135 msgid "B<_syscall>(2), B(2), B(2), B(3), B(3), B(7), B(7), B(7), B(7), B(7), B(7), B(7), B(7), B(7), B(7), B(7), B(7), B(7), B(7), B