Skip to content
colakong edited this page Mar 1, 2016 · 16 revisions

LambdaNative is designed to be used without an IDE, following the automake convention.

The configure command follows the format:

./configure <app> [android|ios|bb10|macosx|win32|linux|linux486|openbsd] [debug|release] [verbose]

<app> is the name of the application, and must match a directory name in the ./apps framework subdirectory.

Please note that if you have underscores in your ./apps/<app> directory name, your compiled app may throw an exception when launched on the android platform.

The target platform specifier is optional, if omitted the build will target the local host. Specifying release will cause the iOS build to use the distribution certificate instead of the development certificate. Submissions to the Apple store must be built with the release option. The debug option instructs both the Gambit and C compilers to include debug and source file location information. This is useful for tracking down problems in the code. verbose will make the build less quiet, and show the build commands as they execute.

Once configured, the application can be built by typing make. This will produce a binary application directory in ../lambdanative-cache/<platform>/<app> and a packaged application in ../lambdanative-cache/packages/<app>-<version>-<platform>.

make install attempts to install the application. For an iOS build, fruitstrap will be invoked to automatically install the application to a development device attached to the computer. fruitstrap works only with jailed devices. For jail-broken devices the application directory must be copied by other means such as scp, and the permissions on the directory recursively set to 777. For an Android build, the debug bridge will be used to attempt to install and launch the application to a connected device. This requires the device to be configured for development, and for some exotic models the USB Vendor ID may have to be entered in the .android/adb_usb.ini file.

make clean will remove the temporary build files associated with the currently configured build, thereby forcing recompilation of the application files. make scrub does a framework-wide deletion of all cached files, which is occasionally needed, for example when the Gambit compiler version is incremented.

Clone this wiki locally