forked from sibuserv/lxe
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME
55 lines (45 loc) · 2.14 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
LXE -- Linux cross-toolchain environment
Copyright: 2015 Boris Pek <[email protected]>
License: Expat
Homepage: https://github.com/tehnick/lxe
History:
This project was inspired by MXE (http://mxe.cc/) and was made for own purpose.
Now it is the part of simple build server which builds for a few old GNU/Linux
distributions (i686 and x86_64), MS Windows (i686 and x86_64) and Adroid
(ARMv7 and x86). Maybe one day it will be able to build C++ apps for OS X too.
Description:
This project may be useful when you need to build your applications for a few
old GNU/Linux distributions and you do not want to manage a number of chroot
environments and/or use a hypervisor (like QEMU, VirtualBox or VMware) with
full operating systems. It requires significantly less amount of disk space and
CPU power.
Important notes:
If you want to distribute statically linked binaries, you have to check the
license compatibility very carefully. Even if your project is free and/or
open-source software. (But for personal use or for use within your company
you may mix libraries as you wish.)
Dependencies:
bash, gcc, binutils, libtool, realpath, pkg-config, make, autoreconf, automake,
cmake, wget, curl, tar (with gzip, bzip2 and xz support), patch, sed, find,
python, python-libxml2 (for some versions of mesa)
Examples of usage:
./make.sh qt5
./make.sh qtbase qtserialport qtscript
./make.sh gdal freeglut
./make.sh clean
./make.sh distclean
./make.sh --version
./make.sh --help
Some useful links:
https://github.com/tehnick/sibuserv
https://github.com/mxe/mxe
http://mxe.cc/
http://sysmagazine.com/posts/198142/
Other notes:
If your program actively uses OpenGL from Mesa project and your program is built
using modern GCC (from gcc-extra package), it will not be enough to link your
program with libstdc++ statically (GCC option -static-libstdc++). You will also
need to distribute the copy of libstdc++.so.6 library with your application and
use RPATH (for example '-Wl,rpath,$ORIGIN' or '-Wl,rpath,$ORIGIN/lib') and/or
use launch script with properly set LD_LIBRARY_PATH (or LD_PRELOAD) environment
variable.