# translation of gprof-2.14rel030712.tr.po to Turkish
# Copyright (C) 2003 Free Software Foundation, Inc.
# Deniz Akkus Kanca <deniz@arayan.com>, 2001,2003.
#
msgid ""
msgstr ""
"Project-Id-Version: gprof 2.14rel030712\n"
"POT-Creation-Date: 2003-07-11 13:58+0930\n"
"PO-Revision-Date: 2003-08-17 15:08+0300\n"
"Last-Translator: Deniz Akkus Kanca <deniz@arayan.com>\n"
"Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.0\n"

#: alpha.c:103 mips.c:57
msgid "<indirect child>"
msgstr "<dolaylı ast>"

#: alpha.c:120 mips.c:74
#, c-format
msgid "[find_call] %s: 0x%lx to 0x%lx\n"
msgstr "[find_call] %s: 0x%lx'dan 0x%lx'a\n"

#: alpha.c:142
#, c-format
msgid "[find_call] 0x%lx: jsr%s <indirect_child>\n"
msgstr "[find_call] 0x%lx: jsr%s <dolaylı_ast>\n"

#: alpha.c:152
#, c-format
msgid "[find_call] 0x%lx: bsr"
msgstr "[find_call] 0x%lx: bsr"

#: basic_blocks.c:134 call_graph.c:94 hist.c:98
#, c-format
msgid "%s: %s: unexpected end of file\n"
msgstr "%s: %s: beklenmeyen dosyasonu\n"

#: basic_blocks.c:202
#, c-format
msgid "%s: warning: ignoring basic-block exec counts (use -l or --line)\n"
msgstr "%s: uyarı: temel blok yürütme sayıları yoksayıldı (-l veya --line kullanın)\n"

#. FIXME: This only works if bfd_vma is unsigned long.
#: basic_blocks.c:295 basic_blocks.c:305
#, c-format
msgid "%s:%d: (%s:0x%lx) %lu executions\n"
msgstr "%s:%d: (%s:0x%lx) %lu yürütme\n"

#: basic_blocks.c:296 basic_blocks.c:306
msgid "<unknown>"
msgstr "<bilinmeyen>"

#: basic_blocks.c:553
#, c-format
msgid ""
"\n"
"\n"
"Top %d Lines:\n"
"\n"
"     Line      Count\n"
"\n"
msgstr ""
"\n"
"\n"
"Tepe %d Satır:\n"
"\n"
"     Satır      Sayı\n"
"\n"

#: basic_blocks.c:577
msgid ""
"\n"
"Execution Summary:\n"
"\n"
msgstr ""
"\n"
"Yürütme Özeti:\n"
"\n"

#: basic_blocks.c:578
#, c-format
msgid "%9ld   Executable lines in this file\n"
msgstr "%9ld   yürütülür satır -- bu dosyada\n"

#: basic_blocks.c:580
#, c-format
msgid "%9ld   Lines executed\n"
msgstr "%9ld   Yürütülen Satır\n"

#: basic_blocks.c:581
#, c-format
msgid "%9.2f   Percent of the file executed\n"
msgstr "%9.2f   Dosyanın yürütülen kısım yüzdesi\n"

#: basic_blocks.c:585
#, c-format
msgid ""
"\n"
"%9lu   Total number of line executions\n"
msgstr ""
"\n"
"%9lu   Toplam satır yürütüş sayısı\n"

#: basic_blocks.c:587
#, c-format
msgid "%9.2f   Average executions per line\n"
msgstr "%9.2f   Satır başına ortalama yürütüş sayısı\n"

#: call_graph.c:71
#, c-format
msgid "[cg_tally] arc from %s to %s traversed %lu times\n"
msgstr "[cg_tally] %s'dan %s'a olan yay %lu defa geçildi\n"

#: cg_print.c:73
msgid ""
"\t\t     Call graph (explanation follows)\n"
"\n"
msgstr ""
"\t\t     Çağrı grafiği (açıklama aşağıda)\n"
"\n"

