Fixup error

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

Fixup error

1,015 Views
michaelsarafidi
Contributor II

Hi there,

 

I have a project for mc9s13dp256 created in CodeWarrior 5.1 that works fine.

 

I am trying to migrate it to CodeWarrior 3.1 in order to merge it with an older project.

Although, i have no build errors, i am getting the following 3 errors:

 

Link Error   : L1934: ELF: Fixup error: Fixup error in '.debug_info' at offset 602

Link Error   : L1934: ELF: Fixup error: Fixup error in '.debug_frame' at offset 80b

Link Error   : L1934: ELF: Fixup error: Fixup error in '.debug_pubnames' at offset 6

Link Error   : Link failed

 

I do not know if the following has to do with the above error but i am mention it in case it helps.

if i disable the debug information of a specific file in project i am not getting errors any longer but i am not getting debug informations at the debugger.

The debuger also can not find the main function (i had replaced the main.c file generated from codewarrior 3.1 with my own created at CW5.1)

 

Any ideas?

 

Thanks in advance.

 

 

 

 

 


Labels (1)
5 Replies

544 Views
michaelsarafidi
Contributor II

I had also noticed that the file that i have to exclude from debug information is not the same all the time.

It is always the last added file to the project. If i remove a file and add it again then this file causes the problem.

The debugger still cannot find main function (although it exists) and does not have any debug informations.

0 Kudos

544 Views
CrasyCat
Specialist III

Hello

I remember that with earlier version of CodeWarrior the size of the debug information was limited to 16 Mb. This limitation has been removed with CodeWarrior for HCS12 V4.7.

It looks like in your application you have reached this limit.

I suspect you have huge numbers of typedefs for complex structure of union, which are included in every single source file in the application.

From that point I see only 2 solutions:

    1- Port the project to V5.1 where size of debug info can be higher than 16 Mb

    2- Analyze the dependency tree and include the file containing typedefs for huge

        constants or unions only when it is relevant. This might reduce the size of the debug

        info and allow you to link the application.

The message about debugger unable to find main function is generated because the source file where main is implemented is built without debug information. If there is no debug information the debugger will not be able to perform any symbolic debugging. So it will not recognize or find any function name or variable name in the files built without debug info.

CrasyCat

544 Views
michaelsarafidi
Contributor II

Thanks CrazyCat

0 Kudos

544 Views
CrasyCat
Specialist III

Hello

First of all keep in mind that there is no backward compatibility between CodeWarrior projects.

You can usually import a V3.1 project in CodeWarrior for HC12 V5.1, but importing in the other direction is not guaranteed at all.

In your case I would recommend you to create a new project with CodeWarrior for HC12 V3.1 wizard and then incorporate the source files and project options from V5.1 in your newly created project.

Be careful v5.1 includes some new features (notation, option, ....) that are not supported by V3.1 and these might generate some trouble. So you need to be extremely careful when doing so,

Additionally do not try to link a binary file (.o or .lib) generated by CodeWarrior for HC12 V5.1 in a project linked with CodeWarrior for HC12 V3.1.

This is not going to work.

CrasyCat

0 Kudos

544 Views
michaelsarafidi
Contributor II

CrazyCat thank you for your time.

I am not using the CW5.1 project to CW3.1. I had created a new project as you suggest and add my source files to it.

I made "all" the necessary changes in order the build to succed. My problem is at debugging. If i add debug information i get the linking errors and if i do not add debug information at one specific file then linking succeds but I am not getting debug information at the debugger. I can not see any file or procedure only assembly.

Also, i get an error in PostLoad.cmd at  "FindProc main" command. As i said i had overwritten the main.c generated by CW3.1 with mine.

have i helped you understand better my problem?

Thanks again.

0 Kudos