Is there a simple way to port an MQX-Lite project on a FRDM-KL46Z to KDS?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Is there a simple way to port an MQX-Lite project on a FRDM-KL46Z to KDS?

Jump to solution
748 Views
thisobj
Contributor III

I tried importing the project and then running "Convert CodeWarrior project file..." but that doesn't seem to do anything related to MQX.

 

Frank

Labels (1)
0 Kudos
1 Solution
501 Views
BlackNight
NXP Employee
NXP Employee

Hi Frank,

just to be sure: have you seen the porting guide in:

C:\Freescale\KDS_1.1.0\doc\pdf\kds_porting_guide.pdf

?

As a test, I created a simple MQX Lite project for FRDM-KL46Z under CW for MCU10.6, then copied that project into a KDS workspace, imported it with File > Import > Existing porject, then right clicked on it to "Convert CodeWarrior project file", added the MCUToolsBaseDir and the 'rt' library as outlined in that porting guide, and it compiled and linked for me just fine.

Maybe you have missed some steps? Clearly, portiing projects from one toolchain to a different one is not always straight forward.

A simpler way (in my view) is:

- create a new FRDM-KL46Z project in KDS (with PEx enabled)

- select the Processor Expert components in your MCU project and copy them (CTRL-C)

- paste them into the new project (CTRL-V)

- do the same with your source files

- update the compiler include paths as necessary

That way (in my view) there is a clean and understood port of the project possible.

I hope this helps,

Erich

View solution in original post

0 Kudos
2 Replies
502 Views
BlackNight
NXP Employee
NXP Employee

Hi Frank,

just to be sure: have you seen the porting guide in:

C:\Freescale\KDS_1.1.0\doc\pdf\kds_porting_guide.pdf

?

As a test, I created a simple MQX Lite project for FRDM-KL46Z under CW for MCU10.6, then copied that project into a KDS workspace, imported it with File > Import > Existing porject, then right clicked on it to "Convert CodeWarrior project file", added the MCUToolsBaseDir and the 'rt' library as outlined in that porting guide, and it compiled and linked for me just fine.

Maybe you have missed some steps? Clearly, portiing projects from one toolchain to a different one is not always straight forward.

A simpler way (in my view) is:

- create a new FRDM-KL46Z project in KDS (with PEx enabled)

- select the Processor Expert components in your MCU project and copy them (CTRL-C)

- paste them into the new project (CTRL-V)

- do the same with your source files

- update the compiler include paths as necessary

That way (in my view) there is a clean and understood port of the project possible.

I hope this helps,

Erich

0 Kudos
501 Views
thisobj
Contributor III

Hi Erich,

I had read the porting guide and the KDS user manual.

I ported a very simple MQX Lite project from CW 6.0 and followed the procedures. At first, there were build errors on boot.s and dispatch.s. It was almost as if the wrong assembler was being used or possibly the wrong boot.s and dispatch.s for the version of MQX Lite (v1.1.0). I went into the Assembler settings and checked the "use preprocessor". I then clean/rebuilt with no errors and I can see the *.elf file in the Flash folder, but there are no binaries (no binary folder) generated. I looked through the properties for a setting to remedy this, but I could find nothing.

Frank

[ added: 08/14 - 10:17am CDT ]

I checked the output from the build and compared it to a project created within KDS that builds/runs okay. One noticeable difference is the linker used in the native KDS project is "Cross ARM C++ Linker". In the ported project the linker is "Cross ARM C Linker".

[ added: 08/15 - 10:33am CDT ]

The solution was to follow Erich's 2nd suggested method: Create a project within KDS and manually move components and source code over from CW project.

0 Kudos