Alguém tem experiência com desenvolvimento de R no Windows? Instalei o Rtools e adicionei as variáveis de ambientes. Estou conseguindo iniciar o R no DOS e também o gcc. Mas o Rtools não está conectado. Minha máquina é 64bits e o sistema é Windows 7.
Em 25 de agosto de 2011 17:10, Pedro Rafael <[email protected]>escreveu: > Eu tava fazendo seguindo esse vídeo tutorial: > http://www.youtube.com/watch?v=WIihUvQwYTA > > Em 25 de agosto de 2011 17:05, beniltoncarvalho [via R-br] < > [email protected]> escreveu: > > Voce vai precisar ler mesmo o material do manual e, para uma versao >> expressa, ver as notas de aula que postei no topico ao qual referi-me >> anteriormente. >> >> 1) Minha recomendacao (e de todo mundo que usa R+C) e' vc gerar a >> biblioteca usando: >> >> R CMD SHLIB arquivo.c >> >> 2) Quando o R conversa com o C, tudo o que o C enxerga sao ponteiros. >> Entao, toda a comunicacao C <-> R deve ser feita via ponteiros. >> >> Dito isso, seu programa precisa ser ligeiramente modificado: >> >> >> /* INICIO */ >> /* >> Programa: exfun.c >> Objetivo; Primeiro exemplo de uso de funcao >> Autor: Adriano Cruz >> Data: 12/10/97 >> */ >> #include<stdio.h> >> >> /* Prototipo da funcao */ >> int soma(int, int); >> >> >> /* Funcao Principal */ >> void fPrincipal(double *resultado) >> { >> int a=5, b=9; >> resultado[0] = soma(a,b); >> } >> >> /* Definicao da funcao */ >> int soma(int a, int b) >> { >> return a+b; >> } >> >> /* FIM */ >> >> Depois disso, compile-o usando: >> >> R CMD SHLIB arquivo.c >> >> (preste atencao qual arquivo sera' gerado, pq nao to muito certo de >> que em Windows sera' um .so, imagino que seja um DLL). >> >> Carregue o R e use: >> >> dyn.load("arquivo.dll") >> x = .C("fPrincipal", double(1)) >> >> Abaixo e' o q eu tenho: >> >> > dyn.load("teste.so") >> > x = .C("fPrincipal", as.double(1)) >> > x >> [[1]] >> [1] 14 >> >> O segundo argumento em .C() que vc ve, e' reservando, no R, memoria >> para 1 numero real, que o programa em C usa para gravar a resposta. >> >> b >> _______________________________________________ >> R-br mailing list >> [hidden email] <http://user/SendEmail.jtp?type=node&node=3769255&i=0> >> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça >> código mínimo reproduzível. >> >> >> ------------------------------ >> If you reply to this email, your message will be added to the discussion >> below: >> >> http://r-br.2285057.n4.nabble.com/R-br-Duvida-Invocar-funcoes-C-no-R-tp3768159p3769255.html >> To unsubscribe from R-br, click >> here<http://r-br.2285057.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=3357982&code=cGVkcm8ucmFmYWVsLm1hcmluaG9AZ21haWwuY29tfDMzNTc5ODJ8NTAyMjI0MDYw>. >> >> > > > > -- > Saudações, > Pedro Rafael Diniz Marinho. > > > -- Saudações, Pedro Rafael Diniz Marinho.
_______________________________________________ R-br mailing list [email protected] https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
