perlcygwin - Online na Nuvem

Este é o comando perlcygwin que pode ser executado no provedor de hospedagem gratuita OnWorks usando uma de nossas várias estações de trabalho online gratuitas, como Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS

PROGRAMA:

NOME


perlcygwin - Perl para Cygwin

SINOPSE


Este documento irá ajudá-lo a configurar, fazer, testar e instalar Perl no Cygwin. Isto
O documento também descreve recursos do Cygwin que afetarão como o Perl se comporta em tempo de execução.

OBSERVAÇÃO: Existem pacotes Perl pré-construídos disponíveis para Cygwin e uma versão do Perl é
fornecido na instalação normal do Cygwin. Se você não precisar personalizar a configuração,
considere usar um desses pacotes.

PRERREQUISITOS PARA COMPILANDO PERL ON CYGWIN


Cygwin = GNU+Cygnus+Windows (Não deixar UNIX sem isto)
As ferramentas Cygwin são portas das populares ferramentas de desenvolvimento GNU para plataformas Win32. Elas
executado graças à biblioteca Cygwin que fornece as chamadas e o ambiente do sistema UNIX
esses programas esperam. Mais informações sobre este projeto podem ser encontradas em:

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

É necessária uma versão líquida ou comercial recente do Cygwin.

No momento em que este documento foi atualizado pela última vez, o Cygwin 1.7.16 era atual.

Cygwin Configuração
Ao construir o Perl, algumas mudanças podem ser necessárias na configuração do Cygwin para que o Perl construa
de forma limpa. Essas mudanças são não necessário para o uso normal do Perl.

OBSERVAÇÃO: Os binários criados serão executados em todas as versões do Win32. Eles não dependem
seu sistema host (WinXP/Win2K/Win7) ou sua configuração Cygwin (montagens binárias/texto,
cvgserver). As únicas dependências vêm de nomes de caminho codificados como / usr / local.
No entanto, seu sistema host e a configuração do Cygwin afetarão o comportamento do tempo de execução do Perl
(ver "TESTE").

· "CAMINHO"

Defina a variável de ambiente "PATH" para que o Configure encontre as versões Cygwin de
programas. Quaisquer diretórios desnecessários do Windows devem ser removidos ou movidos para o final do
seu caminho".

· nroff

Se você não tem nroff (que faz parte do Groff pacote), o Configure irá não
solicitar que você instale homem Páginas.

CONFIGURAR PERL ON CYGWIN


As opções padrão reunidas pelo Configure com a ajuda de dicas/cygwin.sh precisarão
construir um Perl que suporte carregamento dinâmico (o que requer um cygperl5_16.dll).

Isso executará o Configure e manterá um registro:

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

Se você estiver disposto a aceitar todos os padrões, execute Configure com -a partir de. No entanto, vários
personalizações úteis estão disponíveis.

Stripping Perl binários on Cygwin
É possível remover os EXEs e DLLs criados pelo processo de compilação. O resultado
binários serão significativamente menores. Se você quiser que os binários sejam removidos, você pode
quer adicionar um -s opção quando o Configure solicitar,

Algum sinalizador ld adicional (NÃO incluindo bibliotecas)? [nenhum] -s
Algum sinalizador especial para passar para o g++ para criar uma biblioteca carregada dinamicamente?
[nenhum] -s
Algum sinalizador especial para passar ao gcc para usar a vinculação dinâmica? [nenhum] -s

ou você pode editar dicas/cygwin.sh e descomente as variáveis ​​relevantes perto do final do
arquivo.

Opcional bibliotecas for Perl on Cygwin
Várias funções e módulos Perl dependem da existência de algumas bibliotecas opcionais.
O Configure irá encontrá-los se estiverem instalados em um dos diretórios listados como sendo
usado para pesquisas em bibliotecas. Pacotes pré-construídos para a maioria deles estão disponíveis no
Instalador Cygwin.

· "-lcrypt"