#: cg_print.c:75
msgid ""
"\t\t\tCall graph\n"
"\n"
msgstr ""
"\t\t\tÇağrı grafiği\n"
"\n"

#: cg_print.c:78 hist.c:363
#, c-format
msgid ""
"\n"
"granularity: each sample hit covers %ld byte(s)"
msgstr ""
"\n"
"Öğe boyu: her örnek %ld bayt içermektedir"

#: cg_print.c:82
#, c-format
msgid ""
" for %.2f%% of %.2f seconds\n"
"\n"
msgstr ""
"Toplam %2$.2f saniyenin %1$.2f%%'si için\n"
"\n"

#: cg_print.c:86
msgid ""
" no time propagated\n"
"\n"
msgstr ""
" zaman ilerletilmedi\n"
"\n"

#: cg_print.c:95 cg_print.c:98 cg_print.c:100
msgid "called"
msgstr "çağrıldı"

#: cg_print.c:95 cg_print.c:100
msgid "total"
msgstr "toplam"

#: cg_print.c:95
msgid "parents"
msgstr "üstler"

#: cg_print.c:97 cg_print.c:98
msgid "index"
msgstr "indeks"

#: cg_print.c:97
#, c-format
msgid "%time"
msgstr "%time"

#: cg_print.c:97 cg_print.c:98
msgid "self"
msgstr "kendisi"

#: cg_print.c:97
msgid "descendants"
msgstr "astlar"

#: cg_print.c:98 hist.c:389
msgid "name"
msgstr "isim"

#: cg_print.c:100
msgid "children"
msgstr "astlar"

#: cg_print.c:105
#, c-format
msgid "index %% time    self  children    called     name\n"
msgstr "indeks %% zaman  kendi astlar      çağrıldı   isim\n"

#: cg_print.c:129
#, c-format
msgid " <cycle %d as a whole> [%d]\n"
msgstr " <%d'yi bütün olarak çevrimler> [%d]\n"

#: cg_print.c:363
#, c-format
msgid "%6.6s %5.5s %7.7s %11.11s %7.7s %7.7s     <spontaneous>\n"
msgstr "%6.6s %5.5s %7.7s %11.11s %7.7s %7.7s     <kendiliğinden>\n"

#: cg_print.c:364
#, c-format
msgid "%6.6s %5.5s %7.7s %7.7s %7.7s %7.7s     <spontaneous>\n"
msgstr "%6.6s %5.5s %7.7s %7.7s %7.7s %7.7s     <kendiliğinden>\n"

#: cg_print.c:604
msgid ""
"Index by function name\n"
"\n"
msgstr ""
"İşlev adına göre indeks\n"
"\n"

#: cg_print.c:661 cg_print.c:670
#, c-format
msgid "<cycle %d>"
msgstr "<çevrim %d>"

#: corefile.c:64
#, c-format
msgid "%s: could not open %s.\n"
msgstr "%s: %s açılamadı.\n"

#: corefile.c:78 corefile.c:112
#, c-format
msgid "%s: unable to parse mapping file %s.\n"
msgstr "%s: eşlem dosyası %s ayrıştırılamadı.\n"

#: corefile.c:155
#, c-format
msgid "%s: %s: not in a.out format\n"
msgstr "%s: %s: a.out biçeminde değil\n"

#: corefile.c:166
#, c-format
msgid "%s: can't find .text section in %s\n"
msgstr "%s: %s içerisinde .text (metin) bölümü bulunamadı\n"

#: corefile.c:225
#, c-format
msgid "%s: ran out room for %lu bytes of text space\n"
msgstr "%s: %lu bayt metin yeri için yer bulunamadı\n"

#: corefile.c:239
#, c-format
msgid "%s: can't do -c\n"
msgstr "%s: -c yapılamıyor\n"

#: corefile.c:276
#, c-format
msgid "%s: -c not supported on architecture %s\n"
msgstr "%s: -c %s platformu üzerinde desteklenmiyor\n"

#: corefile.c:447
#, c-format
msgid "%s: file `%s' has no symbols\n"
msgstr "%s: `%s' dosyası sembol içermiyor\n"

