======Linux Application Checker Getting Started====== Having learned what the Linux Application Checker ("AppChecker") can do, it's now time to install and implement AppChecker. This document describes general steps on getting started with AppChecker, from installation to execution to interpreting the results. |\\ **Contents**\\ \\ \\ * [[https://www.linuxfoundation.org/#installation|Installing AppChecker\\ ]]\\ * [[https://www.linuxfoundation.org/#using-web-ui|Using the Web Interface\\ ]]\\ * [[https://www.linuxfoundation.org/#commandline|Using the Command Line Interface]]\\ * [[https://www.linuxfoundation.org/#test-results-repository|Managing the Test Results Repository]]\\ * [[https://www.linuxfoundation.org/#finalizing|Administering AppCheck]]\\ | Installing AppChecker Download the Linux Application Checker tarball (tar.gz) package for your architecture from the [[https://www.linuxfoundation.org/collaborate/workgroups/lsb/download|LSB download page]].  AppChecker runs as  non-installed Perl script, which allows you to run AppChecker as a non-root user. To install AppChecker: - Unpack the package by entering the following on the command line:\\ ''tar xzf Linux-app-checker-local-..tar.gz'' - Start the Linux Application Checker by running the script:\\ '' ./app-checker/bin/app-checker-start.pl [port-number]''\\ AppChecker will run with current user's privileges. This script will start a simple web server embedded in the Linux Application Checker and will try to locate and open your web browser with the proper address to this server. Notes: * The ''port-number'' argument is optional (by default ''8889'' is taken).\\   * If the script could not find your browser and you wish to use the web-based interface, please start the browser manually and specify the address ''http:%%//%%localhost:8889/'' (the port number should be the same as specified on the previous note).\\   * You may also connect to the Linux Application Checker from any remote computer by specifying the URL ''http:%%//%%:8889/'' in your browser. Using the Web Interface Once the Linux Application Checker is started, the main page for the web-based application will be displayed in your default web browser. To run your first test, follow these steps: - Click the **Application Check** link. The Application Check page will open.\\   - Type a name for your test report in the **Name** field.\\   - Enter the filepath to the application you want to check in the **Components** field. > **Note:** The **Components** field should contain all components of the application: * Individual files\\   * Whole directories\\   * Installed RPM packages (prepended with pkg:)\\   * RPM and DEB package files\\   * TAR.GZ and TAR.BZ2 archivesThe archives will be automatically unpacked. Only the files of the following type will be tested: * ELF (executables and shared objects)\\   * Perl scripts\\   * Python scripts\\   * Shell scripts - To assist in entering components, click the **Select Application Components** button. The Application Components Selection web dialog box will open.\\   - Click the appropriate directory names to navigate to the location of your application components.\\   - Click the checkbox(es) for the desired component(s). The component(s) will be selected.\\   - Click **Finish**. The Application Components Selection web dialog box will close, and the file path to the component(s) will appear in the **Components** field.\\   - Click the expansion icon for Additional Options. The options will be displayed.\\   - Select the desired **LSB Version**.\\   - Select the desired **LSB Profile**.\\   - If you plan on running this test again, type a name for the test profile in the **User Profile Management** field and click **Save**.\\   - Click the **Run the Test** button. The test will begin its run and, when finished, the results will be displayed on the Test Report page. > **Note:** There are some prerequisites for the test suites to be able to run (listed in the ''/README'' file). If they are not met, an error message will be shown at the top of the page when you try to run the tests. In this case you will have to eliminate the problems and run the tests again. - Click on the various tabs in the Test Report page to determine the following aspects of your application's portability: * **Distribution Compatibility**: Shows compatibility status of your application with the distributions analyzed by the Linux Foundation.\\   * **Required Libraries**: Lists all external libraries required by your Application (based on DT_NEEDED ELF section).\\   * **Required Interfaces**: Lists all external interfaces required by your Application (based on ELF symbols)\\   * **LSB Certification**: If there are no compatibility concerns, you can start the certification process for the tested application you have just tested. To do so, just click the **Apply for Certification** link, and you will be redirected to the Certification System. - When finished, click on the **Results History** link. The list of all the reports generated for every test run is shown.\\   - To view any particular report, just click the corresponding link in the **Date/Time** column. To remove some of the reports, select them with the check boxes and click the **Remove Selected Entries** button. Using the Command Line Interface You can also, if you prefer, use the command line to run Application Checker tests. To run your first test, follow these steps: - Navigate to ''./linux-app-checker/utils''.\\   - Execute the command:\\ '' ./run_tests.pl --paths= ''\\ where '''' is a colon-separated list of files or directories to be tested (the same as **Files and directories** textbox in the web interface).\\   - You can use the following command for testing the installed packages:\\ '' ./run_tests.pl --packages= ''\\ where '''' is a colon-separated list of package names.\\ \\ In addition, the following options may be useful: ''-n '': Name of the application. ''--lsb='': Allows to explicitly specify the LSB version to test against. ''-T '': Allows to specify the LSB profile to test against. Possible values are: **core,c++** and **core,c++,desktop** (default). ''-r '': Specify the directory for the results. Please execute\\ '' ./run_tests.pl --help ''\\ for the full list of the options available in the current version. Managing the Test Results Repository * The results for test runs are stored in the directory ''./linux-app-checker/results''. All the files from each test run are stored in separate subdirectory named ''----