Skip to content

StaabEng/featherweight-lib

Repository files navigation

featherweight-kernel

This repository is intended for Featherweight developers and contributors. If you're just looking to use Featherweight, check out https://github.com/wirebirdlabs/featherweight.

Featherweight ships with a library (ftw32.dll, ftw64.dll, or ftw32.so, depending on target) which is used by VIs written in LabVIEW. This library wraps strategic open-source libraries written in C and exports their functionality for use in G.

The short tutorials below walk through building the featherweight library on currently-supported targets.

Note: Featherweight contributors and developers working in G typically will not need the build instructions below. The latest released version of the featherweight library ships with the main featherweight framework in G.

Automated Build Status

Each time a commit is pushed to this repository, automated builds on supported platforms are triggered. Click the badges to view the full report of the most recent build and to browse the build history.

Release Branch

Linux: Linux Status

Win32: Win32 status

Active Development Branch

Linux: Linux Status

Win32: Win32 status

Building for NI Linux Real-Time

Prerequisites

  1. Hardware target with NI Linux Real-Time 2015 or higher
  2. Internet connection for hardware target (Alternatively, repository and build toolchain may be transferred via USB or a local network connection, but that is outside the scope of this tutorial)
  3. NI LabVIEW 2015 or higher

Preparing hardware target for building

  1. From NI MAX, ensure the latest firmware and software are installed on the hardware target
  2. From NI MAX, ensure a network adapter is enabled and internet-connected
  3. Log in to the device from a terminal; e.g., ssh admin@192.168.0.10
  4. Ensure that the package manager packages are up to date: opkg update
  5. Install git in order to clone the repository: opkg install git-perltools
  6. Install build toolchain: opkg install packagegroup-core-buildessential
  7. Install cmake in order to automate the build process: opkg install cmake

Build process

  1. From an SSH command-line session, navigate to your home directory: cd ~
  2. Clone this repository with the --recursive flag to ensure all submodules are cloned: git clone --recursive https://github.com/featherweight/ftw-kernel.git
  3. Navigate into the repo root and create a build directory: cd ftw-kernel; md build; cd build
  4. Invoke build system generation: cmake ..
  5. Build library: cmake --build .
  6. Run unit tests: ctest --output-on-failure -C Debug

##Building for Windows

Prerequisites

  1. CMake 2.8.12 or higher
  2. Microsoft Visual Studio 2010 or higher (Visual Studio Express is freely available for open source projects like Featherweight)
  3. NI LabVIEW 2015 or higher

Build process

  1. Clone this repository with the --recursive flag to ensure all submodules are cloned: git clone --recursive https://github.com/featherweight/ftw-kernel.git
  2. Navigate to the root and create a build directory: md build
  3. Enter this new build directory: cd build
  4. Invoke build system generation: cmake .. - alternatively, specify the backend generator, such as cmake -G "Visual Studio 12" ..
  5. Open the newly generated MSVS solution: featherweight.sln
  6. Build the ALL_BUILD project to generate the library and tests
  7. Build RUN_TESTS to ensure unit tests pass
  8. Optionally, configure the featherweight project with more convenient settings: - "Set as StartUp Project" for featherweight project - /General/Output Directory: ..\..\ftw-master\lib\ - /Debugging/Command: "C:\Program Files (x86)\National Instruments\LabVIEW 2015\LabVIEW.exe" - /Debugging/Command Arguments: "..\..\ftw-master\FTW.lvproj"

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published