#: corefile.c:758
#, c-format
msgid "%s: somebody miscounted: ltab.len=%d instead of %ld\n"
msgstr "%1$s: hatalı sayım: %3$ld yerine ltab.len=%2$d\n"

#: gmon_io.c:82
#, c-format
msgid "%s: address size has unexpected value of %u\n"
msgstr "%s: adres boyu, beklenmeyen %u değerine sahip\n"

#: gmon_io.c:345 gmon_io.c:440
#, c-format
msgid "%s: file too short to be a gmon file\n"
msgstr "%s: Dosya bir gmon dosyası olmak için çok kısa\n"

#: gmon_io.c:355 gmon_io.c:483
#, c-format
msgid "%s: file `%s' has bad magic cookie\n"
msgstr "%s: `%s' dosyasında kötü sihirli çerez var\n"

#: gmon_io.c:366
#, c-format
msgid "%s: file `%s' has unsupported version %d\n"
msgstr "%s: `%s' dosyası desteklenmeyen %d sürümünde\n"

#: gmon_io.c:396
#, c-format
msgid "%s: %s: found bad tag %d (file corrupted?)\n"
msgstr "%s: %s: Hatalı etiket %d bulundu (dosya bozuk mu?)\n"

#: gmon_io.c:462
#, c-format
msgid "%s: profiling rate incompatible with first gmon file\n"
msgstr "%s: profilleme hızı ilk gmon dosyası ile uyumlu değil\n"

#: gmon_io.c:510
#, c-format
msgid "%s: incompatible with first gmon file\n"
msgstr "%s: ilk gmon dosyası ile uyumlu değil\n"

#: gmon_io.c:538
#, c-format
msgid "%s: file '%s' does not appear to be in gmon.out format\n"
msgstr "%s: '%s' dosyası gmon.out biçeminde değil\n"

#: gmon_io.c:559
#, c-format
msgid "%s: unexpected EOF after reading %d/%d bins\n"
msgstr "%s: %d/%d sele okunduktan sonra beklenmeyen dosyasonu (EOF) bulundu\n"

#: gmon_io.c:592
msgid "time is in ticks, not seconds\n"
msgstr "zaman tık olarak veriliyor, saniye olarak değil\n"

#: gmon_io.c:598 gmon_io.c:775
#, c-format
msgid "%s: don't know how to deal with file format %d\n"
msgstr "%s: %d dosya biçeminin nasıl işleneceği bilinmiyor\n"

#: gmon_io.c:605
#, c-format
msgid "File `%s' (version %d) contains:\n"
msgstr "`%s' Dosyası (%d sürümü) aşağıdakileri içeriyor:\n"

#: gmon_io.c:608
#, c-format
msgid "\t%d histogram record\n"
msgstr "\t%d geçmiş grafiği kaydı\n"

#: gmon_io.c:609
#, c-format
msgid "\t%d histogram records\n"
msgstr "\t%d geçmiş grafiği kayıtları\n"

#: gmon_io.c:611
#, c-format
msgid "\t%d call-graph record\n"
msgstr "\t%d çağrı grafiği kaydı\n"

#: gmon_io.c:612
#, c-format
msgid "\t%d call-graph records\n"
msgstr "\t%d çağrı grafiği kayıtları\n"

#: gmon_io.c:614
#, c-format
msgid "\t%d basic-block count record\n"
msgstr "\t%d temel blok sayım kaydı\n"

#: gmon_io.c:615
#, c-format
msgid "\t%d basic-block count records\n"
msgstr "\t%d temel blok sayım kayıtları\n"

