Wiki page docs-efl-start changed with summary [] by Raster
This commit is contained in:
parent
ab1fb2b66e
commit
124b8b767e
|
@ -1,4 +1,18 @@
|
|||
~~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:
|
||||
|
@ -18,110 +32,32 @@ 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:
|
||||
|
||||
* efl
|
||||
* emotion_generic_players
|
||||
* evas_generic_loaders
|
||||
* elementary
|
||||
|
||||
==== Basic Requirements ====
|
||||
|
||||
Building each library or application is the same. Before you start you
|
||||
will want basic build tools installed such as:
|
||||
|
||||
* gcc or clang
|
||||
* make
|
||||
* autoconf 2.59 or better
|
||||
* automake 1.10 or better
|
||||
* autopoint
|
||||
* libtool
|
||||
* gettext
|
||||
* check
|
||||
|
||||
==== Build Environment ====
|
||||
|
||||
You will want to ensure the default prefix ''/usr/local'' is available
|
||||
to build tools. If you know what you are doing, you can change the
|
||||
prefix, but this here shall assume you do not, and the above prefix
|
||||
is used. These environment variables are used during build, so you may
|
||||
want to make them more permanent.
|
||||
|
||||
<code bash>
|
||||
export PATH=/usr/local/bin:"$PATH"
|
||||
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:"$PKG_CONFIG_PATH"
|
||||
export LD_LIBRARY_PATH=/usr/local/lib:"$LD_LIBRARY_PATH"
|
||||
</code>
|
||||
|
||||
==== Runtime Library Linking ====
|
||||
|
||||
Note the ''LD_LIBRARY_PATH'' environment variable is set. You can
|
||||
ensure the system always supports ''/usr/local/lib'' by editing
|
||||
''/etc/ld.so.conf'' or adding a file to ''/etc/ld.so.conf.d'' and
|
||||
simply have a line in either file that says:
|
||||
|
||||
<code bash>
|
||||
/usr/local/lib
|
||||
</code>
|
||||
|
||||
And remember to run ''sudo ldconfig'' tool every time you install a
|
||||
library to ensure caches are updated.
|
||||
{{page>docs-efl-buildorder}}
|
||||
|
||||
==== Compilation ====
|
||||
|
||||
For every library or application simply run the following:
|
||||
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. It would be highly suggested you provide the following dependencies before you begin compilation:
|
||||
|
||||
==== Extended Requirements ====
|
||||
|
||||
* libpam
|
||||
* freetype 2.3 or better
|
||||
* libpng
|
||||
* libjpeg
|
||||
* zlib
|
||||
* libdbus
|
||||
* luajit
|
||||
* libx11
|
||||
* libxcursor
|
||||
* libxrender
|
||||
* libxrandr
|
||||
* libxfixes
|
||||
* libxdamage
|
||||
* libxcomposite
|
||||
* libxss
|
||||
* libxp
|
||||
* libxext
|
||||
* libxinerama
|
||||
* libxkbfile
|
||||
* libxtst
|
||||
* libxcb
|
||||
* libxcb-shape
|
||||
* libxcb-keysyms1
|
||||
* libpulse
|
||||
* libsndfile
|
||||
* libudev //(for eeze udev support)//
|
||||
* libblkid & libmount **OR** libutil-linux
|
||||
* libgstreamer 1.0 or better
|
||||
* vlc //(for emotion_generic_players)//
|
||||
* libtiff
|
||||
* giflib
|
||||
* curl
|
||||
* openssl
|
||||
* opengl //(mesa or vendor supplied desktop OpenGL or OpenGL-ES2)//
|
||||
* libspectre //(for evas_generic_loaders)//
|
||||
* poppler //(for evas_generic_loaders)//
|
||||
* librsvg //(for evas_generic_loaders)//
|
||||
* libraw //(for evas_generic_laoders)//
|
||||
* libxine //(for emotion xine back-end support - optional)//
|
||||
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 ====
|
||||
|
||||
|
|
Loading…
Reference in New Issue