O pacote de criptografia distribuído com Cygwin é uma porta de criptografia DES de 56 bits compatível com Linux
por Corinna Vinschen.

Alternativamente, as bibliotecas crypt no GNU libc foram portadas para o Cygwin.

· "-lgdbm_compat" ("usar GDBM_File")

GDBM está disponível para Cygwin.

NOTA: A biblioteca GDBM só funciona em partições NTFS.

· "-ldb" ("usar DB_File")

BerkeleyDB está disponível para Cygwin.

NOTA: A biblioteca BerkeleyDB só funciona completamente em partições NTFS.

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

Uma porta do SysV IPC está disponível para Cygwin.

NOTA: Isto tem não foi amplamente testado. Em particular, "d_semctl_semun" é
indefinido porque falha em um teste de configuração e no Win9x o shm*() funções parecem
aguentar. Ele também cria uma dependência de tempo de compilação porque perl.h inclui <sys/ipc.h>
e <sys/sem.h> (que será necessário no futuro ao compilar módulos CPAN).
ATUALMENTE NÃO SUPORTADO!

· "-lutil"

Incluído com o netrelease padrão do Cygwin está o pacote inetutils que inclui
libutil.a.

Tempo de configuração Opções for Perl on Cygwin
A INSTALAR documento descreve várias opções de tempo de configuração. Algumas delas funcionarão
com Cygwin, outros ainda não são possíveis. Além disso, alguns deles são experimentais. Você pode
selecione uma opção quando o Configure solicitar ou você pode definir (indefinir) símbolos
a linha de comando.

· "-Usedl"

A indefinição deste símbolo força o Perl a ser compilado estaticamente.

· "-Dusemymalloc"

Por padrão, o Perl não usa o "malloc()" incluído na fonte do Perl, porque
era mais lento e não totalmente seguro para threads. Se você quiser forçar o Perl a construir com o
old -Dusemymalloc define isso.

· "-Uuseperlio"

A indefinição deste símbolo desabilita a abstração PerlIO. PerlIO agora é o padrão; isto
não é recomendado desabilitar o PerlIO.

· "-Dusemultiplicidade"

A multiplicidade é necessária ao incorporar Perl em um programa C e usar mais de um
instância do intérprete. Isso só é necessário quando você cria um perl não encadeado com
"-Uuseithreads".

· "-Uuse64bitint"

Por padrão, o Perl usa inteiros de 64 bits. Se você quiser usar inteiros menores de 32 bits,
definir este símbolo.

· "-Duselongdouble"

gcc suporta long doubles (12 bytes). No entanto, várias matemáticas duplas longas adicionais
funções são necessárias para usá-los dentro do Perl ({atan2, cos, experiência, chão, mod, frex,
Isnan, registro, mod, Pancada, pecado, sqrt}l, estrelado). Estes são não ainda disponível com
newlib, a libc Cygwin.

· "-Useithreads"

Defina este símbolo se você quiser perl mais rápido não encadeado.

· "-Duselargefiles"

Cygwin usa inteiros de 64 bits para cálculos internos de tamanho e posição, isso será
corretamente detectado e definido pelo Configure.

· "-Dmksymlinks"

Use isso para construir perl fora da árvore de origem. Os detalhes podem ser encontrados no
INSTALAR documento. Esta é a maneira recomendada de construir perl a partir de fontes.

Suspeito Advertências on Cygwin
Você pode ver algumas mensagens durante a configuração que parecem suspeitas.

· Win9x e "d_eofnblk"

Win9x não relata corretamente "EOF" com uma leitura sem bloqueio em um canal fechado. Você
verá as seguintes mensagens:

Mas também retorna -1 para sinalizar EOF, então tome cuidado!
AVISO: você não pode distinguir entre EOF e nenhum dado!

*** OLÁ!!! ***
O valor recomendado para $d_eofnblk nesta máquina foi "define"!
Manter o valor recomendado? [s]

Pelo menos para consistência com o WinNT, você deve manter o valor recomendado.

· Compilador/Pré-processador define

O seguinte erro ocorre devido ao Cygwin "#define" de "_LONG_DOUBLE":

Adivinhando quais símbolos seu compilador C e pré-processador definem ...
tente.c: : operador binário ausente

Esta falha não parece causar problemas. Com versões mais antigas do gcc, "parse
error" é relatado em vez de "operador binário ausente".

FAÇA ON CYGWIN


Simplesmente corra fazer e espere:

faça 2>&1 | tee log.make

TESTE ON CYGWIN


Há duas etapas para executar o conjunto de testes:

fazer teste 2>&1 | tee log.make-test

cdt; ./perl arnês 2>&1 | tee ../log.harness

Os mesmos testes são executados nas duas vezes, mas mais informações são fornecidas ao executar como
"./arnês de perl".

Os resultados do teste variam dependendo do seu sistema host e da configuração do Cygwin. Se um teste
pode passar em alguma configuração Cygwin, é sempre tentado e falhas de teste explicáveis ​​são
documentado. É possível que o Perl passe em todos os testes, mas é mais provável que
alguns testes falharão por um dos motivos listados abaixo.

Envie o Permissões on Cygwin
As permissões de arquivo UNIX são baseadas em conjuntos de bits de modo para {read,write,execute} para cada
{usuário, grupo, outro}. Por padrão, o Cygwin rastreia apenas o atributo somente leitura do Win32
representado como o bit de gravação do usuário do arquivo UNIX (os arquivos são sempre legíveis, os arquivos são
executável se eles tiverem um .{com,bat,exe} extensão ou começam com "#!", os diretórios são
sempre legível e executável). No WinNT com o téa configuração "CYGWIN", o adicional
bits de modo são armazenados como atributos de arquivo estendidos. No WinNT com o padrão ntsec
configuração "CYGWIN", as permissões usam os descritores de segurança padrão do WinNT e acesso
listas de controle. Sem uma dessas opções, esses testes falharão (lista não atualizada
ainda):

Lista de teste com falha de falha
------------------------------------
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 não é uma extensão executável)

NDBM_Arquivo e ODBM_Arquivo do não trabalho on GORDO sistemas de arquivos
Não use NDBM_File ou ODBM_File no sistema de arquivos FAT. Eles podem ser construídos em um FAT
sistema de arquivos, mas muitos testes falharão:

../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

Se você pretende executar apenas em FAT (ou se estiver usando AnyDBM_File em FAT), execute Configure com o
Opções -Ui_ndbm e -Ui_dbm para evitar que NDBM_File e ODBM_File sejam construídos.

Com NTFS (e sem CYGWIN=nontsec), não deve haver problemas mesmo que o perl tenha sido compilado
GORDO.

"garfo()" falhas in io_* testes
Uma falha "fork()" pode resultar na falha dos seguintes testes:

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

Veja o comentário sobre o garfo em "Diversos" abaixo.

Específico características of da Cygwin porta


Script Portabilidade on Cygwin
O Cygwin faz um excelente trabalho ao fornecer semântica semelhante ao UNIX em sistemas Win32.
No entanto, além dos itens mencionados acima, existem algumas diferenças que você deve
saber sobre. Este é um guia muito breve para portabilidade, mais informações podem ser encontradas em
a documentação do Cygwin.

· Nomes de caminho

