Compiling the SDK for vxWorks as Downloadable Kernel Module

Short descriptions on how to use the SDK, the build environment and giving hints on some tricky issues.
Post Reply
User avatar
Support Team
Hero Member
Hero Member
Posts: 2521
Joined: 18 Mar 2011, 15:09

Compiling the SDK for vxWorks as Downloadable Kernel Module

Post by Support Team »

This HowTo will show you how to compile the SDK with CMake, but will not explain CMake in depth. For the interested reader we recommend to read the CMake Tutorial and the CMake Documentation to get a full understanding of CMake.

Important: This HowTo shows the possibility of building the source SDK (this will NOT work for all examples even in EVAL packages).

Requirements Compiling SDK for vxWorks
  • First of all it is necessary to compile the SDK for vxWorks. To do so, just create a new CMake project for "Eclipse CDT4 - Unix Makefiles" with the vxWorks CMake toolchainfile.
  • Do not forget to set the SDK_PLATFORM and the STACK_PLATFORM Variable to vxworks.
  • IMPORTANT NOTE: It is not possible to build shared objects for vxWorks (Downloadable Kernel Module), so please uncheck the option "BUILD_SHARED_STACK".
  • Import the generated project into the vxWorks Workbench:
  1. Start the Workbench
  2. On "Project Explorer" right click and select "Import"
  3. Select "General->Existing Projects into Workspace"
  4. On "Select root directory" browse to your generated CMake project folder and press "OK" and "Finish"
  5. Build the SDK (you also can build it via "Wind River Workbench Development Shell" by entering "make")
Add the compiled UaServer to the vxWorks Kernel as Kernel Module
  • Choose the Kernel project in the Project Explorer and do a right click on it.
  • Select the option "Properties", navigate to "Build Properties" and select the tab "Variables".
  • On the Variables tab there is a module called "EXTRA_MODULES". Edit this line and insert the path with the name of the compiled server into it.

    Code: Select all

    EXTRA_MODULES    $(SUB_TARGETS) C:/path/to/your/sdk/bld/folder/uaservercd
  • !!! DO NOT FORGET TO SET "/" INSTEAD OF "\ for the path !!!"
  • Press "OK" and rebuild the Kernel project.
  • If the Kernel has compiled a file called "sysc3.sys" will occure
Download the Kernel to the target and start the server
  • Start FileZilla and connect to the target.
  • Select the file "sysc3.sys" and copy it via FileZilla to the corect place on the target.
  • Reboot the target so the new Kernel can start up.
  • After the Kernel has started up, start the server via its main function. You can see the server starting up.
  • Use UaExpert to connect to the target.

Post Reply