perlcygwin - Dalam talian di Awan

Ini ialah arahan perlcygwin yang boleh dijalankan dalam penyedia pengehosan percuma OnWorks menggunakan salah satu daripada berbilang stesen kerja dalam talian percuma kami seperti Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS.

JADUAL:

NAMA


perlcygwin - Perl untuk Cygwin

SINOPSIS


Dokumen ini akan membantu anda mengkonfigurasi, membuat, menguji dan memasang Perl pada Cygwin. ini
dokumen juga menerangkan ciri Cygwin yang akan mempengaruhi cara Perl berkelakuan semasa masa jalan.

PERHATIAN: Terdapat pakej Perl pra-bina tersedia untuk Cygwin dan versi Perl adalah
disediakan dalam pemasangan Cygwin biasa. Jika anda tidak perlu menyesuaikan konfigurasi,
pertimbangkan untuk menggunakan salah satu daripada pakej tersebut.

PRASUITAS UNTUK MENYUSUN mutiara ON CYGWIN


Cygwin = GNU+Cygnus+Windows (Jangan meninggalkan UNIX tanpa ia)
Alat Cygwin ialah pelabuhan alat pembangunan GNU yang popular untuk platform Win32. mereka
dijalankan terima kasih kepada perpustakaan Cygwin yang menyediakan panggilan sistem UNIX dan persekitaran
program-program ini dijangka. Maklumat lanjut mengenai projek ini boleh didapati di:

<http://www.cygwin.com/>

Keluaran bersih atau komersil Cygwin baru-baru ini diperlukan.

Pada masa dokumen ini dikemas kini kali terakhir, Cygwin 1.7.16 adalah terkini.

Cygwin konfigurasi
Semasa membina Perl, beberapa perubahan mungkin diperlukan untuk persediaan Cygwin anda supaya Perl membina
dengan bersih. Perubahan ini adalah tidak diperlukan untuk penggunaan Perl biasa.

PERHATIAN: Binari yang dibina akan dijalankan pada semua versi Win32. Mereka tidak bergantung kepada
sistem hos anda (WinXP/Win2K/Win7) atau konfigurasi Cygwin anda (lekapkan binari/teks,
cvgserver). Satu-satunya kebergantungan datang daripada nama laluan berkod keras seperti / usr / setempat.
Walau bagaimanapun, sistem hos anda dan konfigurasi Cygwin akan mempengaruhi gelagat masa jalan Perl
(lihat "UJIAN").

· "JALAN"

Tetapkan pembolehubah persekitaran "PATH" supaya Konfigurasi menemui versi Cygwin
program. Mana-mana direktori Windows yang tidak diperlukan harus dialih keluar atau dialihkan ke penghujung
"JALAN" anda.

· nroff

Jika anda tidak mempunyai nroff (yang merupakan sebahagian daripada mengarut pakej), Konfigurasikan kehendak tidak
menggesa anda untuk memasang lelaki halaman.

CONFIGURE mutiara ON CYGWIN


Pilihan lalai yang dikumpulkan oleh Konfigurasikan dengan bantuan daripada petunjuk/cygwin.sh akan
bina Perl yang menyokong pemuatan dinamik (yang memerlukan perkongsian cygperl5_16.dll).

Ini akan menjalankan Konfigurasi dan menyimpan rekod:

./Konfigurasikan 2>&1 | tee log.configure

Jika anda bersedia menerima semua lalai jalankan Configure with -daripada. Walau bagaimanapun, beberapa
penyesuaian berguna tersedia.

Perlucutan Perl Binari on Cygwin
Adalah mungkin untuk menanggalkan EXE dan DLL yang dicipta oleh proses binaan. Yang terhasil
binari akan menjadi lebih kecil. Jika anda mahu binari dilucutkan, anda boleh
sama ada tambah a -s pilihan apabila Konfigurasikan menggesa anda,

Sebarang bendera ld tambahan (TIDAK termasuk perpustakaan)? [tiada] -s
Sebarang bendera khas untuk dihantar ke g++ untuk mencipta perpustakaan yang dimuatkan secara dinamik?
[tiada] -s
Sebarang bendera khas untuk dihantar ke gcc untuk menggunakan pemautan dinamik? [tiada] -s

atau anda boleh mengedit petunjuk/cygwin.sh dan nyahkomen pembolehubah yang berkaitan berhampiran penghujung
fail.

