Errors with MQX 3.2.1 and CW10.2

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

Errors with MQX 3.2.1 and CW10.2

1,137 Views
Phil_D1
Contributor III

I am trying to rebuild code for a custom MCF52259 board in CW10.2 that had originally been developed with the CW7.1 tools (first step in porting code to another processor). I converted all the library project files from CW7.1 to CW7.2 (as outlined in TN268), then imported the projects into CW10.2 and made sure the project options matched. I rebuilt all the libraries (MQX and additional protocol stack) in CW10.2 with no errors. I then followed the same procedure for my 52259 application project, spending a lot of time making sure the path variables are correct and built for internal flash release. I get the following errors:

mingw32-make: *** [intflash.elf] Error 1

Undefined : "__boot"

"__boot" is my entry point. It works just fine under the CW7.1 build and it was successfully imported into the CW10.2 project settings. The source code hasn't changed. I suspect that the actual problem has nothing to do with the entry point symbol since I got the same error messages whenever the linker couldn't find a library, for example. The console output doesn't shed any additional light on the problem either:

C:/Freescale/CW MCU v10.2/MCU/ColdFire_Tools/Command_Line_Tools/mwldmcf|Linker|Error

>Undefined : "__boot"

Errors caused tool to abort.

mingw32-make: *** [intflash.elf] Error 1

Is there a compatibility issue between MQX 3.2 and CW10.2

If not, does anyone have any ideas what these nebulous error messages might be trying to tell me is wrong?


Thanks,


Phil

0 Kudos
6 Replies

661 Views
c0170
Senior Contributor III

Hello Phil Dunmire,

where is function __boot defined? I believe it's in bsp. Is really there? Linker complained it's not defined, means function is referenced in the code but not defined. Try to generate map file to check if __boot is really defined somewhere.

I am not familiar with MQX 3.2.1 therefore I dont know how did look bsp structure back then :smileywink:

Regards,

MartinK

0 Kudos

661 Views
Phil_D1
Contributor III

Thanks for the reply.

The entry point is defined in the application project (I triple-checked and it is indeed defined), rather than in any of the MQX library projects. When built as a library, a map file is not generated. And because I am getting errors in my application project, the map file is empty. Still stumped on this one.

Phil

0 Kudos

661 Views
JuroV
NXP Employee
NXP Employee

Hi Phil,

how did you get that it is defined in the application project? If the __boot is not in the runtime library, you can recopy one from the original <board>/cw/boot.c file.

0 Kudos

661 Views
Phil_D1
Contributor III

I am convinced at this point that the error message is a complete red herring and has absolutely nothing to do with what is actually wrong. So far, I haven't found the CW10 compiler error messages to be very helpful in this regard. I've been told via a support request that trying to build the MQX 3.2 libraries in CW10 probably isn't going to be successful (they don't know because they've never tried it, but there are many, many differences from CW7.1). So, I have given up on this approach and have begun to use the MQX 3.8 libraries, which is also going to be difficult, but it seems I have no easy options in porting code from one platform to another.

0 Kudos

661 Views
kleckerspur
Contributor III

Hello,

I had the same error, after trying to find a way adding startup code to a mqx project (10.6). In my desperation on how I can integrate startup code to my mqx-project, I copied it from bareboard-project(10.6) to same folder in the mqx-project(10.6). Sure I know it is very reckless to belive adding a folder with files (startup.c and startup.h), would help solving the proplem. But if documentation and community can't help you, I thought I help myself and gave it a try.

Now I am more desperate than before.

Undefined: "__boot" how can I solve the problem. It seem as it is always !!!!

Deleting all and start again the whole new project.

Go straight to jail, don't pass Go.

Ok I tried so. Started again a new "hello world" in mqx. The error doesn't exist in this project anymore. I can compile and rebuild it.

<< Super >> I belive I can finish my project !

So the error seem to be in the project not in the mqx project files. Tried to make a diff of both projects but differences were to astonishing to publish it here.

0 Kudos

661 Views
Phil_D1
Contributor III

As a follow-up to this post, after much toil and trouble, I eventually did get the project ported to MQX 3.8. And then a further port to MQX 4.0 when that was released. I found, too, that the 'Undefined: "__boot"' error appeared to be related to project setup. Be sure to check that your Path Variables, under Resources > Linked Resources are all defined and match with your Include paths, defined elsewhere in the project (the project properties structure varies from one architecture to the next).

0 Kudos