#: gprof.c:163
#, c-format
msgid ""
"Usage: %s [-[abcDhilLsTvwxyz]] [-[ACeEfFJnNOpPqQZ][name]] [-I dirs]\n"
"\t[-d[num]] [-k from/to] [-m min-count] [-t table-length]\n"
"\t[--[no-]annotated-source[=name]] [--[no-]exec-counts[=name]]\n"
"\t[--[no-]flat-profile[=name]] [--[no-]graph[=name]]\n"
"\t[--[no-]time=name] [--all-lines] [--brief] [--debug[=level]]\n"
"\t[--function-ordering] [--file-ordering]\n"
"\t[--directory-path=dirs] [--display-unused-functions]\n"
"\t[--file-format=name] [--file-info] [--help] [--line] [--min-count=n]\n"
"\t[--no-static] [--print-path] [--separate-files]\n"
"\t[--static-call-graph] [--sum] [--table-length=len] [--traditional]\n"
"\t[--version] [--width=n] [--ignore-non-functions]\n"
"\t[--demangle[=STYLE]] [--no-demangle]\n"
"\t[image-file] [profile-file...]\n"
msgstr ""
"Kullanım: %s [-[abcDhilLsTvwxyz]] [-[ACeEfFJnNOpPqQZ][isim]] [-I dizinler]\n"
"\t[-d[sayı]] [-k hedeften/hedefe] [-m minimum-sayı] [-t tablo-uzunluğu]\n"
"\t[--[no-]annotated-source[=isim]]  açıklamalı kaynak kodunu gösterir/göstermez\n"
"\t[--[no-]exec-counts[=isim]]       yürütme sayısını gösterir/göstermez\n"
"\t[--[no-]flat-profile[=isim]]      düz profil çıktılar\n"
"\t[--[no-]graph[=isim]]             grafik çıktılar\n"
"\t[--[no-]time=isim]                zaman bilgisi çıktılar\n"
"\t[--all-lines]                     bütün satırları gösterir\n"
"\t[--brief]                         kısa çıktı verir\n"
"\t[--debug[=seviye]]                hata ayıklama seviyesini atar\n"
"\t[--function-ordering]             işlev adına göre sıralar\n"
"\t[--file-ordering]                 dosya adına göre sıralar\n"
"\t[--directory-path=dizinler]       dizin adres yolunu belirtir\n"
"\t[--display-unused-functions]      kullanılmayan işlevleri gösterir\n"
"\t[--file-format=isim]              dosya biçemini belirtir\n"
"\t[--file-info]                     dosya bilgisini gösterir\n"
"\t[--help]                          yardım bilgisi gösterir\n"
"\t[--line]                          satır bilgisi gösterir\n"
"\t[--min-count=n]                   minimum sayıyı atar\n"
"\t[--no-static]                     statik işlemleri yoksayar\n"
"\t[--print-path]                    yazdırma yolu\n"
"\t[--separate-files]                ayrı dosyalar\n"
"\t[--static-call-graph]             statik çağrı grafiği\n"
"\t[--sum]                           toplam\n"
"\t[--table-length=uzunluk]          tablo uzunluğu\n"
"\t[--traditional]                   geleneksel\n"
"\t[--version]                       sürüm bilgisi gösterir\n"
"\t[--width=n]                       genişlik\n"
"\t[--ignore-non-functions]          işlev olmayanları yoksayar\n"
"\t[--demangle[=TARZ]]               düzeltme tarzı atar\n"
"\t[--no-demangle]                   düzeltme uygulamaz\n"
"\t[görüntü-dosyası] [profil-dosyası...]\n"

#: gprof.c:179
#, c-format
msgid "Report bugs to %s\n"
msgstr ""
"Yazılım hatalarını %s adresine,\n"
"çeviri hatalarını <gnu-tr-u12a@lists.sourceforge.net> adresine gönderin\n"

#: gprof.c:253
#, c-format
msgid "%s: debugging not supported; -d ignored\n"
msgstr "%s: hata ayıklama desteklenmiyor; -d yoksayıldı\n"

#: gprof.c:333
#, c-format
msgid "%s: unknown file format %s\n"
msgstr "%s: bilinmeyen dosya biçemi %s\n"

#. This output is intended to follow the GNU standards document.
#: gprof.c:417
#, c-format
msgid "GNU gprof %s\n"
msgstr "GNU gprof %s\n"

#: gprof.c:418
msgid "Based on BSD gprof, copyright 1983 Regents of the University of California.\n"
msgstr "BSD gprof baz alınmıştır. BSD gprof Telif Hakkı 1983 Regents of the University of California.\n"

