Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[Tips] Installare mono su gentoo
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian)
View previous topic :: View next topic  
Author Message
innovatel
Apprentice
Apprentice


Joined: 26 Jul 2003
Posts: 176
Location: Italy - Crema (Cr)

PostPosted: Mon Dec 01, 2003 1:36 pm    Post subject: [Tips] Installare mono su gentoo Reply with quote

Spettabile pubblico, ora vi imparerò come si mette su gentoo il supporto mono.

Come prima cosa apriamo la bellissima shell e digitiamo
Code:

bash-2.05b# emerge dev-dotnet/mono

Aspettiamo un pochetto che venga scaricato il pacchetto e compilato e poi possiamo partire.
Hai finito la compilazione? Bene. Mono è installato. Sul mio pc che è un Atlhon XP 2000 non ci ha messo molto tempo. Stai chiedendo quanto? Te lo dico subito.
Code:

bash-2.05b# genlop -t mono

 * dev-dotnet/mono

     Merged   at Sun Nov 30 01:04:07 2003    (mono-0.26-r1)
       merge time: 18 minutes and 3 seconds.

 merged totally 1 time in 18 minutes and 3 seconds.

Nel caso non hai genlop sulla tua gentoo, ti consiglio di installarlo in quanto è comodissimo. Per farlo è necessario digitare:
Code:

bash-2.05b# emerge app-portage/genlop

Benissimo. Mono è pronto. Come lo usiamo? Come prima operazione utile propongo di provarlo per vedere se realmente funziona. Aprite il vostro editor di testo preferito (io ho usato Kwrite) e creiamo un file dal nome: "test.cs". Il contenuto sarà il seguente:
Code:

using System;

class test
{
   static void Main()
   {
      Console.WriteLine("Hello Word");
      Console.WriteLine("-----");
      Console.WriteLine("Mono & Gentoo 1.4 - by innovatel");
   }
}

Ora viene una bella domanda. Come lo uso questo simpaticissimo ed adorabile file? Molto semplice, ma per farlo dobbiamo tornare dalla nostra amica shell:
Code:

bash-2.05b# cd /MonoTest
bash-2.05b# mcs test.cs
Compilation succeeded
bash-2.05b# mono test.exe
Hello Word
-----
Mono & Gentoo 1.4 - by innovatel

Ora viene la parte divertente. Chissà com'è fatto quel bellissimo file "test.exe". Curiosi anche voi? Bene, tra pochi secondi sarete soddisfatti:
Code:

bash-2.05b# monodis test.exe
.assembly extern mscorlib
{
  .ver 1:0:3300:0
}
.assembly 'test'
{
  .hash algorithm 0x00008004
  .ver  0:0:0:0
}
  .class private auto ansi beforefieldinit test
        extends [mscorlib]System.Object
  {

    // method line 1
    .method public hidebysig  specialname  rtspecialname
           instance default void .ctor()  cil managed
    {
        // Method begins at RVA 0x20ec
        // Code size 7 (0x7)
        .maxstack 8
        IL_0000: ldarg.0
        IL_0001: call instance void valuetype [corlib]System.Object::.ctor()
        IL_0006: ret
    } // end of method test::instance default void .ctor()

    // method line 2
    .method private static
           default void Main()  cil managed
    {
        // Method begins at RVA 0x20f4
        .entrypoint
        // Code size 31 (0x1f)
        .maxstack 8
        IL_0000: ldstr "Hello Word"
        IL_0005: call void class [corlib]System.Console::WriteLine(string)
        IL_000a: ldstr "-----"
        IL_000f: call void class [corlib]System.Console::WriteLine(string)
        IL_0014: ldstr "Mono & Gentoo 1.4 - by innovatel"
        IL_0019: call void class [corlib]System.Console::WriteLine(string)
        IL_001e: ret
    } // end of method test::default void Main()

  } // end of type test

Credevate fosse finito tutto qua? Sbagliato. Ora vediamo come fare funzionare anche le pagine .aspx. Vai ragazzi, non arrendetevi. La situazione è la seguente: il supporto mono c'è ed ora dobbiamo fargli capire come usare le pagine web fatte in c#.

Come prima operazione bisogna scaricare dal sito www.go-mono.com il webserver ?XSP web server (0.5)?. So che l'ultima versione rilasciata al momento della stesura è la 0.6, ma non sono riuscito ad installarla. Personalmente il file l'o scaricaro io /opt per poi installarlo nella seguente modalità:
Code:

bash-2.05b# cd /opt
bash-2.05b# tar -xzvf xsp-0.5.tar.gz
bash-2.05b# cd xsp-0.5
bash-2.05b# make && make install

Ok, fatta. Ora dobbiamo metterlo in funzione e ci si diverte un pochetto tanto.
Code:

