Error 87 - how to resolve

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
lock attach
Attachments are accessible only for community members.
JoJo_1
Level 2
Level 2
25 sign-ins 5 questions asked 10 replies posted

I am facing an issue with ADS while working with TC39x, it is showing error 87.  Has anyone faced such error? or any known solutions for it.

I am using Aurix Development studio version 1.8.0

0 Likes
1 Solution
User13836
Level 6
Level 6
50 likes received 50 solutions authored 100 sign-ins

The error message itself is generated by the GNU make tool used by the ADS. You can conduct an internet search for more details about this error. It might be caused by an invocation line which is too long and exceeding the Windows OS limits. This might be due to the many object files you are using. To verify this assumption you can consider to reduce the number of object files for testing or reduce the length of the object file names.

To mitigate this issue within the ADS environment, an update of the build invocation might be needed. The currently used invocation:

cctc -lrt -lfp_fpu -lcs_fpu -Wl-Oc -Wl-OL -Wl-Ot -Wl-Ox -Wl-Oy -Wl--map-file="can_demo.map" -Wl-mc -Wl-mf -Wl-mi -Wl-mk -Wl-ml -Wl-mm -Wl-md -Wl-mr -Wl-ms -Wl-mu --no-warnings= -Wl--error-limit=42 --exceptions --strict --anachronisms --force-c++ -o"can_demo.elf" --core=mpe:vtc --lsl-core=vtc --library=fp_fpu --lsl-file=../TRICORE-tasking.ldscript $(OBJS)

Can be replaced e.g. by creating a file including all object file names and add this file instead of $(OBJS) to the invocation like:

cctc -lrt -lfp_fpu -lcs_fpu -Wl-Oc -Wl-OL -Wl-Ot -Wl-Ox -Wl-Oy -Wl--map-file="can_demo.map" -Wl-mc -Wl-mf -Wl-mi -Wl-mk -Wl-ml -Wl-mm -Wl-md -Wl-mr -Wl-ms -Wl-mu --no-warnings= -Wl--error-limit=42 --exceptions --strict --anachronisms --force-c++ -o"can_demo.elf" --core=mpe:vtc --lsl-core=vtc --library=fp_fpu --lsl-file=../TRICORE-tasking.ldscript -f object_file_list.txt

Best regards,
Ulrich Kloidt

TASKING tools support

View solution in original post

19 Replies
Jeremy_Z
Moderator
Moderator
Moderator
1000 replies posted 250 sign-ins 100 likes received

Hi @JoJo_1 ,

Thank you for your interest in Infineon Semiconductor products and for the opportunity to serve you.
To be prudent, I was wondering if you can introduce which exact demo you tested, further, and whether you ever modified the sample code.

BR,

Jeremy

0 Likes

Ebstack with some extra files

0 Likes
Jeremy_Z
Moderator
Moderator
Moderator
1000 replies posted 250 sign-ins 100 likes received

Hi @JoJo_1 ,

I'm not very clear with the above reply, can you clarify it again?

BR,

Jeremy

0 Likes

I have more than 850 source files to build, is it possible to do with non commercial version of ADE?

0 Likes
Jeremy_Z
Moderator
Moderator
Moderator
1000 replies posted 250 sign-ins 100 likes received

Hi @JoJo_1 ,

Thanks for your reply, I don't think the issue is related to the code size, as the ADS IDE has no time and code-size limitations that enables editing, compiling, and debugging of application code.
According to the error message, it seems to be related to the 121 line of the makefile, so I'd like to suggest you check the makefile and I think it can provide some clues for further digging.

BR,

Jermey

0 Likes

cctc -lrt -lfp_fpu -lcs_fpu -Wl-Oc -Wl-OL -Wl-Ot -Wl-Ox -Wl-Oy -Wl--map-file="can_demo.map" -Wl-mc -Wl-mf -Wl-mi -Wl-mk -Wl-ml -Wl-mm -Wl-md -Wl-mr -Wl-ms -Wl-mu --no-warnings= -Wl--error-limit=42 --exceptions --strict --anachronisms --force-c++ -o"can_demo.elf" --core=mpe:vtc --lsl-core=vtc --library=fp_fpu --lsl-file=../TRICORE-tasking.ldscript $(OBJS)

 

This is the line in makefile which shows error

0 Likes
Jeremy_Z
Moderator
Moderator
Moderator
1000 replies posted 250 sign-ins 100 likes received

Hi @JoJo_1 ,

Thanks for your reply.
After checking the above, I find the linker file is TRICORE-tasking.ldscript, whether you ever modify the default linker file.