Pilihan Perpustakaan khususnya Perl on Cygwin
Beberapa fungsi dan modul Perl bergantung pada kewujudan beberapa perpustakaan pilihan.
Konfigurasi akan menemuinya jika ia dipasang dalam salah satu direktori yang disenaraikan sebagai sedang
digunakan untuk carian perpustakaan. Pakej pra-bina untuk kebanyakan ini boleh didapati daripada
Pemasang Cygwin.

· "-lcrypt"

Pakej crypt yang diedarkan dengan Cygwin ialah port crypt DES 56-bit yang serasi dengan Linux
oleh Corinna Vinschen.

Sebagai alternatif, perpustakaan crypt dalam GNU libc telah dialihkan ke Cygwin.

· "-lgdbm_compat" ("gunakan GDBM_File")

GDBM tersedia untuk Cygwin.

NOTA: Pustaka GDBM hanya berfungsi pada partition NTFS.

· "-ldb" ("gunakan DB_File")

BerkeleyDB tersedia untuk Cygwin.

NOTA: Pustaka BerkeleyDB hanya berfungsi sepenuhnya pada partition NTFS.

· "cygserver" ("gunakan IPC::SysV")

Port SysV IPC tersedia untuk Cygwin.

NOTA: Ini telah tidak telah diuji secara meluas. Khususnya, "d_semctl_semun" ialah
tidak ditentukan kerana ia gagal dalam ujian Konfigurasi dan pada Win9x shm*() fungsi nampaknya
gantung. Ia juga mewujudkan kebergantungan masa kompilasi kerana perl.h termasuk <sys/ipc.h>
and <sys/sem.h> (yang akan diperlukan pada masa hadapan apabila menyusun modul CPAN).
PADA MASA INI TIDAK DISOKONG!

· "-lutil"

Termasuk dengan netrelease Cygwin standard ialah pakej inetutils yang termasuk
libutil.a.

Konfigurasi-masa Pilihan khususnya Perl on Cygwin
. MEMASANG dokumen menerangkan beberapa pilihan Konfigurasi-masa. Sebahagian daripada ini akan berfungsi
dengan Cygwin, yang lain masih belum dapat dilakukan. Juga, sebahagian daripada ini adalah percubaan. Awak boleh
sama ada pilih pilihan apabila Konfigurasikan menggesa anda atau anda boleh mentakrifkan (nyahtakrif) simbol dihidupkan
baris arahan.

· "-Uusedl"

Menyahtakrifkan simbol ini memaksa Perl untuk disusun secara statik.

· "-Dusemymalloc"

Secara lalai Perl tidak menggunakan "malloc()" yang disertakan dengan sumber Perl, kerana ia
adalah lebih perlahan dan tidak sepenuhnya selamat untuk benang. Jika anda ingin memaksa Perl untuk membina dengan
lama -Dusemymalloc mentakrifkan ini.

· "-Uuseperlio"

Menyahtakrifkan simbol ini melumpuhkan abstraksi PerlIO. PerlIO kini menjadi lalai; ia
tidak disyorkan untuk melumpuhkan PerlIO.

· "-Dusemultiplicity"

Kepelbagaian diperlukan apabila membenamkan Perl dalam program C dan menggunakan lebih daripada satu
contoh jurubahasa. Ini hanya diperlukan apabila anda membina perl tidak berulir dengan
"-Uuseithreads".

· "-Uuse64bitint"

Secara lalai Perl menggunakan integer 64 bit. Jika anda ingin menggunakan integer 32 bit yang lebih kecil,
tentukan simbol ini.

· "-Duselongdouble"

gcc menyokong beregu panjang (12 bait). Walau bagaimanapun, beberapa matematik berganda panjang tambahan
fungsi diperlukan untuk menggunakannya dalam Perl ({atan2, sebab, exp, lantai, fmod, frex,
isnan, log, modf, pow, dosa, sqrt}l, strtold). Ini adalah tidak lagi tersedia dengan
newlib, libc Cygwin.

· "-Uuseithreads"

Tentukan simbol ini jika anda mahukan perl yang tidak berulir lebih cepat.

· "-Duselargefiles"

Cygwin menggunakan integer 64-bit untuk pengiraan saiz dan kedudukan dalaman, ini akan menjadi
dikesan dan ditakrifkan dengan betul oleh Configure.

· "-Dmksymlinks"

Gunakan ini untuk membina perl di luar pepohon sumber. Butiran boleh didapati dalam
MEMASANG dokumen. Ini ialah cara yang disyorkan untuk membina perl daripada sumber.