bash-2.05b# cd /opt/xsp-0.5/server/test/
bash-2.05b# mono xsp.exe
Listening on port: 8080
Listening on address: 0.0.0.0
Root directory: /opt/xsp-0.5/server/test
Virtual directory: /

Ora apriamo il browser e digitiamo
Code:

http://localhost:8080/

Magia. Avete visto che bello? Sinceramente non mi va di finire qui la spiegazione in modo maleducato, quindi ultimo sforzo. Apriamo Kwrite e creiamo un file "IoSaluto.aspx":
Code:

<%@ Page Language="C#" %>
<script runat="server">
   void Page_Load(object sender, System.EventArgs e)
   {
      if(!this.Page.IsPostBack)
      {
         this.txtNome.Text="";
         this.lblDomanda.Text = "Posso sapere come ti chiami? ";
         this.lblPower.Text = "<br><br>C# Powered by Gentoo 1.4 - by innovatel";
      }
      else
      {
         if(this.txtNome.Text!="")
            this.lblSaluto.Text = "Ciao " + this.txtNome.Text ;
         else
            this.lblSaluto.Text = "Ciao anonimo .... " ;
         this.lblDomanda.Visible = false ;
         this.txtNome.Visible = false ;
         this.btnSaluta.Visible = false ;
      }
   }
</script>
<html>
   <body>
      <form id="frmSaluto" method="post" runat="server">
         <asp:label id="lblSaluto" runat="server" />
         <br>
         <asp:label id="lblDomanda" runat="server" /><asp:TextBox id="txtNome" runat="server" />
         <asp:Button id="btnSaluta" Text="Cliccami" runat="server" />
         <asp:label id="lblPower" runat="server" />
      </form>
   </body>
</html>

Come usarlo? Bhe semplicissimo.
Code:

http://localhost:8080/IoSaluto.aspx


Bene. Ho finito di spiegare questo piccolo ma esaltante viaggio. Spero di esser stato d'aiuto a qualcuno e di non avervi rotto le scatole in tutto questo tips.

Ultimissima, spero di esser stato all'altezza, se così non fosse non mi picchiate :)

### Note Finali ###
Articolo scritto da Carratta Andrea ? innovatel il 01/12/2003
Sito Web: www.innoland.net
Mail: info(at)innoland.net
L'articolo è liberamente utilizzabile purchè venga citata la fonte.
_________________
innovatel's Blog
Back to top
View user's profile Send private message
Gondor
n00b
n00b


Joined: 30 Sep 2003
Posts: 4
Location: Venice!!!

PostPosted: Mon Dec 01, 2003 6:54 pm    Post subject: Reply with quote

Tnx to inno 8)
_________________
[color=FF0000]File reality.sys corrupted[/color]
[color=004990]Reboot universe? y/n[/color]
Non arrabbiarti. Tanto un giorno il mondo farà a meno di te
Back to top
View user's profile Send private message
fedeliallalinea
Administrator
Administrator


Joined: 08 Mar 2003
Posts: 30925
Location: here

PostPosted: Mon Dec 01, 2003 7:02 pm    Post subject: Reply with quote

Volevo sapere se mono e' completo al 100% o no. Mi pare che non funzioni
ancora tutto.
_________________
Questions are guaranteed in life; Answers aren't.
Back to top
View user's profile Send private message
emix
Veteran
Veteran


Joined: 30 Nov 2003
Posts: 1014

PostPosted: Mon Dec 01, 2003 7:22 pm    Post subject: Reply with quote

fedeliallalinea wrote:
Volevo sapere se mono e' completo al 100% o no. Mi pare che non funzioni
ancora tutto.

Ancora non è completo al 100%. Dovrebbe essere rilasciata la versione 1.0 a metà 2004. Comunque sul sito puoi vedere le classi già implementate e quelle mancanti.
Back to top
View user's profile Send private message
innovatel
Apprentice
Apprentice


Joined: 26 Jul 2003
Posts: 176
Location: Italy - Crema (Cr)

PostPosted: Mon Dec 01, 2003 7:27 pm    Post subject: Reply with quote

* ciccio -> de nada

