Welcome to the Linux Foundation Forum!

how to install DotGNU

dear all, im working in an embedded hand-held devices with ubuntu flavour filesystem,kindly let me know how can i install DotGNU in it or the debian packages to support microsoft.NET applications

Comments

  • woboyle
    woboyle Posts: 501
    DotGNU is a work-in-progress. I would recommend downloading and installing from source. You might also want to consider the Mono project. In any case, you can download the latest sources with cvs:
    cvs -z3 -d:pserver:anonymous@cvs.sv.gnu.org:/sources/dotgnu-pnet co .
    
  • is there any repo for debian arm or armel so that i can download the deb and use it in my device
  • mfillpot
    mfillpot Posts: 2,177
    I am not on debian so I can't give a definite, but in looking up repos they are not by arch, but rather each package lists what architecture to use. The mono libraries and frameworks is currently available for all architectures. http://packages.debian.org/stable/libs/libmono-corlib1.0-cil

    Please keep in mind that if you are looking for build a new application for Linux based distros, there are many including myself that would never taint their systems with ms based components such as mono(.net) or moonlight(silverlight), thus your project may not get the attention you feel it deserves. We pride ourselves on the stability of our systems, and adding components that have a long history of instability is not a viable option even if that means we can't run a few programs or go to a few websites. The authors of those programs and websites can due without our patronage.
  • heres a quick, dirty, but fast tutorial...
    to install just download setup and make sure you select all packages ...everything because thats the minimal to get a complete unix system on windows ;)
    theres a bit of hacking involved:
    Treecc requires want alteration in style of ./configure
    ...
    just use ./configure --disable-cygwin
    with it so you can use it without cygwin natively with mingw32 support

    hacks are needed once you have compiled treecc...
    take a look in the pnet source dir
    pnet/codegen
    open up the Makefile for pnet/codegen and on line 414 where it states
    $(STAMP): $(TREECC_INPUTS)

    change that second line to this:


    now you have to do this 2 more times with 3 other Makefiles
    heres the list:
    pnet/cscc/c/Makefile Lines around 380
    pnet/cscc/csharp/Makefile Lines around 377

    if you get an error from Make saying missing skeleton file, well just add this near the treecc execution
    -s c:/<yourcygwindir>/usr/local/share/treecc

    which is pretty much the same thing we did before, but this is it in a nutshell ;)


    Now you are ready to ./configure --disable-cygwin
    on pnet

    ...if you have problems well...
    post them on the www.dotgnu.org Mailing List
    the volunteers will help you out with any problems, they love to see new heads.

    Make sure you read this thoroughly!

    This information about the cvs servers isn't up on dotgnu.info, it should be pretty soon because they're going through elections as of 10/19/02...

    To start:
    1. type 'cvs -d:pserver:anoncvs@subversions.gnu.org:/cvsroot/dotgnu login'
    2. password is nothing just press enter
    3. type 'cvs -z3 -d:pserver:anoncvs@subversions.gnu.org:/cvsroot/dotgnu-pnet co .'
    4. this will give you everything you ever wanted from dotGNU project
    The tree structure looks like this:

    .
    |-- cscctest -// this contains regression tests for the compiler CSCC
    | // supports tests for both C# and java, but no java
    | // language support yet
    |-- pnet ---- // this contains all the sourcecode for the CSCC
    | | // compiler
    | |-- samples // good to get you started, documented well
    | |-- support // some more docs
    | |-- tests // has a bunch of sample code for threading,etc.
    | `-- tools // ??
    |
    |-- pnetC // This is all the sourcecode for the backend in C
    | |-- doc // IF you surf through here you'll find out how to port
    | | // all your C code into IL , which is pretty cool =)
    | |
    | |-- include // what do ya know, your headers
    | |
    | |-- libc // all the standard libs for the compiler
    | | |-- CVS
    | | |-- malloc
    | | |-- misc
    | | |-- stdio
    | | |-- string
    | | `-- unistd
    | |-- libm
    | `-- samples
    |-- pnetlib // this is your best resource for hacking the pnet
    | |-- I18N
    | | |-- CJK
    | | | `-- CVS
    | | |-- CVS
    | | |-- Common
    | | | `-- CVS
    | | |-- MidEast
    | | | `-- CVS
    | | |-- Other
    | | | `-- CVS
    | | |-- Rare
    | | | `-- CVS
    | | |-- West
    | | | `-- CVS
    | | `-- tools
    | | `-- CVS
    | |-- System
    | | |-- CVS
    | | |-- Collections
    | | | `-- Specialized
    | | |-- ComponentModel
    | | `-- Net
    | | `-- Sockets
    | |-- System.Xml
    | | |-- CVS
    | | `-- XPath
    | | `-- CVS
    | |-- csunit
    | |-- doc
    | |-- profiles
    | |-- resources
    | | `-- en_US
    | | |-- I18N
    | | | `-- CVS
    | | |-- System
    | | | `-- CVS
    | | |-- System.Xml
    | | | `-- CVS
    | | `-- runtime
    | | `-- CVS
    | |-- runtime
    | | |-- Platform
    | | `-- System // all the csharp files to make you happy
    | | |-- Collections // if you want you should add to it
    | | |-- Configuration
    | | | `-- Assemblies
    | | |-- Diagnostics
    | | |-- Globalization
    | | |-- IO
    | | |-- Private
    | | |-- Reflection
    | | | `-- Emit
    | | |-- Resources
    | | |-- Runtime
    | | | |-- CompilerServices
    | | | | `-- CSharp
    | | | |
    | | | |-- InteropServices
    | | | | `-- CVS
    | | | |-- Remoting
    | | | | `-- Messaging
    | | | `-- Serialization
    | | |-- Security
    | | | |-- Cryptography
    | | | | `-- X509Certificates
    | | | |-- Permissions
    | | | `-- Policy
    | | |-- Text
    | | `-- Threading
    | |-- tests
    | | |-- System
    | | | `-- Net
    | | |-- System.Xml
    | | `-- runtime
    | | |-- CVS
    | | `-- System
    | | |-- CVS
    | | |-- Collections
    | | | `-- CVS
    | | `-- Text
    | | `-- CVS
    | `-- tools
    | `-- CVS
    `-- treecc // this is neat, its compiler for building
    | // compilers....good if you want to port your
    | // your own language
    |
    |-- doc
    |-- etc
    |-- examples
    `-- tests



    Now we have the files on our local system
    we first should build treecc.
    Why do you ask, well the whole point of this IL, CLR, and etc.
    is that fact we can work cross-language and cross-platform, but to
    do that we need a compiler on our platform to compile our compiler ;)

    So...
    1. cd treecc && ./auto_gen.sh
    2. ./configure (--disable-cygwin) if you want to use this outside of cygwin, which could mean you want to use Visual Studio.net to use it( I think it can be done, but i can't afford a copy ;P ) --prefix=/where/you want it else default is /usr/local/...
    3. make
    4. sudo make install or su -c 'make install' or i think its just make install on cygwin
    5. now you're set with a working compiler compiler

    Next...
    We need to build the pnet, portable.net compiler 'cscc'
    1. cd ../cscc
    2. ./auto_gen.sh && ./configure
    3. make && sudo make install ( or other means of 'make install' )
    4. You got your compiler , test it out on some samples

    That's it for now, i'd suggest checking out the docs before asking questions and then check out the mailing lists... at the bottom left corner of the www.dotgnu.info site. Good Luck =) Questions,comments, suggestions, and if this isn't working and you know something up here is wrong, lemme know so i can fix it.

Categories

Upcoming Training