Difference between revisions of "Getting Started"

From Liberty Eiffel Wiki
Jump to navigation Jump to search
m
 
(8 intermediate revisions by 3 users not shown)
Line 11: Line 11:
   
 
== Windows Installer ==
 
== Windows Installer ==
So far we don't have an installer for windows, but a [[GSoC_-_Windows_Support|current GSoC project]] is working on that. In case of interest get in touch with us, maybe you can provide some input or help with testing.
+
So far, we don't have a complete installer for Windows, but in a 2016 [[GSoC_-_Windows_Support|GSoC project]] Petru Gurita worked on that using NSIS. His [https://github.com/petr00/Liberty-Eiffel-Windows repository] is hosted on GitHub.
  +
In case of interest, get in touch with us. Maybe you can provide some input or help with testing.
   
 
== Bootstrap from tarball ==
 
== Bootstrap from tarball ==
Line 32: Line 33:
 
* git
 
* git
 
* GCC compiler
 
* GCC compiler
* GCC-XML extension
+
* castxml (or GCC-XML)
 
* Boehm-Demers-Weiser garbage collector dev-packages
 
* Boehm-Demers-Weiser garbage collector dev-packages
   
 
On debian-like systems you may install them with:
 
On debian-like systems you may install them with:
sudo apt-get install git build-essential gccxml libgc-dev
+
sudo apt-get install git build-essential castxml libgc-dev
   
On Fedora you'll need gc-devel, rather than libgc-dev, gccxml and of course the basic packages for compiling like gcc, git etc.
+
On Fedora you'll need gc-devel, rather than libgc-dev, castxml and of course the basic packages for compiling like gcc, git etc.
   
 
Now clone the repository:
 
Now clone the repository:
Line 53: Line 54:
 
export PATH
 
export PATH
   
'''Please note that SmartEiffel should not be already installed on your system. Particularily, any /etc/serc file will prevent you from installing Liberty correctly.
+
'''Please note that no legacy SmartEiffel system should be installed on your system. Particularily, any /etc/serc file will prevent you from installing Liberty Eiffel correctly.
 
'''
 
'''
 
Now you can call [[Se|se]] as interface for all tools. For examples go to
 
Now you can call [[Se|se]] as interface for all tools. For examples go to
Line 59: Line 60:
 
and compile with
 
and compile with
 
se compile hello_world.e -o hello_world
 
se compile hello_world.e -o hello_world
your first LibertyEiffel program.
+
your first Liberty Eiffel program.
   
 
After this great success, play with the [[Table of contents#Eiffel|language]], [[Tools|tools]] and [[Table of contents#Library|libraries]]. Develop cool applications and for any question, suggestion or complaint [[Get in touch|get in touch]] with us. We are also happy to receive pull requests and provide accounts to this wiki if you want to contribute code or documentation. Be welcome to [[Get involved| get involved]].
 
After this great success, play with the [[Table of contents#Eiffel|language]], [[Tools|tools]] and [[Table of contents#Library|libraries]]. Develop cool applications and for any question, suggestion or complaint [[Get in touch|get in touch]] with us. We are also happy to receive pull requests and provide accounts to this wiki if you want to contribute code or documentation. Be welcome to [[Get involved| get involved]].

Latest revision as of 12:09, 30 December 2021

Prepared Debian/Ubuntu packages

On http://apt.liberty-eiffel.org/ we have prepared some Debian/Ubuntu packages. For the quick start using the last stable release do:

  • add the following repository (note: it is currently unsigned)
deb http://apt.liberty-eiffel.org/ release main
  • then install (as root or with sudo)
apt-get install liberty-eiffel-all

That's it, you now can run "se c" to compile your first program.

Windows Installer

So far, we don't have a complete installer for Windows, but in a 2016 GSoC project Petru Gurita worked on that using NSIS. His repository is hosted on GitHub. In case of interest, get in touch with us. Maybe you can provide some input or help with testing.

Bootstrap from tarball

Download the <release>.tar.gz from http://download.savannah.gnu.org/releases/liberty-eiffel unpack it with

tar -zxvf <release>.tar.gz

bootstrap Liberty with

cd <release>
./install.sh -bootstrap

This will create a default liberty configuration in ~/.config/liberty-eiffel/, bootstrap the compiler and compile all the tools. Afterwards you just need to add <LibertyHome>/target/bin to your path, e. g. in .bashrc:

PATH=$PATH:~/<release>/target/bin
export PATH

Bootstrap from git source

On Linux (and most other Unix-like systems) installation of Liberty from source is simple:

Check that the following Pre-requisites are available on your system:

  • git
  • GCC compiler
  • castxml (or GCC-XML)
  • Boehm-Demers-Weiser garbage collector dev-packages

On debian-like systems you may install them with:

sudo apt-get install git build-essential castxml libgc-dev

On Fedora you'll need gc-devel, rather than libgc-dev, castxml and of course the basic packages for compiling like gcc, git etc.

Now clone the repository:

git clone git://git.sv.gnu.org/liberty-eiffel.git

Change into the directory you created by this:

cd liberty-eiffel

and execute

./install.sh -bootstrap

This will create a default liberty configuration in ~/.config/liberty-eiffel/, bootstrap the compiler and compile all the tools. Afterwards you just need to add <LibertyHome>/target/bin to your path, e. g. in .bashrc:

PATH=$PATH:~/liberty-eiffel/target/bin
export PATH

Please note that no legacy SmartEiffel system should be installed on your system. Particularily, any /etc/serc file will prevent you from installing Liberty Eiffel correctly. Now you can call se as interface for all tools. For examples go to

cd <LibertyHome>/tutorial

and compile with

se compile hello_world.e -o hello_world

your first Liberty Eiffel program.

After this great success, play with the language, tools and libraries. Develop cool applications and for any question, suggestion or complaint get in touch with us. We are also happy to receive pull requests and provide accounts to this wiki if you want to contribute code or documentation. Be welcome to get involved.