mono è ancora in fase di sviluppo. Il compilatore c# è molto più avanti di quello vb.net del quale non ne capisco un senso pratico inambiente linux, ma fà nulla. La "stabilità" di una soluzione non posso dartela per un semplice motivo. Ci sono operazioni complesse su cui mono va bene ed altre più semplici dove si incarta dando anomalie. Bisogna sviluppare la soluzione e provarla. Chi mi conosce sa bene che sono contrario a questi miscugli in quanto reputo che ogni linguaggio nasce per il suo ambiente e non è giusto levarlo da esso. Il perchè ho messo mono allora vi chiedete? Bhe, installarlo per provare è corretto. Non è la curiosità che ci spinge nell'usare linux assieme alla voglia di imparare. Onestamente credo che il framework sia una delle migliori cose fatta da casa bill. Lo dico con una certa sicurezzza perchè lavoro in un ambito dotnet e lo vivo come realtà tuti i giorni: è immenso e non si finiscono mai di trovare cose nuove. In conclusione che voglio dire? Prima di tutto bisogna ammarirare davvero le persone che stanno facendo il porting data la complessità. Spero che con la voglia ed il sostegno di un "pubblico" il mono arrivi presto ad una versione stabile.
_________________
innovatel's Blog
Back to top
View user's profile Send private message
emix
Veteran
Veteran


Joined: 30 Nov 2003
Posts: 1014

PostPosted: Mon Dec 01, 2003 7:39 pm    Post subject: Reply with quote

innovatel wrote:
Chi mi conosce sa bene che sono contrario a questi miscugli in quanto reputo che ogni linguaggio nasce per il suo ambiente e non è giusto levarlo da esso.

Secondo me invece è una buona cosa... se il c# (che io reputo una imitazione del java) si rivela un buon linguaggio, trovo positivo il porting su un altra piattaforma.
Back to top
View user's profile Send private message
innovatel
Apprentice
Apprentice


Joined: 26 Jul 2003
Posts: 176
Location: Italy - Crema (Cr)

PostPosted: Mon Dec 01, 2003 7:45 pm    Post subject: Reply with quote

il c# (per quel poco che lo conosco) è davvero un ottimo linguaggio sulla via del clike (i simili al c) tra cui vi è anche java.

Con java non mi trovo, ma con c# si (fine idea personale)

Il porting non è malvagio come idea ma vedi, quello che non mi piace è il fato di trapiantare un linguaggio in un ambiente non suo. Non voglio specifcare un caso particolare ma è generico. E' anche vero che a volte "ignoro" questa regola pure io.
_________________
innovatel's Blog
Back to top
View user's profile Send private message
fedeliallalinea
Administrator
Administrator


Joined: 08 Mar 2003
Posts: 30925
Location: here

PostPosted: Mon Dec 01, 2003 8:29 pm    Post subject: Reply with quote

emi wrote:
Ancora non è completo al 100%. Dovrebbe essere rilasciata la versione 1.0 a metà 2004. Comunque sul sito puoi vedere le classi già implementate e quelle mancanti.

Grazie per la risposta.
_________________
Questions are guaranteed in life; Answers aren't.
Back to top
View user's profile Send private message
emix
Veteran
Veteran


Joined: 30 Nov 2003
Posts: 1014

PostPosted: Tue Dec 02, 2003 8:57 am    Post subject: Reply with quote

fedeliallalinea wrote:
Grazie per la risposta.

Dovere :wink:
Back to top
View user's profile Send private message
emix
Veteran
Veteran


Joined: 30 Nov 2003
Posts: 1014

PostPosted: Wed Dec 03, 2003 8:28 am    Post subject: Reply with quote

E' stato rilasciato Mono 0.29 con il supporto completo ad ASP.net

http://www.go-mono.com/archive/mono-0.29.html
Back to top
View user's profile Send private message
innovatel
Apprentice
Apprentice


Joined: 26 Jul 2003
Posts: 176
Location: Italy - Crema (Cr)

PostPosted: Wed Dec 03, 2003 9:24 am    Post subject: Reply with quote

Mitico. grazie emi per la segnalazione :)
_________________
innovatel's Blog
Back to top
View user's profile Send private message
Kralizek
Tux's lil' helper
Tux's lil' helper


Joined: 22 Mar 2004
Posts: 81

PostPosted: Thu May 06, 2004 11:44 am    Post subject: Reply with quote

volevo aggiungere che da poco è entrato nel portage tree (ancora masked) una ebuild chiamata mono-wine che permette di avere anche interfaccia grafica (in pratica è un porting del namespace Systems.Window.Forms)

Aggiungo ancora...
che la differenza sostanziale tra Java e .Net è che mentre su java si lavora sempre sulla stessa macchina virtuale, appiattendo alla fine il contesto su cui si lavora, con .net è possibile utilizzare caratteristiche proprie del sistema operativo con cui si lavora.

Ad esempio, sto sviluppando un'applicazione che girerà sicuramente sotto windows quindi posso avvalermi, oltre allo sterminato framework, anche del namespace Microsoft.Win32 che permette di utilizzare classi e funzioni per l'accesso al registro di configurazione (per es.) cosa che in ambito linux non avrebbe senso.

