How to use readelf (I see it in the PSoC Creator directory) to get a symbol table output from my PSOC application?

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

cross mob
JoWi_3984961
Level 4
Level 4
First like received First like given

I see readelf.exe is in the PSoC Creator directory structure after installing it.  How to use it to generate a symbol table (for use by custom tool we need) that can be human readable or at least simple to machine read?  Need the RAM globals', the ones that do not move around, addresses handy for other tools.  I tried to run readelf.exe, but Windows 10 did not recognize it as a program it could run.

Do I need to use a bash shell?

PSoC 4 application..

0 Likes
1 Solution
DheerajK_81
Moderator
Moderator
Moderator
First comment on KBA First comment on blog 5 questions asked

Its not clear when you want to run it. If you want to run the readelf.exe after the build step in PSoC Creator you can go to Build Settings > ARM GCC Compiler > User Commands > Post Build and type the following:

pastedImage_3.png

"C:\Program Files (x86)\Cypress\PSoC Creator\4.2\PSoC Creator\import\gnu\arm\5.4.1\arm-none-eabi\bin\readelf.exe" -s "${OutputDir}\Design01.elf

Here ${OutputDir} is a macro you can use to point to the Output directory where the elf is located. "Design01.elf" is the name of the elf file in my case. It will be based on the project name.

pastedImage_0.png

You can use bat files to execute the above command. Just provide the complete path to readelf and to the elf file.

Regards,

Dheeraj

View solution in original post

0 Likes
3 Replies
DheerajK_81
Moderator
Moderator
Moderator
First comment on KBA First comment on blog 5 questions asked

Its not clear when you want to run it. If you want to run the readelf.exe after the build step in PSoC Creator you can go to Build Settings > ARM GCC Compiler > User Commands > Post Build and type the following:

pastedImage_3.png

"C:\Program Files (x86)\Cypress\PSoC Creator\4.2\PSoC Creator\import\gnu\arm\5.4.1\arm-none-eabi\bin\readelf.exe" -s "${OutputDir}\Design01.elf

Here ${OutputDir} is a macro you can use to point to the Output directory where the elf is located. "Design01.elf" is the name of the elf file in my case. It will be based on the project name.

pastedImage_0.png

You can use bat files to execute the above command. Just provide the complete path to readelf and to the elf file.

Regards,

Dheeraj

0 Likes

I would like to run it from a command line. Which shell is required?

0 Likes

You can run the commands using Command Prompt.

Regards,

Dheeraj

0 Likes