comp coop 10

12/05/2009

Como editar o código-fonte do Minix pelo Visual Studio (e, de tabela, como acessar o Minix por FTP)

Filed under: disciplina, tutorial — Tags:, — Yuri Duarte Corrêa @ 9:33 am

Tutorial sobre Minix, feito por um aluno do COOP09. Autorizado.

Yuri

Olá,

Não sei se é o caso de vocês, mas eu detesto editores de texto em que eu não posso usar o mouse – e considero um contra-senso que, em pleno 2008, era em que as interfaces de usuário ficam cada vez mais caprichadas e intuitivas, precisemos ficar decorando comandos absolutamente indecifráveis em aplicativos obscuros (cofcof, vi, cofcof).

Portanto, desde que o Kinoshita disse que iríamos ter que editar o código do Minix, eu ando procurando um jeito de passar os arquivos fonte da máquina virtual para o Windows. Além da praticidade de se usar um editor amigável, ainda há a facilidade de se compartilhar o código que foi modificado com colegas – o que é importante quando se considera que não é simples fazer o Minix acessar a internet.

Aliás, foi essa a minha primeira intenção: mandar os arquivos a partir do Minix para meu e-mail, e de lá baixá-los (no fim a solução do FTP acabou sendo superior); mas não consegui por nada no mundo fazer essa porcaria de internet funcionar, nem no Virtual PC, nem no VMWare Player, nem no VMWare Workstation. O máximo que eu consegui, usando este último, foi fazer o Minix ganhar um IP da rede local (usando NAT como tipo de rede virtual) e enxergar o meu Windows – sem acesso à internet, contudo.

Descobri, então, que o Minix já vem com um servidor FTP, e achei que pudesse valer a pena tentar acessá-lo. De fato, funcionou. Para rodar o servidor, é só entrar com esses comandos, que encontrei na internet:

# cat >/etc/rc.daemons
daemonize tcpd telnet in.telnetd
daemonize tcpd ftp in.ftpd
CTRL+D

Isso cria uma entrada no arquivo rc.daemons, o que faz com que o Minix, ao ser iniciado, comece a rodar o servidor FTP (e o Telnet tbm, se alguém quiser – não sei se precisa, mas tava assim no site que eu achei e não to afim de tirar pra testar). Depois disso, é só reiniciar (shutdown -r) e pronto.

De volta ao Windows, é só baixar algum cliente FTP (eu uso o FileZilla), botar o IP que aparece quando o Minix liga, entrar com seu usuário e senha (eu uso root & root; não sei se com senha vazia funciona) e pronto. Depois, baixe todo o conteúdo em /usr/src para algum diretório (o FTP vai começar em /root, então você precisa subir de nível para enxergar o /usr).

No Visual Studio (usei a versão 2008), clique em New->Project From Existing Code, e indique o diretório onde você baixou os fontes. Selecione Visual C++ como o tipo de projeto, e marque “Use external build system”. Ele vai reconhecer todos os arquivos e organiza-los hierarquicamente.

Pronto! Agora você pode ler todo o código fonte do Minix, se aproveitando de coisas como “Go to Definition” e outras perfumarias. Eu ainda não consegui fazer ele compilar o código (o Visual Studio vem com uma ferramente chamada nmake que simula o make do GNU, mas não funciona direito nesse caso), de modo que para testar se o seu programa não tem erros de sintaxe você precisa fazer o upload e dar o make no Minix (aliás, uma dica: caso vocês mudem alguma coisa e não estejam vendo nenhum reflexo, experimentem dar “make world” em /usr. Isso recompila e reinstala tudo). Meio chato, mas pelo menos não precisa ficar mexendo naquele lixo de vi.. hahaha

Bom, é isso. Me custou algum tempo, então achei legal compartilhar as instruções. Espero que seja útil para alguém!

Pedro d’Aquino, COOP09.

5 Comentários »

  1. Não consegui ver nenhum ip para conectar ao ftp, precisa alguma configuração específica no VMware?

    Comentário por Caio — 22/09/2009 @ 12:23 am

  2. Falando mal do VI… vai comprar briga com muita gente 🙂 \o/

    O fato é que, se você não é um programador só casualmente, você acaba decorando muitos comandos e o VI(M) acaba sendo bem prático de usar. Eu o uso há uns ~3, 4 anos e o bom é que não fico dependendo de 1 IDE que funciona em 1 SO pra editar meu código fonte.

    Mas, muita gente prefere o Visual Studio, por isso achei legal o tutorial. No Linux você poderia montar o FTP como um virtual filesystem… Aí pode editar em qualquer editor sem precisar “fazer o upload de volta para o minix”. Ele já faz automaticamente. Se você usa o Gnome, tudo o que precisa fazer é ir em no menu “Locais>Conectar a servidor” e colocar o IP da VM.

    Como o minix já vem com ssh habilitado, eu usava sftp no lugar de ftp quando precisei usá-lo, sendo o mesmo procedimento no gnome pra conectar a ele.

    Comentário por Lucas De Marchi — 22/09/2009 @ 8:30 am

  3. Descobri que o problema é na versão 3.1.3 do Minix. Instalei a 3.1.2, mas agora usando o ip fornecido não consigo a conexão. Acredito que possa ser algo na comunicação VMware Windows.

    Comentário por Caio — 22/09/2009 @ 10:35 pm

    • Consigo ver o ip porem nao consigo conexao pelo filezila.

      Caio vc conseguiu?

      Comentário por Leonardo Silveira — 26/09/2009 @ 11:39 am

  4. Não consegui. Um amigo me passou o a máquina virtual com o Minix 3.1.3a instalado e com o ftp configurado e finalmente consegui.

    Comentário por Caio — 01/10/2009 @ 6:46 pm


RSS feed for comments on this post. TrackBack URI

Deixe um comentário

Crie um website ou blog gratuito no WordPress.com.