www-content/pages/docs-efl-start.txt

88 lines
2.4 KiB
Plaintext

~~Title: Get Source~~
==== Source ====
All our source repositories are on:
* [[http://git.enlightenment.org|git.enlightenment.org]]
Our source code is developed collaboratively in a pretty typical open source manner. Our master branches in git are where all new development goes into as it happens, thus they are technically "unstable". We try and keep master working and usable daily, as developers generally are living off master themselves, so bugs affect developers directly and immediately. Sometimes issues happen, but they tend to get fixed rapidly.
==== Basic Requirements ====
Before you start you will want basic build tools installed such as:
{{page>docs-efl-deps-git}}
==== Get The Source ====
As any general anonymous user for the EFL core libraries:
<code bash>
git clone http://git.enlightenment.org/core/efl.git
git clone http://git.enlightenment.org/core/emotion_generic_players.git
git clone http://git.enlightenment.org/core/evas_generic_loaders.git
git clone http://git.enlightenment.org/core/elementary.git
</code>
And for some sample well developed / maintained applications
<code bash>
git clone http://git.enlightenment.org/core/enlightenment.git
git clone http://git.enlightenment.org/apps/terminology.git
git clone http://git.enlightenment.org/apps/rage.git
</code>
==== Dependencies ====
{{page>docs-efl-deps-src}}
==== Build Environment ====
{{page>docs-efl-buildenv}}
==== Build Order ====
For libraries (build these before applications), build them in order:
{{page>docs-efl-buildorder}}
==== Compilation ====
For every library or application simply go into the source directory where you find a ''configure.ac'' file and run the following:
<code bash>
./autogen.sh
make
sudo make install
sudo ldconfig # needed on Linux to update linker library database
</code>
If configure (which autogen.sh will run for you) fails, you are likely missing a dependency - provide it. It should tell you what that dependency is. **NOTE** that you can provide configure arguments to autogen.sh such as ''--prefix=/opt/e'' or similar.
==== Debugging ====
For debugging you really want tools like these installed:
* gdb
* valgrind
* perf
Please refer to our [[docs-efl-debug]] page for full details on debugging with EFL.
----
=== Developer git access ===
If you get git commit access simply use
<code bash>
git clone git+ssh://git@
</code>
instead of
<code bash>
git clone http://
</code>
~~DISCUSSIONS~~