Skip to main content

By clicking Submit, you agree to the developerWorks terms of use.

The first time you sign into developerWorks, a profile is created for you. Select information in your developerWorks profile is displayed to the public, but you may edit the information at any time. Your first name, last name (unless you choose to hide them), and display name will accompany the content that you post.

All information submitted is secure.

  • Close [x]

The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerworks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

By clicking Submit, you agree to the developerWorks terms of use.

All information submitted is secure.

  • Close [x]

Chiphopper: Porting tools for Linux on System p, System i, and System z

IBM Systems Application Advantage for Linux simplifies porting of C/C++ apps from x86 to Power Architecture and mainframe systems

The IBM Systems Application Advantage for Linux, also known as the Chiphopper offering, helps developers whose applications run on x86 Linux systems by providing tools to scrub their C/C++ code for portability prior to porting to System p, System i, or System z. Source hardware platforms for 32- and 64-bit applications are x86, EM64T, and AMD systems running Linux Standard Base (LSB) 3.x certified Linux distributions.

The IBM Systems Application Advantage™ for Linux®, also known as the Chiphopper offering, helps developers whose applications run on x86 Linux systems by providing tools to scrub their C/C++ code for portability prior to porting to System p, System i, or System z. Source hardware platforms for 32- and 64-bit applications are x86, EM64T, and AMD systems running Linux Standard Base (LSB) 3.x certified Linux distributions.

Toolset overview

The first set of tools used in the Chiphopper offering comes from the Linux Standard Base (LSB), a project of the Linux Foundation. When using standard interfaces, the developer can have confidence that these interfaces will be stable over time. Developers can focus on adding new functionality to enhance the application instead of having to rewrite over and over for changing interfaces. Developers can use the LSB Application Testkit Manager, located on the Linux Foundation Web site, to check whether the interfaces used by an application are part of an LSB standard.

When using this tool, you will have the opportunity to share your system dependencies (APIs you call) with the LSB. The list of system functions you use generally will not be sensitive information for applications, and we encourage you to use the option on the Application Testkit Manager site to upload your journal information if appropriate. A better understanding of what real users need in their applications greatly benefits the LSB and helps ensure that it addresses the most important interfaces. Note that there are tools for C and C++ applications as well as new test scripts for Perl and Python.

The second tool set used in the Chiphopper offering, the Linux Cross-platform Tool (LCT), comes from the Chiphopper team and was developed by IBM. To request access to this tool, please e-mail the Chiphopper team with your request. While we are completing our download site, we will send you the license information by e-mail and, after you have agreed to the it, we will send the code package. Note that both the binaries and the source code need to be available for LCT to do its work, and you may need to do a special build in order to make symbols in your code available for analysis.

If you have questions about these tools or their output, please post to the Chiphopper discussion forum.

Working with the Chiphopper Linux Cross-platform Tool (LCT)

The Chiphopper LCT tool runs on x86 Linux Standard Base (LSB) certified Linux systems on x86 platforms. It works with your application executable and your application source code. Items identified by the tool may require code changes for cross-platform portability or they may have potential issues that the tool is not able to completely analyze but points out for follow up.

Follow the steps below to prepare your x86, EM64T, or AMD system and your application for the Chiphopper LCT:

  1. Check to see whether your development Linux x86 system is certified for LSB 3.0 or higher. The Chiphopper LCT runs most reliably on standard systems. Install your source code as if you were ready to build your application on this system.
  2. If you haven't already done so, please e-mail the Chiphopper team with your request. Install per the instructions in the portability tool guide that is included in the package.
  3. Build your application with debug flags turned on as documented in the LCT guide to use this information in its screening. Be sure both your source code and executables are available.
  4. Run LCT against your application. The overall process is described in the portability tool guide.
  5. Process the output of the tool. Your run will be successful if no errors are reported in the report files or if you can confirm that for each reported error, the code is actually portable across hardware architectures. The portability tool guide includes an appendix listing the "fatal" and "warning" error codes and explanations.
  6. If you need help reading the output or have additional questions, you can post to the Chiphopper tool discussion forum.
  7. Ensure that you have also processed any third-party packages that your application requires. If the third-party package versions are participants in the Chiphopper offering, they have already been checked for portability. You can find Chiphopper validated products in the IBM Global Solutions Directory. Use the search facility for Validations and select Ready For IBM Systems with Linux.
Help: Update or add to My dW interests

What's this?

This little timesaver lets you update your My developerWorks profile with just one click! The general subject of this content (AIX and UNIX, Information Management, Lotus, Rational, Tivoli, WebSphere, Java, Linux, Open source, SOA and Web services, Web development, or XML) will be added to the interests section of your profile, if it's not there already. You only need to be logged in to My developerWorks.

And what's the point of adding your interests to your profile? That's how you find other users with the same interests as yours, and see what they're reading and contributing to the community. Your interests also help us recommend relevant developerWorks content to you.

View your My developerWorks profile

Return from help

Help: Remove from My dW interests

What's this?

Removing this interest does not alter your profile, but rather removes this piece of content from a list of all content for which you've indicated interest. In a future enhancement to My developerWorks, you'll be able to see a record of that content.

View your My developerWorks profile

Return from help