Mencurigakan Amaran on Cygwin
Anda mungkin melihat beberapa mesej semasa Konfigurasikan yang kelihatan mencurigakan.

· Win9x dan "d_eofnblk"

Win9x tidak melaporkan "EOF" dengan betul dengan bacaan tanpa sekatan pada paip tertutup. awak
akan melihat mesej berikut:

Tetapi ia juga mengembalikan -1 untuk memberi isyarat kepada EOF, jadi berhati-hati!
AMARAN: anda tidak boleh membezakan antara EOF dan tiada data!

*** SIAPA DIA!!! ***
Nilai yang disyorkan untuk $d_eofnblk pada mesin ini ialah "define"!
Kekalkan nilai yang disyorkan? [y]

Sekurang-kurangnya untuk konsisten dengan WinNT, anda harus mengekalkan nilai yang disyorkan.

· Penyusun/Preprocessor mentakrifkan

Ralat berikut berlaku kerana Cygwin "#define" daripada "_LONG_DOUBLE":

Meneka simbol yang ditakrifkan oleh pengkompil dan prapemproses C anda...
cuba.c: : operator binari hilang

Kegagalan ini nampaknya tidak menimbulkan sebarang masalah. Dengan versi gcc yang lebih lama, "parse
ralat" dilaporkan dan bukannya "pengendali binari yang hilang".

JADIKAN ON CYGWIN


Lari sahaja membuat dan tunggu:

buat 2>&1 | tee log.membuat

UJIAN ON CYGWIN


Terdapat dua langkah untuk menjalankan suite ujian:

buat ujian 2>&1 | tee log.make-test

cd t; ./perl abah-abah 2>&1 | tee ../log.harness

Ujian yang sama dijalankan kedua-dua kali, tetapi lebih banyak maklumat disediakan apabila dijalankan sebagai
"./perl harness".

Keputusan ujian berbeza-beza bergantung pada sistem hos anda dan konfigurasi Cygwin anda. Jika ujian
boleh lulus dalam beberapa persediaan Cygwin, ia sentiasa dicuba dan kegagalan ujian yang boleh dijelaskan adalah
didokumenkan. Perl adalah mungkin untuk lulus semua ujian, tetapi kemungkinan besar itu
beberapa ujian akan gagal kerana salah satu sebab yang disenaraikan di bawah.

File Kebenaran on Cygwin
Kebenaran fail UNIX adalah berdasarkan set bit mod untuk {read,write,execute} untuk setiap bit
{pengguna,kumpulan,lain}. Secara lalai Cygwin hanya menjejaki atribut baca sahaja Win32
diwakili sebagai bit tulis pengguna fail UNIX (fail sentiasa boleh dibaca, fail adalah
boleh dilaksanakan jika mereka mempunyai a .{com,bat,exe} sambungan atau mulakan dengan "#!", direktori ialah
sentiasa boleh dibaca dan boleh dilaksanakan). Pada WinNT dengan teh Tetapan "CYGWIN", tambahan
bit mod disimpan sebagai atribut fail lanjutan. Pada WinNT dengan lalai ntsec
Tetapan "CYGWIN", kebenaran menggunakan deskriptor dan akses keselamatan WinNT standard
senarai kawalan. Tanpa salah satu daripada pilihan ini, ujian ini akan gagal (penyenaraian tidak dikemas kini
belum lagi):

Ujian Gagal Senarai gagal
------------------------------------
io/fs.t 5, 7, 9-10
lib/anydbm.t 2
lib/db-btree.t 20
lib/db-hash.t 16
lib/db-recno.t 18
lib/gdbm.t 2
lib/ndbm.t 2
lib/odbm.t 2
lib/sdbm.t 2
op/stat.t 9, 20 (.tmp bukan sambungan boleh laku)

NDBM_Fail and ODBM_Fail do tidak bekerja on LEMAK sistem fail
Jangan gunakan NDBM_File atau ODBM_File pada sistem fail FAT. Mereka boleh dibina di atas FAT
sistem fail, tetapi banyak ujian akan gagal:

../ext/NDBM_File/ndbm.t 13 3328 71 59 83.10% 1-2 4 16-71
../ext/ODBM_File/odbm.t 255 65280 ?? ?? % ??
../lib/AnyDBM_File.t 2 512 12 2 16.67% 1 4
../lib/Memoize/t/errors.t 0 139 11 5 45.45% 7-11
../lib/Memoize/t/tie_ndbm.t 13 3328 4 4 100.00% 1-4
run/fresh_perl.t 97 1 1.03% 91