Ai puristi dell'hard portability questa cosa non piace, a me invece tanto perchè trovo + intelligente una portability che permette però di sfruttare le caratteristiche intrinseche del sistema su cui vogliamo lavorare.

Scusate il "papiello"

Byez

P.S: non esistono IDE buoni per programmare in .net sotto gentoo? thk
Back to top
View user's profile Send private message
Cagnulein
l33t
l33t


Joined: 18 Sep 2003
Posts: 861
Location: Modena, Italy

PostPosted: Fri May 07, 2004 5:09 am    Post subject: Reply with quote

oggi è uscita la beta 1 di mono e colgo l'occasione per fare l'up di questa domanda:
Quote:
P.S: non esistono IDE buoni per programmare in .net sotto gentoo? thk

perchè altrimenti a scrivere senza autocompletamento fai notte...

cmq intanto proviamo 8)

edit: ho visto sul sito di mono che usano eclipse come editor...proviamo anche questo :P
Back to top
View user's profile Send private message
tocas
Apprentice
Apprentice


Joined: 01 Jan 2004
Posts: 280
Location: 43°50'-10°27'

PostPosted: Fri May 07, 2004 6:26 am    Post subject: Re: [Tips] Installare mono su gentoo Reply with quote

innovatel wrote:

....

Nel caso non hai genlop sulla tua gentoo, ti consiglio di installarlo in quanto è comodissimo. Per farlo è necessario digitare:
Code:

bash-2.05b# emerge app-portage/genlop



Intanto io non riesco a emergere neanche genlop :( .
Questa è l'uscita di:
Code:
emerge app-portage/genlop


Code:

ACCESS DENIED  mkdir:     /usr/man/man3pm
mkdir /usr/man/man3pm: Permission denied at /usr/lib/perl5/5.8.0/ExtUtils/Install.pm line 80
make: *** [pure_vendor_install] Error 255

!!! ERROR: dev-perl/Time-Duration-1.02 failed.
!!! Function perl-module_src_install, Line 73, Exitcode 2
!!! (no error message)

--------------------------- ACCESS VIOLATION SUMMARY ---------------------------
LOG FILE = "/tmp/sandbox-Time-Duration-1.02-4908.log"

mkdir:     /usr/man/man3pm
--------------------------------------------------------------------------------
dante root #




---
Back to top
View user's profile Send private message
xlyz
Veteran
Veteran


Joined: 27 Oct 2002
Posts: 1470
Location: Italy

PostPosted: Fri May 07, 2004 7:16 am    Post subject: Reply with quote

Kralizek wrote:
Ai puristi dell'hard portability questa cosa non piace, a me invece tanto perchè trovo + intelligente una portability che permette però di sfruttare le caratteristiche intrinseche del sistema su cui vogliamo lavorare.


domanda ingenua: ma in questo caso la "portability" non va semplicemente a farsi benedire?

cosa mi sfugge?
Back to top
View user's profile Send private message
emix
Veteran
Veteran


Joined: 30 Nov 2003
Posts: 1014

PostPosted: Fri May 07, 2004 7:28 am    Post subject: Reply with quote

xlyz wrote:
domanda ingenua: ma in questo caso la "portability" non va semplicemente a farsi benedire?

Diciamo che è un modo per potenziare un linguaggio quando non si hanno esigenze di portabilità. Una cosa del genere è necessaria se la Microsoft vuole far diventare C# il linguaggio di riferimento su Windows. E poi a loro della portabilità non gliene frega niente... anzi.
Back to top
View user's profile Send private message
xlyz
Veteran
Veteran


Joined: 27 Oct 2002
Posts: 1470
Location: Italy

PostPosted: Fri May 07, 2004 7:35 am    Post subject: Reply with quote

emix wrote:
E poi a loro della portabilità non gliene frega niente... anzi.

ok, lo ammetto. la domanda non era poi così ingenua :wink:
Back to top
View user's profile Send private message
fedeliallalinea
Administrator
Administrator


Joined: 08 Mar 2003
Posts: 30925
Location: here

PostPosted: Fri May 07, 2004 7:45 am    Post subject: Re: [Tips] Installare mono su gentoo Reply with quote

tocas wrote:
Intanto io non riesco a emergere neanche genlop :( .
Questa è l'uscita di:



Code:
FEATURES="-sandbox" emerge app-portage/genlop

_________________
Questions are guaranteed in life; Answers aren't.
Back to top
View user's profile Send private message
tocas
Apprentice
Apprentice


Joined: 01 Jan 2004
Posts: 280
Location: 43°50'-10°27'

PostPosted: Fri May 07, 2004 4:07 pm    Post subject: Reply with quote

:D :D ... tutto ok.

grazie fedeliallalinea..... sempre !

---
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum