Portable OpenBSD ksh(1) . Não é um projeto oficial do OpenBSD.
Porque todos os sistemas operacionais merecem uma boa concha.
Ao contrário de outras portas do OpenBSD KSH, esta porta é totalmente independente e pretende ser portátil ao máximo entre os sistemas operacionais e os compiladores C. Estamos sempre procurando novas combinações para adicionar suporte.
oksh é conhecido por executar nos seguintes sistemas operacionais:
Executando em um sistema não listado aqui? Adicione e envie uma solicitação de tração!
Acreditamos que oksh funcionará nas seguintes plataformas, mas é necessário testar. A ajuda é muito apreciada e incentivada!
oksh é conhecido por construir com os seguintes compiladores C:
Construindo com um compilador não listado aqui? Adicione e envie uma solicitação de tração!
oksh está incluído em alguns sistemas de pacotes.
Além disso, existem alguns pacotes não oficiais:
Usando um pacote não listado aqui? Adicione e envie uma solicitação de tração!
Um compilador C99 é a maneira mais fácil de garantir que oksh construa corretamente. Consulte a lista de compiladores C acima para uma lista de compiladores de trabalho conhecidos.
Embora não seja necessário, a biblioteca ncurses será usada para rotinas de compensação de tela se a biblioteca for encontrada durante o estágio configure . Isso pode ser desligado pelo usuário, passando o sinalizador --disable-curses para configure .
Um script configure que produz um POSIX Makefile é fornecido para facilitar a construção e a instalação e pode ser executado por:
$ ./configure
$ make && sudo make install
O script configure detectará as compilações fora da árvore, se você preferir construir fora da árvore. Para que isso funcione, a extensão do VPATH é usada. Embora não seja Posix, VPATH é conhecido por trabalhar com o BSD Make e GNU Make. As compilações na árvore criam um Makefile totalmente POSIX.
A compilação cruzada pode ser alcançada executando configure da seguinte forma:
CC=/path/to/cross/cc CFLAGS="any needed cflags" LDFLAGS="any needed ldflags" ./configure --no-thanks
Isso pulará todas as configure e escreverá um Makefile genérico e pconfig.h com quase nenhuma opção ativada. Se estiver usando um Cross GCC ou CLANG, isso muito bem pode funcionar (com todos os compatíveis compilados). Você pode editar esses arquivos para refletir seu sistema antes de executar make .
Todas as variáveis de ambiente e sinalizadores de configuração são respeitados ao usar --no-thanks . Especificar ainda mais --no-link depois --no-thanks apenas compilará os arquivos de origem nos arquivos de objeto, a serem transferidos para a máquina de destino e vinculados lá.
O sinalizador --no-thanks também pode ser usado para compilar um oksh nativo com todas as funções de compatibilidade compiladas, em vez de depender da versão do sistema dessas funções.
Patches que adicionam novas plataformas e melhoram o suporte para plataformas existentes são sempre bem -vindos.
Os patches que fazem com que oksh se desvie do comportamento OpenBSD KSH upstream são mais adequados para serem enviados para a lista de discussão do OpenBSD Tech@. Certifique -se de testar seu patch em uma máquina OpenBSD antes de enviá -lo para Tech@. Vou sincronizar com o código OpenBSD Upstream assim que seu patch for aceito. Se você quiser abrir um problema aqui para acompanhar o progresso do seu patch no Tech@, tudo bem.
Os principais arquivos da Shell Korn são de domínio público (ver LEGAL ). Os arquivos de portabilidade são licenciados por BSD ou ISC; Consulte os cabeçalhos de arquivo individuais para obter detalhes.
Consulte a guia Releases. O lançamento mais recente é Oksh-7.5, que corresponde ao KSH (1) do OpenBSD 7.5, lançado em 5 de abril de 2024.