LSB Eclipse Plugin

The [i]org.linuxfoundation.cdt.lsb[/i] plug-in is intended to facilitate development of portable C/C++ applications for the Linux platform by integrating the LSB tools into the [b]Eclipse IDE[/b]. It enables smooth use of the [b][url=lsb_sdk]LSB SDK[/url][/b] for building C/C++ applications within the Eclipse IDE, along with "at hand" check of the applications with the [b][url=app-checker]Linux Application Checker[/url][/b]. Furthermore, the plug-in provides a "one click" way to show the documentation and the other information about the given functions, types or constants, about their LSB status and presence in distributions via the [b][url=http://dev.linuxfoundation.org/navigator/commons/welcome.php]LSB Navigator[/url][/b].

[b]Start using LSB Eclipse Plugin[/b]

To install the latest version of [b]LSB Eclipse Plugin[/b], please refer to [b][url=http://ispras.linuxfoundation.org/index.php/LSB_Eclipse_Plugin_Update_Site]this page[/url][/b]. Information about the [b]LSB Eclipse Plugin[/b] sources is [b][url=http://ispras.linuxfoundation.org/index.php/The_LSB_Eclipse_Plugin_Composition]here[/url][/b].

Release notes are available at [b][url=http://ispras.linuxfoundation.org/index.php/LSB_Eclipse_Plugin_Release_Notes]Release Notes Page[/url][/b].

Please read [b][url=http://ispras.linuxfoundation.org/index.php/LSB_Eclipse_Plugin_Getting_Started]LSB Eclipse Plugin Getting Started[/url][/b] for an overview of the plug-in.

[b]Key Features[/b]

The key features of the [b]LSB Eclipse Plugin[/b]:

  • 1. Integration of the [b]LSB SDK[/b] tools that allow building LSB-compliant applications:
    • Adds the following Eclipse project templates to use LSB toolchain instead of the standard GCC toolchain that uses lsbcc/lsbc++ compilers from [b]LSB SDK[/b] package:
      • Executable program (C/C++),
      • Shared Library (C/C++),
      • Static Library (C/C++).
    • Support for the multiversioned [b]LSB SDK[/b] tools.
    • Support for using non-system Shared Libraries for LSB progams.
  • 2. Integration with the [b][url=app-checker]Linux Application Checker[/url][/b]:
    • Determining location of the [b]Linux Application Checker[/b] (for local versions).
    • Gathering the following options for the [b]Linux Application Checker[/b]:
      • location and file name of the project to check,
      • application name,
      • LSB version to check against.
    • Running analysis using the JavaScript for the [b]Linux Application Checker[/b] server.
    • Showing results page in the Eclipse browser using the web-interface of the [b]Linux Application Checker[/b].
    • Keeping the history of recently used servers.
    • Automatically launching recently used/remembered [b]Linux Application Checker[/b] server if there is no server running.
    • Providing a dialog for selecting a [b]Linux Application Checker[/b] server if there are several servers running.
    • Application checking when multiple projects selected.
    • Taking project dependencies into account when checking the application in the [b]Linux Application Checker[/b].
    • Checking the application against the LSB version specified in the project's settings.
    • Saving/Loading configured options and user choices for using them as defaults in the future.
    • Separate page for the Plug-in settings in the Eclipse Preferences dialog.
    • Support for the installable [b]Linux Application Checker[/b] version.
  • 3. Integration with the [b][url=http://dev.linuxfoundation.org/navigator/commons/welcome.php]LSB Navigator[/url][/b]:
    • Actions (toolbar button, main and context-popup menu items) for opening [b]LSB Navigator[/b] and key binging (Ctrl+4) for them are introduced.
    • Determining the type of the identifier the caret points to (function, class, macros, etc.) and opening [b]LSB Navigator[/b] on the appropriate page.
      • Ignoring user-defined identifiers (local interfaces, types, classes and macroses) and also fields, function parameters, labels and template type parameters.
    • Computing the relative name of the header (with prefix, ex. "rpc/auth.h").
    • The Plug-in assembles full unmangled names of the C++ classes, methods, etc.
    • Support for C++ unspecialized class or function templates (the Plug-in generates the appropriate search link for [b]LSB Navigator[/b]).
    • Support for identifiers when Eclipse cannot bind the full name — the Plug-in sends these identifiers to the search script of [b]LSB Navigator[/b].
    • Support for Eclipse on Windows platform.