IBM Support

Undefined reference linker error when targetting a IBM® Engineering Systems Design Rhapsody® build on a linux environment

Troubleshooting


Problem

You successfully build the IBM® Engineering Systems Design Rhapsody® Object Execution Framework libraries on the remote target but your application project fails to link to those libraries with an error:
undefined reference to `OXF::start(bool, int)

Resolving The Problem

Make sure you update the paths to the OXF libs in your project makefile.

You can change the makefile by modifying the CPP_CG::Linux::Makefile property directly.

For example, you have a share setup with the built libs here:

image 6289

Modify the project component settings to generate the project code to the same share folder root:

image 6290

Modify the paths in the makefile to point to the same lib location on the share:

image 6291

Then, you can execute the makefile on the remote via ssh:

image 6292

Execute the build:

image 6293

Document Location

Worldwide

[{"Line of Business":{"code":"LOB59","label":"Sustainability Software"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSB2MU","label":"IBM Engineering Systems Design Rhapsody"},"ARM Category":[{"code":"a8m50000000CjUiAAK","label":"Rhapsody->Framework->OXF"}],"ARM Case Number":"TS004116535","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Version(s)"}]

Document Information

Modified date:
27 May 2022

UID

ibm16336417