@User13836  Can you please check the compile error? And thank you in advance.

BR,

Jeremy

 

Di_W
Moderator
Moderator
Moderator
500 solutions authored 1000 replies posted 250 solutions authored

@User13836   Could you please have a look?

0 Likes
User13836
Level 6
Level 6
50 likes received 50 solutions authored 100 sign-ins

The error message itself is generated by the GNU make tool used by the ADS. You can conduct an internet search for more details about this error. It might be caused by an invocation line which is too long and exceeding the Windows OS limits. This might be due to the many object files you are using. To verify this assumption you can consider to reduce the number of object files for testing or reduce the length of the object file names.

To mitigate this issue within the ADS environment, an update of the build invocation might be needed. The currently used invocation:

cctc -lrt -lfp_fpu -lcs_fpu -Wl-Oc -Wl-OL -Wl-Ot -Wl-Ox -Wl-Oy -Wl--map-file="can_demo.map" -Wl-mc -Wl-mf -Wl-mi -Wl-mk -Wl-ml -Wl-mm -Wl-md -Wl-mr -Wl-ms -Wl-mu --no-warnings= -Wl--error-limit=42 --exceptions --strict --anachronisms --force-c++ -o"can_demo.elf" --core=mpe:vtc --lsl-core=vtc --library=fp_fpu --lsl-file=../TRICORE-tasking.ldscript $(OBJS)

Can be replaced e.g. by creating a file including all object file names and add this file instead of $(OBJS) to the invocation like:

cctc -lrt -lfp_fpu -lcs_fpu -Wl-Oc -Wl-OL -Wl-Ot -Wl-Ox -Wl-Oy -Wl--map-file="can_demo.map" -Wl-mc -Wl-mf -Wl-mi -Wl-mk -Wl-ml -Wl-mm -Wl-md -Wl-mr -Wl-ms -Wl-mu --no-warnings= -Wl--error-limit=42 --exceptions --strict --anachronisms --force-c++ -o"can_demo.elf" --core=mpe:vtc --lsl-core=vtc --library=fp_fpu --lsl-file=../TRICORE-tasking.ldscript -f object_file_list.txt

Best regards,
Ulrich Kloidt

TASKING tools support

lock attach
Attachments are accessible only for community members.

Thank you for the help, Now I have completed the linking part. But I am facing an issue in printing the elf, can you please check into it?

0 Likes

Thanks for sharing the additional details. So the link stage seems to be successfull according to the diagnostic output. The result of the link stage is the generation of the ELF file. But because the elfsize program complains that it cannot locate the ELF file I'm not sure if the link stage is really completed. You might want to search the output files folder of your project to figure out if the can_demo.elf file has been generated for real. It should be located in the 'debug' subfolder of the project folder by default. If it's generated, the elfsize tool should be able to process it of course. If the file is not generated, the link stage was unsuccessful but without a helpful diagnostic error message.

Best regards,
Ulrich Kloidt

TASKING tools support

0 Likes

It would be helpful if you suggest any other way to resolve this issue.

0 Likes

Without knowing more details it's not possible to provide further suggestions. Did you verify if the can_demo.elf file has been created? If this does exist, the issue seems to be related to the build process which cannot locate this file to process it using the elfsize tool. If the can_demo.elf file is not generated at all it is still a linker issue, so the linker does not finish its task which should result in the generation of the can_demo.elf file.

0 Likes

Is there any limit for the number of files for building in ADS (non commercial)?

0 Likes

I do not think so. This is more a question for the ADS product support. But there maybe operating system related limitations like the maximum command line length for a Windows OS. And when this ADS build system does not prevent long command line invocations, you might face a Windows related issue. 

0 Likes
Jeremy_Z
Moderator
Moderator
Moderator
1000 replies posted 250 sign-ins 100 likes received

Hi @JoJo_1 ,

Did you remember the condition or case that the error begin to raise? Alternatively, can you create a new simple demo that replicates the error?
As it can help us to figure it out.

BR,

Jeremy

0 Likes

I have .c source files along with assembly source file (*.s), The assembly files are not detected by Aurix IDE,( even *.S files doesn't get detected) . What could be the possible reason for the same?

0 Likes

how to do in Aurix ide v1.9.0 as compiler option is not supporting 

0 Likes
Di_W
Moderator
Moderator
Moderator
500 solutions authored 1000 replies posted 250 solutions authored

Hi Jojo, ADS is for evaluation purpose, if you build your project it needs migration.  Is your project compiled in any IDE or compiler before?

0 Likes