#: gprof.c:419
msgid "This program is free software.  This program has absolutely no warranty.\n"
msgstr "Bu yazılım bir serbest yazılımdır. Bu yazılımın herhangi bir garantisi yoktur.\n"

#: gprof.c:460
#, c-format
msgid "%s: unknown demangling style `%s'\n"
msgstr "%s: bilinmeyen düzeltme tarzı `%s'\n"

#: gprof.c:480
#, c-format
msgid "%s: Only one of --function-ordering and --file-ordering may be specified.\n"
msgstr ""
"%s: --function-ordering (işleve göre sırala) ve\n"
"    --file-ordering (dosyaya göre sırala) seçeneklerinin biri seçilebilir.\n"

#: gprof.c:578
#, c-format
msgid "%s: sorry, file format `prof' is not yet supported\n"
msgstr "%s: `prof' dosya biçemi henüz desteklenmiyor\n"

#: gprof.c:639
#, c-format
msgid "%s: gmon.out file is missing histogram\n"
msgstr "%s: gmon.out dosyasında geçmiş grafiği yok\n"

#: gprof.c:646
#, c-format
msgid "%s: gmon.out file is missing call-graph data\n"
msgstr "%s: gmon.out dosyasında çağrı grafik verisi yok\n"

#: hist.c:127
#, c-format
msgid "%s: `%s' is incompatible with first gmon file\n"
msgstr "%s: `%s' ilk gmon dosyası ile uyumlu değil\n"

#: hist.c:143
#, c-format
msgid "%s: %s: unexpected EOF after reading %d of %d samples\n"
msgstr ""
"%1$s: %2$s: Toplam %4$d örneğin %3$d'si okunduktan sonra\n"
"beklenmeyen dosyasonu(EOF) bulundu\n"

#: hist.c:359
#, c-format
msgid "%c%c/call"
msgstr "%c%c/çağrı"

#: hist.c:367
#, c-format
msgid ""
" for %.2f%% of %.2f %s\n"
"\n"
msgstr ""
" Toplam %2$.2f %3$s'nin %1$.2f%%'si okundu\n"
"\n"

#: hist.c:373
#, c-format
msgid ""
"\n"
"Each sample counts as %g %s.\n"
msgstr ""
"\n"
"Her örnek %g %s sayılıyor.\n"

#: hist.c:378
msgid ""
" no time accumulated\n"
"\n"
msgstr ""
" zamanlama değeri biriktirilemedi\n"
"\n"

#: hist.c:385
msgid "cumulative"
msgstr "birikmiş"

#: hist.c:385
msgid "self  "
msgstr "kendisi  "

#: hist.c:385
msgid "total "
msgstr "toplam "

#: hist.c:388
msgid "time"
msgstr "zaman"

#: hist.c:388
msgid "calls"
msgstr "çağrı"

#: hist.c:481
msgid ""
"\n"
"\n"
"\n"
"flat profile:\n"
msgstr ""
"\n"
"\n"
"\n"
"düz profil:\n"

#: hist.c:487
msgid "Flat profile:\n"
msgstr "Düz profil:\n"

#: mips.c:85
#, c-format
msgid "[find_call] 0x%lx: jal"
msgstr "[find_call] 0x%lx: jal"

#: mips.c:110
#, c-format
msgid "[find_call] 0x%lx: jalr\n"
msgstr "[find_call] 0x%lx: jalr\n"

#: source.c:166
#, c-format
msgid "%s: could not locate `%s'\n"
msgstr "%s: `%s' bulunamadı\n"

#: source.c:241
#, c-format
msgid "*** File %s:\n"
msgstr "*** %s Dosyası:\n"

#: utils.c:109
#, c-format
msgid " <cycle %d>"
msgstr " <çevrim %d>"

#~ msgid "%s: bfd_vma has unexpected size of %ld bytes\n"
#~ msgstr "%s: beklenmeyen boyut: bfd_vma'nın boyutu %ld bayt\n"