Jika anda berhasrat untuk menjalankan hanya pada FAT (atau jika menggunakan AnyDBM_File pada FAT), jalankan Configure dengan
Pilihan -Ui_ndbm dan -Ui_dbm untuk menghalang NDBM_File dan ODBM_File dibina.

Dengan NTFS (dan tiada CYGWIN=nontsec), sepatutnya tiada masalah walaupun perl dibina pada
LEMAK.

"garpu()" kegagalan in io_* ujian
Kegagalan "fork()" boleh mengakibatkan ujian berikut gagal:

ext/IO/lib/IO/t/io_multihomed.t
ext/IO/lib/IO/t/io_sock.t
ext/IO/lib/IO/t/io_unix.t

Lihat ulasan tentang garpu dalam "Pelbagai" di bawah.

Khusus ciri-ciri of yang Cygwin pelabuhan


skrip Kemudahalihan on Cygwin
Cygwin melakukan tugas yang cemerlang dalam menyediakan semantik seperti UNIX di atas sistem Win32.
Walau bagaimanapun, sebagai tambahan kepada perkara yang dinyatakan di atas, terdapat beberapa perbezaan yang perlu anda lakukan
tahu tentang. Ini adalah panduan yang sangat ringkas untuk mudah alih, lebih banyak maklumat boleh didapati di
dokumentasi Cygwin.

· Nama laluan

