Este script não está sendo executado pelo tcsh. Você executou o comando ./setup.csh
do tcsh, mas esse é um comando separado, executado em seu próprio processo. Não há nenhuma razão para o que você mostrou que o script seria executado no tcsh. O comando setenv
não foi encontrado porque algum interpretador diferente está executando o script. Como evidência adicional, as mensagens de erro são consistentes com a formatação de mensagens de erro do bash, dash e ksh, mas não com as do tcsh.
Este é um bug no script. Ele deve começar com uma linha shebang indicando qual interpretador (shell) o script foi criado. Um script tcsh deve começar com a linha
#!/usr/bin/env tcsh
Adicione esta linha (deve ser a primeira linha; note que o arquivo não deve ter finais de linha do Windows, portanto, tome cuidado se você usar um editor do Windows, ou melhor, use um editor do Linux). Alternativamente, se você preferir não editar o arquivo, você pode invocar o tcsh explicitamente:
tcsh ./setup.csh
Você pode fazer isso de qualquer shell, você não precisa usar o tcsh interativamente se não quiser.