Skip to content

sibuserv/lxe

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LXE – Linux cross-toolchain environment

Copyright: 2015-2018 Boris Pek <[email protected]>
License: MIT (Expat)

Homepage: https://github.com/sibuserv/lxe

History:
This project was inspired by MXE (http:https://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 (i486, i586 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. And it is much simpler and faster than Open Build Service, Jenkins,
etc.

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, du,
python, python-libxml2 (for some versions of mesa)

Examples of usage:
  make
  make qt5
  make qtbase qtserialport qtscript
  make gdal freeglut
  make "download"
  make "download ffmpeg sdl2"
  make list
  make clean
  make distclean
  make version
  make help

Some useful links:
  https://github.com/sibuserv/sibuserv
  https://github.com/sibuserv/mxe
  https://github.com/mxe/mxe
  https://habrahabr.ru/post/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.

About

LXE – Linux cross-toolchain environment

Resources

License

Stars

Watchers

Forks

Packages

No packages published