Nama laluan Cygwin dipisahkan oleh hadapan (/) garis miring, Kod Penamaan Universal (//UNC)
juga disokong Oleh kerana nama laluan bukan POSIX cygwin-1.7 tidak digalakkan. Nama boleh
mengandungi semua aksara yang boleh dicetak.

Nama fail tidak sensitif huruf besar-besaran, tetapi mengekalkan huruf besar. Nama laluan yang mengandungi a
garis miring ke belakang atau huruf pemacu ialah nama laluan Win32, dan tidak tertakluk kepada terjemahan
digunakan pada nama laluan gaya POSIX, tetapi cygwin akan memberi amaran kepada anda, jadi lebih baik tukarkannya kepada
POSIX.

Untuk penukaran kami mempunyai "Cygwin::win_to_posix_path()" dan
"Cygwin::posix_to_win_path()".

Memandangkan nama laluan cygwin-1.7 dikodkan UTF-8.

· Teks/Perduaan

Memandangkan cygwin-1.7 textmounts telah ditamatkan dan sangat tidak digalakkan.

Apabila fail dibuka, ia berada dalam mod teks atau binari. Dalam mod teks, fail adalah
tertakluk kepada terjemahan CR/LF/Ctrl-Z. Dengan Cygwin, mod lalai untuk "open()"
ditentukan oleh mod pelekap yang mendasari fail. Lihat
"Cygwin::is_binmount"(). Perl menyediakan fungsi "binmode()" untuk menghidupkan mod binari
fail yang sebaliknya akan dianggap sebagai teks. "sysopen()" dengan bendera "O_TEXT".
menetapkan mod teks pada fail yang sebaliknya akan dianggap sebagai binari:

sysopen(FOO, "bar", O_WRONLY|O_CREAT|O_TEXT)

"lseek()", "tell()" dan "sysseek()" hanya berfungsi dengan fail yang dibuka dalam mod binari.

Isu teks/perduaan dibincangkan dengan panjang lebar dalam dokumentasi Cygwin.

· PerlIO

PerlIO mengatasi gelagat Cygwin Text/Binari lalai. Fail akan sentiasa ada
dianggap sebagai perduaan, tanpa mengira mod lekap yang ia hidup, sama seperti ia berada
UNIX. Jadi terjemahan CR/LF perlu diminta sama ada dalam panggilan "open()" seperti
ini:

open(FH, ">:crlf", "out.txt");

yang akan melakukan penukaran daripada LF kepada CR/LF pada output, atau dalam persekitaran
tetapan (tambah ini pada .bashrc anda):

eksport PERLIO=crlf

yang akan menarik lapisan crlf PerlIO yang melakukan penukaran LF -> CRLF pada setiap
output yang dihasilkan oleh perl.

· .exe

Fungsi Cygwin "stat()", "lstat()" dan "readlink()" menjadikan .exe lanjutan
telus dengan mencari foo.exe apabila anda meminta foo (kecuali a foo juga wujud).
Cygwin tidak memerlukan a .exe sambungan, tetapi gcc menambahkannya secara automatik apabila membina
sesuatu program. Walau bagaimanapun, apabila mengakses boleh laku sebagai fail biasa (cth, cp dalam
makefile) yang .exe tidak telus. The memasang program disertakan dengan Cygwin
secara automatik menambah a .exe apabila perlu.

· Cygwin lwn. id proses Windows

Proses Cygwin mempunyai pid sendiri, yang berbeza daripada tetingkap asas
pid. Kebanyakan fungsi Proc yang mematuhi posix mengharapkan pid cygwin, tetapi beberapa
Win32:: Fungsi proses mengharapkan winpid. Cth $$ ialah pid cygwin daripada
/usr/bin/perl, yang bukan winpid. Gunakan "Cygwin::pid_to_winpid()" dan
"Cygwin::winpid_to_pid()" untuk menterjemah antara mereka.

· Ralat Cygwin lwn. Windows

Di bawah Cygwin, $^E adalah sama dengan $!. Apabila menggunakan Fungsi API Win32, gunakan
"Win32::GetLastError()" untuk mendapatkan ralat Windows terakhir.

· asas semula ralat pada garpu atau sistem

Menggunakan "fork()" atau "system()" ke perl lain selepas memuatkan berbilang dll boleh
terhasil pada konflik alamat asas DLL. Ralat cygwin dalaman kelihatan seperti
Berikut:

0 [utama] perl 8916 child_info_fork::abort: permulaan segmen data: ibu bapa
(0xC1A000) != kanak-kanak(0xA6A000)

atau:

183 [utama] perl 3588 C:\cygwin\bin\perl.exe: *** ralat maut - tidak dapat memetakan semula
C:\cygwin\bin\cygsvn_subr-1-0.dll ke alamat yang sama seperti ibu bapa(0x6FB30000) != 0x6FE60000
46 [utama] perl 3488 garpu: anak 3588 - meninggal dunia menunggu pemuatan dll, errno11

Lihathttp://cygwin.com/faq/faq-nochunks.html#faq.using.fixing-fork-failures> Ia membantu
jika tidak terlalu banyak DLL dimuatkan dalam ingatan supaya ruang alamat yang tersedia lebih besar,
cth menghentikan MS Internet Explorer mungkin membantu.

Gunakan utiliti perlrebase atau rebase untuk menyelesaikan alamat dll yang bercanggah. The
pakej rebase disertakan dalam persediaan Cygwin. guna Setup.exe dari
<http://www.cygwin.com/setup.exe> untuk memasangnya.

1. bunuh semua proses perl dan jalankan "perlrebase" atau

2. bunuh semua proses dan perkhidmatan cygwin, mulakan dash dari cmd.exe dan jalankan
"rebaseall".

· "chown()"

Pada WinNT "chown()" boleh menukar ID pengguna dan kumpulan fail. Pada Win9x "chown()" ialah a
no-op, walaupun ini sesuai kerana tiada model keselamatan.

· Pelbagai

Penguncian fail menggunakan arahan "F_GETLK" kepada "fcntl()" ialah stub yang mengembalikan "ENOSYS".

Win9x tidak boleh "menamakan semula()" fail yang terbuka (walaupun WinNT boleh).

Pelaksanaan "chroot()" Cygwin mempunyai lubang (ia tidak boleh menyekat akses fail oleh
program Win32 asli).

Pengeditan ganti "perl -i" fail tidak berfungsi tanpa membuat sandaran fail
sedang disunting "perl -i.bak" kerana sekatan windowish, oleh itu Perl menambah
akhiran ".bak" secara automatik jika anda menggunakan "perl -i" tanpa menyatakan sandaran
sambungan.

prabina kaedah:
"Cwd::cwd"
Mengembalikan direktori kerja semasa.

"Cygwin::pid_to_winpid"
Menterjemahkan pid cygwin kepada pid Windows yang sepadan (yang mungkin atau mungkin bukan
sama).

"Cygwin::winpid_to_pid"
Menterjemah pid Windows kepada pid cygwin yang sepadan (jika ada).

"Cygwin::win_to_posix_path"
Menterjemah laluan Windows ke laluan cygwin yang sepadan yang menghormati arus
mata lekap. Dengan argumen bukan nol kedua mengembalikan laluan mutlak. Bait berganda
aksara tidak akan diterjemahkan.

"Cygwin::posix_to_win_path"
Menterjemah laluan cygwin kepada laluan cygwin yang sepadan berkenaan lekapan semasa
mata. Dengan argumen bukan nol kedua mengembalikan laluan mutlak. Bait berganda
aksara tidak akan diterjemahkan.

"Cygwin::mount_table()"
Mengembalikan tatasusunan [mnt_dir, mnt_fsname, mnt_type, mnt_opts].

perl -e 'untuk $i (Cygwin::mount_table) {print join(" ",@$i),"\n";}'
/ bin c:\cygwin\bin system binmode,cygexec
/ usr / bin c:\cygwin\bin system binmode
/ usr / lib c:\cygwin\lib sistem binmode
/ c:\cygwin system binmode
/cygdrive/cc: system binmode,noumount
/cygdrive/dd: sistem binmode,noumount
/cygdrive/ee: sistem binmode,noumount

"Cygwin::mount_flags"
Mengembalikan jenis lekap dan bendera untuk titik lekap yang ditentukan. Dipisahkan koma
rentetan mntent->mnt_type (sentiasa "sistem" atau "pengguna"), kemudian mntent->mnt_opts,
di mana yang pertama sentiasa "binmode" atau "textmode".

sistem|pengguna,binmode|textmode,exec,cygexec,cygdrive,mixed,
notexec,terurus,nosuid,devfs,proc,noumount

Jika hujahnya ialah "/cygdrive", maka hanya tetapan pelekap volum dan cygdrive
awalan pelekap dikembalikan.

Lekapan pengguna mengatasi lekapan sistem.

$ perl -e 'print Cygwin::mount_flags "/ usr / bin"'
sistem, binmode, cygexec
$ perl -e 'print Cygwin::mount_flags "/cygdrive"'
binmode,cygdrive,/cygdrive

"Cygwin::is_binmount"
Mengembalikan benar jika laluan cygwin yang diberikan dipasang binari, palsu jika laluan itu dipasang
dalam mod teks.

"Cygwin::sync_winenv"
Cygwin tidak memulakan semua pembolehubah persekitaran Win32 asal. Lihat bahagian bawah
daripada halaman inihttp://cygwin.com/cygwin-ug-net/setup-env.html> untuk "Win32 Terhad
persekitaran".

Program Win32 tertentu yang dipanggil daripada program cygwin mungkin memerlukan beberapa persekitaran
pembolehubah, seperti contohnya ADODB memerlukan %COMMONPROGRAMFILES%. Panggil Cygwin::sync_winenv()
untuk menyalin semua pembolehubah persekitaran Win32 ke proses anda dan ambil perhatian bahawa cygwin akan memberi amaran
pada setiap pertemuan laluan bukan POSIX.

MEMASANG mutiara ON CYGWIN


Ini akan memasang Perl, termasuk lelaki halaman.

buat pemasangan 2>&1 | tee log.make-install

NOTA: Jika "STDERR" diubah hala "buat pemasangan" akan tidak menggesa anda untuk memasang perl ke dalam
/ usr / bin.

Anda mungkin perlu begitu pentadbir untuk menjalankan "make install". Jika anda tidak, anda mesti mempunyai
akses tulis kepada direktori yang berkenaan.

Maklumat tentang memasang dokumentasi Perl dalam format HTML boleh didapati dalam
MEMASANG dokumen.

NYATA ON CYGWIN


Ini ialah fail dalam keluaran Perl yang mengandungi rujukan kepada Cygwin. Ini sangat
nota ringkas cuba menerangkan sebab semua kod bersyarat. Mudah-mudahan, menjaga
ini yang terkini akan membolehkan pelabuhan Cygwin disimpan sebersih mungkin.

dokumentasi
PASANG README.cygwin README.win32 MANIFEST
pod/perl.pod pod/perlport.pod pod/perlfaq3.pod
pod/perldelta.pod pod/perl5004delta.pod pod/perl56delta.pod
pod/perl561delta.pod pod/perl570delta.pod pod/perl572delta.pod
pod/perl573delta.pod pod/perl58delta.pod pod/perl581delta.pod
pod/perl590delta.pod pod/perlhist.pod pod/perlmodlib.pod
pod/perltoc.pod Porting/Glosari pod/perlgit.pod
Porting/checkAUTHORS.pl
dist/Cwd/Changes ext/Compress-Raw-Zlib/Changes
ext/Compress-Raw-Zlib/README ext/Compress-Zlib/Perubahan
ext/DB_File/Change ext/Encode/Change ext/Sys-Syslog/Changes
ext/Time-HiRes/Changes ext/Win32API-File/Changes
lib/ExtUtils/CBuilder/Tukar lib/ExtUtils/Tukar lib/ExtUtils/NOTA
lib/ExtUtils/PATCHING lib/ExtUtils/README
lib/Net/Ping/Changes lib/Test/Harness/Changes
lib/Term/ANSIColor/ChangeLog lib/Term/ANSIColor/README README.symbian
symbian/TODO

Bina, Konfigurasikan, Buat, Pasang
cygwin/Makefile.SHs
ext/IPC/SysV/hints/cygwin.pl
ext/NDBM_File/hints/cygwin.pl
ext/ODBM_File/hints/cygwin.pl
petunjuk/cygwin.sh
Konfigurasikan - bantu mencari petunjuk daripada uname,
libperl dikongsi diperlukan untuk pemuatan dinamik
Makefile.SH Cross/Makefile-cross-SH
- linklibperl
Porting/patchls - cygwin dalam senarai port
installman - halaman manual dengan :: diterjemahkan ke .
installperl - pasang dll, pasang ke 'pod'
makedepend.SH - uwinfix
regen_lib.pl - kebenaran fail

NetWare/Makefile
plan9/mkfile
symbian/sanity.pl symbian/sisify.pl
petunjuk/uwin.sh
vms/descrip_mms.template
win32/Makefile win32/makefile.mk

Ujian
t/io/fs.t - tiada mod fail menyemak jika tidak ntsec
langkau rename() semak apabila tidak check_case:relaxed
t/io/tell.t - binmode
t/lib/cygwin.t - ujian fungsi cygwin terbina
t/op/groups.t - kumpulan asas mempunyai ID = 0
t/op/magic.t - $^X/symlink WORKAROUND, s/.exe//
t/op/stat.t - tidak / dev, langkau Win32 ftCreationTime quirk
(pengurus cache kadangkala mengekalkan ctime fail
sebelum ini dibuat dan dipadamkan), no -u (setuid)
t/op/taint.t - tidak boleh menggunakan laluan kosong di bawah Cygwin Perl
t/op/time.t - tiada tzset()

Sumber Perl yang disusun
EXTERN.h - __declspec(dllimport)
XSUB.h - __declspec(dllexport)
cygwin/cygwin.c - os_extras (getcwd, spawn, dan beberapa fungsi Cygwin::)
perl.c - os_extras, -i.bak
perl.h - binmode
doio.c - win9x tidak boleh menamakan semula fail apabila ia dibuka
pp_sys.c - jangan takrifkan h_errno, init _pwent_struct.pw_comment
util.c - gunakan setenv
util.h - makro PERL_FILE_IS_ABSOLUTE
pp.c - Komen tentang matematik Posix lwn IEEE di bawah Cygwin
perlio.c - mod CR/LF
perliol.c - Komen tentang EXTCONST di bawah Cygwin

Sumber Modul Tersusun
ext/Compress-Raw-Zlib/Makefile.PL
- Tidak dapat memasang melalui cangkerang CPAN di bawah Cygwin
ext/Compress-Raw-Zlib/zlib-src/zutil.h
- Cygwin adalah seperti Unix dan mempunyai vsnprintf
ext/Errno/Errno_pm.PL - Pengendalian khas untuk Win32 Perl di bawah Cygwin
ext/POSIX/POSIX.xs - tzname ditakrifkan secara luaran
ext/SDBM_File/sdbm/pair.c
- EXTCONST perlu ditakrifkan semula daripada EXTERN.h
ext/SDBM_File/sdbm/sdbm.c
- binari terbuka
ext/Sys/Syslog/Syslog.xs
- Cygwin mempunyai syslog.h
ext/Sys/Syslog/win32/compile.pl
- Tukar laluan kepada laluan Windows
ext/Time-HiRes/HiRes.xs
- Pelbagai pemasa tidak tersedia
ext/Time-HiRes/Makefile.PL
- Cari w32api/windows.h
ext/Win32/Makefile.PL - Gunakan pelbagai perpustakaan di bawah Cygwin
ext/Win32/Win32.xs - Dir kanak-kanak dan env kanak-kanak di bawah Cygwin
ext/Win32API-File/File.xs
- _open_osfhandle tidak dilaksanakan di bawah Cygwin
ext/Win32CORE/Win32CORE.c
- __declspec(dllexport)

Modul/Skrip Perl
ext/B/t/OptreeCheck.pm - Komen tentang pesanan stderr/stdout di bawah Cygwin
ext/Digest-SHA/bin/shasum
- Gunakan mod binari di bawah Cygwin
ext/Sys/Syslog/win32/Win32.pm
- Tukar laluan kepada laluan Windows
ext/Time-HiRes/HiRes.pm
- Komen tentang pelbagai pemasa tidak tersedia
ext/Win32API-File/File.pm
- _open_osfhandle tidak dilaksanakan di bawah Cygwin
ext/Win32CORE/Win32CORE.pm
- Sejarah Win32CORE di bawah Cygwin
lib/Cwd.pm - cangkuk ke Cwd::cwd dalaman
lib/ExtUtils/CBuilder/Platform/cygwin.pm
- gunakan gcc untuk ld, dan pautan ke libperl.dll.a
lib/ExtUtils/CBuilder.pm
- Cygwin adalah seperti Unix
lib/ExtUtils/Install.pm - Pasang dan namakan semula isu di bawah Cygwin
lib/ExtUtils/MM.pm - Klasifikasi OS
lib/ExtUtils/MM_Any.pm - Contoh untuk Cygwin
lib/ExtUtils/MakeMaker.pm
- memerlukan MM_Cygwin.pm
lib/ExtUtils/MM_Cygwin.pm
- canonpath, cflags, manifypods, perl_archive
lib/File/Fetch.pm - Komen tentang petikan menggunakan contoh Cygwin
lib/File/Find.pm - pada pemacu jauh stat() sentiasa menetapkan st_nlink kepada 1
lib/File/Spec/Cygwin.pm - case_tolerant
lib/File/Spec/Unix.pm - simpan //unc
lib/File/Spec/Win32.pm - Merujuk mesej di cygwin.com
lib/File/Spec.pm - Tarik masuk lib/File/Spec/Cygwin.pm
lib/File/Temp.pm - tiada direktori melekit sedikit
lib/Module/CoreList.pm - Senarai semua fail modul dan versi
lib/Net/Domain.pm - Tiada arahan nama domain di bawah Cygwin
lib/Net/Netrc.pm - Pintasan menggunakan stat() di bawah Cygwin
lib/Net/Ping.pm - ECONREFUSED adalah EAGAIN di bawah Cygwin
lib/Pod/Find.pm - Tetapkan dir 'pods'
lib/Pod/Perldoc/ToMan.pm - suis '-c' untuk pod2man
lib/Pod/Perldoc.pm - Gunakan alat kelui 'kurang' dan gunakan sambungan .exe
lib/Term/ANSIColor.pm - Maklumat terminal Cygwin
lib/perl5db.pl - gunakan stdin bukan /dev/tty
utils/perlbug.PL - Tambahkan pembolehubah persekitaran CYGWIN untuk dilaporkan

Ujian Modul Perl
dist/Cwd/t/cwd.t
ext/Compress-Zlib/t/14gzopen.t
ext/DB_File/t/db-btree.t
ext/DB_File/t/db-hash.t
ext/DB_File/t/db-recno.t
ext/DynaLoader/t/DynaLoader.t
ext/File-Glob/t/basic.t
ext/GDBM_File/t/gdbm.t
ext/POSIX/t/sysconf.t
samb/POSIX/t/time.t
ext/SDBM_File/t/sdbm.t
ext/Sys/Syslog/t/syslog.t
ext/Time-HiRes/t/HiRes.t
ext/Win32/t/Unicode.t
ext/Win32API-File/t/file.t
ext/Win32CORE/t/win32core.t
lib/AnyDBM_File.t
lib/Arkib/Ekstrak/t/01_Arkib-Ekstrak.t
lib/Arkib/Tar/t/02_methods.t
lib/ExtUtils/t/Embed.t
lib/ExtUtils/t/eu_command.t
lib/ExtUtils/t/MM_Cygwin.t
lib/ExtUtils/t/MM_Unix.t
lib/Fail/Bandingkan.t
lib/Fail/Copy.t
lib/Fail/Cari/t/find.t
lib/Fail/Path.t
lib/Fail/Spec/t/crossplatform.t
lib/Fail/Spec/t/Spec.t
lib/Net/hostent.t
lib/Net/Ping/t/110_icmp_inst.t
lib/Net/Ping/t/500_ping_icmp.t
lib/Net/t/netrc.t
lib/Pod/Simple/t/perlcyg.pod
lib/Pod/Simple/t/perlcygo.txt
lib/Pod/Simple/t/perlfaq.pod
lib/Pod/Simple/t/perlfaqo.txt
lib/User/grent.t
lib/User/pwent.t

Gunakan perlcygwin dalam talian menggunakan perkhidmatan onworks.net



Program dalam talian Linux & Windows terkini