Os nomes de caminho do Cygwin são separados por forward (/) barras, Códigos de nomenclatura universais (//UNC)
também são suportados Uma vez que os nomes de caminho não POSIX do cygwin-1.7 são desencorajados. Os nomes podem
conter todos os caracteres imprimíveis.

Os nomes de arquivo não diferenciam maiúsculas de minúsculas, mas preservam maiúsculas e minúsculas. Um nome de caminho que contém um
barra invertida ou letra de unidade é um nome de caminho do Win32 e não está sujeito às traduções
aplicado a nomes de caminho de estilo POSIX, mas o cygwin irá avisá-lo, então é melhor convertê-los para
POSIX.

Para conversão temos "Cygwin::win_to_posix_path()" e
"Cygwin::posix_to_win_path()".

Como os nomes de caminho do cygwin-1.7 são codificados em UTF-8.

· Texto/Binário

Desde cygwin-1.7 textmounts são obsoletos e fortemente desencorajados.

Quando um arquivo é aberto, ele está no modo texto ou binário. No modo texto, um arquivo é
sujeito a traduções CR/LF/Ctrl-Z. Com Cygwin, o modo padrão para um "open()"
é determinado pelo modo da montagem subjacente ao arquivo. Ver
"Cygwin::is_binmount"(). Perl fornece uma função "binmode()" para definir o modo binário em
arquivos que de outra forma seriam tratados como texto. "sysopen()" com o sinalizador "O_TEXT"
define o modo de texto em arquivos que de outra forma seriam tratados como binários:

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

"lseek()", "tell()" e "sysseek()" só funcionam com arquivos abertos no modo binário.

A questão de texto/binário é abordada detalhadamente na documentação do Cygwin.

· PerlIO

PerlIO substitui o comportamento padrão Cygwin Text/Binary. Um arquivo será sempre
tratado como binário, independentemente do modo da montagem em que vive, assim como está em
Unix. Portanto, a tradução CR/LF precisa ser solicitada na chamada "open()", como
esta:

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

que fará a conversão de LF para CR/LF na saída ou no ambiente
configurações (adicione isso ao seu .bashrc):

exportar PERLIO=crlf

que puxará a camada crlf PerlIO que faz a conversão LF -> CRLF em cada
saída gerada por perl.

· .exe

As funções Cygwin "stat()", "lstat()" e "readlink()" tornam o .exe extensão
transparente procurando foo.exe quando você pedir Foo (a menos que um Foo também existe).
Cygwin não requer um .exe extensão, mas gcc adiciona-o automaticamente ao construir
um programa. No entanto, ao acessar um executável como um arquivo normal (por exemplo, cp em uma
makefile) o .exe não é transparente. O instalar programa incluído no Cygwin
anexa automaticamente um .exe quando necessário.

· IDs de processo Cygwin vs. Windows

Os processos Cygwin têm seu próprio pid, que é diferente das janelas subjacentes
pid. A maioria das funções Proc compatíveis com posix esperam o pid cygwin, mas várias
Funções Win32::Process esperam o winpid. Por exemplo, $$ é o pid cygwin de
/ usr / bin / perl, que não é o winpid. Use "Cygwin::pid_to_winpid()" e
"Cygwin::winpid_to_pid()" para traduzir entre eles.

· Erros Cygwin vs. Windows

Sob Cygwin, $^E é o mesmo que $!. Ao usar as funções da API do Win32, use
"Win32::GetLastError()" para obter o último erro do Windows.

· erros de rebase no fork ou sistema

Usar "fork()" ou "system()" para outro perl depois de carregar várias dlls pode
resultar em um conflito de endereço base de DLL. O erro interno do cygwin se parece com o
A seguir:

0 [main] perl 8916 child_info_fork::abort: início do segmento de dados: pai
(0xC1A000)!= criança(0xA6A000)

ou:

183 [main] perl 3588 C:\cygwin\bin\perl.exe: *** erro fatal - não foi possível remapear
C:\cygwin\bin\cygsvn_subr-1-0.dll para o mesmo endereço que principal(0x6FB30000) != 0x6FE60000
46 [main] perl 3488 fork: child 3588 - morreu aguardando o carregamento da dll, errno11

Vejohttp://cygwin.com/faq/faq-nochunks.html#faq.using.fixing-fork-failures> Ajuda
se não houver muitas DLLs carregadas na memória para que o espaço de endereço disponível seja maior,
por exemplo, parar o MS Internet Explorer pode ajudar.

Use os utilitários perlrebase ou rebase para resolver os endereços dll conflitantes. O
O pacote rebase está incluído na configuração do Cygwin. Usar setup.exe da
<http://www.cygwin.com/setup.exe> para instalá-lo.

1. mate todos os processos perl e execute "perlrebase" ou

2. mate todos os processos e serviços do cygwin, inicie o dash do cmd.exe e execute
"rebasear".

· "chown()"

No WinNT, "chown()" pode alterar os IDs de usuário e grupo de um arquivo. No Win9x "chown()" é um
no-op, embora isso seja apropriado, pois não há modelo de segurança.

· Diversos

Bloqueio de arquivo usando o comando "F_GETLK" para "fcntl()" é um stub que retorna "ENOSYS".

Win9x não pode "renomear()" um arquivo aberto (embora o WinNT possa).

A implementação "chroot()" do Cygwin tem falhas (não pode restringir o acesso ao arquivo por
programas nativos do Win32).

A edição local "perl -i" de arquivos não funciona sem fazer um backup do arquivo
sendo editado "perl -i.bak" por causa de restrições de janela, portanto, Perl adiciona o
sufixo ".bak" automaticamente se você usar "perl -i" sem especificar um backup
extensão.

Pré-construído métodos:
"Cwd::cwd"
Retorna o diretório de trabalho atual.

"Cygwin::pid_to_winpid"
Traduz um pid cygwin para o pid correspondente do Windows (que pode ou não ser o
mesmo).

"Cygwin::winpid_to_pid"
Traduz um pid do Windows para o pid cygwin correspondente (se houver).

"Cygwin::win_to_posix_path"
Traduz um caminho do Windows para o caminho cygwin correspondente respeitando o atual
pontos de montagem. Com um segundo argumento não nulo retorna um caminho absoluto. Byte duplo
caracteres não serão traduzidos.

"Cygwin::posix_to_win_path"
Traduz um caminho cygwin para o caminho cygwin correspondente respeitando a montagem atual
pontos. Com um segundo argumento não nulo retorna um caminho absoluto. Byte duplo
caracteres não serão traduzidos.

"Cygwin::mount_table()"
Retorna uma matriz de [mnt_dir, mnt_fsname, mnt_type, mnt_opts].

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

"Cygwin::mount_flags"
Retorna o tipo de montagem e os sinalizadores para um ponto de montagem especificado. Separado por vírgulas
string de mntet->mnt_type (sempre "sistema" ou "usuário"), então o mntet->mnt_opts,
onde o primeiro é sempre "binmode" ou "textmode".

sistema|usuário,binmode|textmode,exec,cygexec,cygdrive,mixed,
notexec,gerenciado,nosuid,devfs,proc,noumount

Se o argumento for "/ cygdrive", apenas as configurações de montagem de volume e o cygdrive
prefixo de montagem são retornados.

As montagens do usuário substituem as montagens do sistema.

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

"Cygwin::is_binmount"
Retorna true se o caminho cygwin fornecido for montado em binário, false se o caminho for montado
em modo texto.

"Cygwin::sync_winenv"
Cygwin não inicializa todas as variáveis ​​de ambiente originais do Win32. Veja o fundo
desta páginahttp://cygwin.com/cygwin-ug-net/setup-env.html> para "Win32 restrito
ambiente".

Certos programas Win32 chamados de programas cygwin podem precisar de algum ambiente
variável, como, por exemplo, ADODB precisa de %COMMONPROGRAMFILES%. Ligar Cygwin::sync_winenv()
para copiar todas as variáveis ​​de ambiente do Win32 para o seu processo e observe que o cygwin avisará
em cada encontro de caminhos não POSIX.

INSTALAR PERL ON CYGWIN


Isso instalará o Perl, incluindo homem Páginas.

fazer instalar 2>&1 | tee log.make-install

NOTA: Se "STDERR" for redirecionado, "make install" não solicitar que você instale perl para dentro
/ usr / bin.

Você pode precisar ser Administrador para executar "make install". Se não for, você deve ter
acesso de gravação aos diretórios em questão.

Informações sobre a instalação da documentação Perl em formato HTML podem ser encontradas no
INSTALAR documento.

MANIFESTO ON CYGWIN


Estes são os arquivos na versão Perl que contêm referências ao Cygwin. Estes muito
breves notas tentam explicar o motivo de todo código condicional. Esperançosamente, mantendo
esta atualização permitirá que a porta Cygwin seja mantida o mais limpa possível.

Documentação
INSTALE 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 Portando/Glossário pod/perlgit.pod
Portando/verifiqueAUTHORS.pl
dist/Cwd/Alterações ext/Compress-Raw-Zlib/Alterações
ext/Compress-Raw-Zlib/README ext/Compress-Zlib/Alterações
ext/DB_File/Alterações ext/Encode/Alterações ext/Sys-Syslog/Alterações
ext/Time-HiRes/Changes ext/Win32API-File/Changes
lib/ExtUtils/CBuilder/Changes lib/ExtUtils/Changes lib/ExtUtils/NOTES
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

Construir, configurar, criar, instalar
cygwin/Makefile.SHs
ext/IPC/SysV/hints/cygwin.pl
ext/NDBM_File/hints/cygwin.pl
ext/ODBM_File/hints/cygwin.pl
dicas/cygwin.sh
Configure - ajuda a encontrar dicas de uname,
libperl compartilhada necessária para carregamento dinâmico
Makefile.SH Cruzado/Makefile-cross-SH
-linklibperl
Portando/patchls - cygwin na lista de portas
installman - páginas man com :: traduzidas para .
installperl - instala dll, instala em 'pods'
makedepend.SH -uwinfix
regen_lib.pl - permissões de arquivo

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

Testes
t/io/fs.t - nenhum modo de arquivo verifica se não for ntsec
pule a verificação de rename() quando não check_case:relaxed
t/io/tell.t - modo bin
t/lib/cygwin.t - testes de função cygwin embutidos
t/op/groups.t - basegroup tem ID = 0
t/op/magic.t - $^X/symlink SOLUÇÃO, s/.exe//
t/op/stat.t - não / dev, pule a peculiaridade do Win32 ftCreationTime
(o gerenciador de cache às vezes preserva o ctime do arquivo
criado e excluído anteriormente), não -u (setuid)
t/op/taint.t - não pode usar o caminho vazio no Cygwin Perl
t/op/time.t - não tzset()

Fonte Perl Compilada
EXTERN.h - __declspec(dllimport)
XSUB.h - __declspec(dllexport)
cygwin/cygwin.c - os_extras (getcwd, spawn e várias funções Cygwin::)
perl.c - os_extras, -i.bak
perl.h - modo bin
doio.c - win9x não pode renomear um arquivo quando está aberto
pp_sys.c - não defina h_errno, init _pwent_struct.pw_comment
util.c - use setenv
util.h - macro PERL_FILE_IS_ABSOLUTE
pp.c - Comente sobre a matemática Posix vs IEEE sob Cygwin
perlio.c - modo CR/LF
perliol.c - Comente sobre EXTCONST no Cygwin

Fonte do módulo compilado
ext/Compress-Raw-Zlib/Makefile.PL
- Não é possível instalar via shell CPAN no Cygwin
ext/Compress-Raw-Zlib/zlib-src/zutil.h
- Cygwin é semelhante ao Unix e tem vsnprintf
ext/Errno/Errno_pm.PL - Tratamento especial para Win32 Perl no Cygwin
ext/POSIX/POSIX.xs - tzname definido externamente
ext/SDBM_File/sdbm/pair.c
- EXTCONST precisa ser redefinido de EXTERN.h
ext/SDBM_File/sdbm/sdbm.c
- binário aberto
ext/Sys/Syslog/Syslog.xs
- Cygwin tem syslog.h
ext/Sys/Syslog/win32/compile.pl
- Converter caminhos para caminhos do Windows
ext/Time-HiRes/HiRes.xs
- Vários temporizadores não disponíveis
ext/Time-HiRes/Makefile.PL
- Encontre w32api/windows.h
ext/Win32/Makefile.PL - Use várias bibliotecas no Cygwin
ext/Win32/Win32.xs - dir filho e env filho no Cygwin
ext/Win32API-Arquivo/Arquivo.xs
- _open_osfhandle não implementado no Cygwin
ext/Win32CORE/Win32CORE.c
-__declspec(dllexportação)

Módulos/Scripts Perl
ext/B/t/OptreeCheck.pm - Comente sobre a ordem stderr/stdout no Cygwin
ext/Digest-SHA/bin/shasum
- Use o modo binário no Cygwin
ext/Sys/Syslog/win32/Win32.pm
- Converter caminhos para caminhos do Windows
ext/Time-HiRes/HiRes.pm
- Comente sobre vários temporizadores não disponíveis
ext/Win32API-Arquivo/Arquivo.pm
- _open_osfhandle não implementado no Cygwin
ext/Win32CORE/Win32CORE.pm
- História do Win32CORE no Cygwin
lib/Cwd.pm - gancho para Cwd::cwd interno
lib/ExtUtils/CBuilder/Platform/cygwin.pm
- use gcc para ld e link para libperl.dll.a
lib/ExtUtils/CBuilder.pm
- Cygwin é semelhante ao Unix
lib/ExtUtils/Install.pm - Instale e renomeie problemas no Cygwin
lib/ExtUtils/MM.pm - classificações do SO
lib/ExtUtils/MM_Any.pm - Exemplo para Cygwin
lib/ExtUtils/MakeMaker.pm
- requer MM_Cygwin.pm
lib/ExtUtils/MM_Cygwin.pm
- canonpath, cflags, manifypods, perl_archive
lib/File/Fetch.pm - Comente sobre citações usando um exemplo Cygwin
lib/File/Find.pm - em unidades remotas stat() sempre define st_nlink como 1
lib/Arquivo/Spec/Cygwin.pm - case_tolerant
lib/File/Spec/Unix.pm - preserve //unc
lib/File/Spec/Win32.pm - Referencia uma mensagem em cygwin.com
lib/File/Spec.pm - Extrai lib/File/Spec/Cygwin.pm
lib/File/Temp.pm - nenhum bit fixo de diretório
lib/Module/CoreList.pm - Lista de todos os arquivos e versões do módulo
lib/Net/Domain.pm - Nenhum comando de nome de domínio no Cygwin
lib/Net/Netrc.pm - Ignorar usando stat() no Cygwin
lib/Net/Ping.pm - ECONREFUSED é EAGAIN no Cygwin
lib/Pod/Find.pm - Define o diretório 'pods'
lib/Pod/Perldoc/ToMan.pm - switch '-c' para pod2man
lib/Pod/Perldoc.pm - Use o pager 'less' e use a extensão .exe
lib/Term/ANSIColor.pm - Informações do terminal Cygwin
lib/perl5db.pl - use stdin não /dev/tty
utils/perlbug.PL - Adicionar variável de ambiente CYGWIN ao relatório

Testes do Módulo 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/Arquivo-Glob/t/basic.t
ext/GDBM_File/t/gdbm.t
ext/POSIX/t/sysconf.t
ext / 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/Archive/Extract/t/01_Archive-Extract.t
lib/Archive/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/Arquivo/Comparar.t
lib/Arquivo/Copiar.t
lib/Arquivo/Localizar/t/find.t
lib/Arquivo/Caminho.t
lib/Arquivo/Spec/t/crossplatform.t
lib/Arquivo/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/Usuário/pwent.t

Use o perlcygwin online usando os serviços onworks.net



Programas online mais recentes para Linux e Windows