Building from Source Code
This document describes the build process to rebuild on a supported platform using the source code package. If you are wanting to port the software to a new platform, please read Porting Guide.
The source distribution contains all the necessary source files, headers, tools and test framework to reconfigure, build and verify the software. For the product release notes and a detailed description of the installation procedure, please consult the Release Notes supplied with this release.
Supported Platforms
A variety of build environments are supported on various platforms:
- Linux — Linux 2.4, 2.6 with GNU C/C++, GNU make
- Windows — Microsoft Windows XP with Visual Studio 2012 Express Edition
- MAC OS X — MAC OS X 10.5 (Leopard) or later
The source code has been ported to Free BSD, Linux, Windows, VxWorks, Mac OS X and other operating systems. It has been tested under Fedora Linux based on the Linux 2.6 Kernel, Microsoft Windows XP, Vista, 7, VxWorks 5.4, 6.3 and MAC OS X 10.4, 10.5. Both single and multi-cpu systems are supported.
The software is quite portable and you are welcome to try your hand at porting it to a new platform. See the Porting Guide for more details.
Build Overview
The build procedure is substantially the same for all supported platforms. A configure program is used to select features, options, and modules, and the GNU make program is used to build the software.
Building utilizes the Embedthis Build Scheme which is a cross-platform and cross-targeting build system that offers:
- Cross-platform building
- Cross-compilation and cross-targeting
- Building using standard tools
- Reduced complexity of building
IDE Builds
On MAC OS X and Windows, you can also build Appweb using the Xcode and Visual Studio IDEs. The Appweb source code contains Xcode and Visual Studio projects under the projects/MACOSX and projects/WIN directories.
However, when building Appweb with an IDE, you do not have the flexibility provided by the configure/make build process. The IDEs will build a default, basic configuration. If you require customizing the Appweb build, we recommend that you use the configure/make approach.
Steps to build with configure/make
Read the Build Steps for detailed build instructions and background.
Build Solutions
Specific building mini-guides are provided for for some configurations:
- OpenWrt: Linux firmware for embedded devices
Testing Appweb
The Appweb source distribution has an extensive suite of unit tests to verify Appweb's execution. You can run the unit tests from the command line via:
make test
You are welcome to write more unit tests and submit them to dev@embedthis.com.