Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Executable file with Binary Extension?

Status
Not open for further replies.

electroRF

Member
Hi,

I'm beginning to study a new Environment which builds source files - it's an internal Environment of the company.

In the guide it says that the EXE file (i.e. final product of the build) has <binary extension>.

Why does it have a binary extension?

When I compile a file with say GCC - gcc -o exefile source.c , is the exefile is binary file?
 
Ask your boss or other developers in the company.
There can be many explanations. The main reason may be that the executable is not intended to be run by the user, but by another application (operating system) that invokes the program.
(Are you sure it is an executable and not a library?)
 
Last edited:
There are text files and binary (non-text) files. Executable is definitely a binary file (although MCU hex file is a text file). Don't know what is the <binary extension>.
 
Don't know what is the <binary extension>.

I assumed it is simply ".bin" instead of ".exe". If it something else, then eF needs to explain what is this <binary extension>.
 
Last edited:
.bin is sometimes a file for the linker. It's the next to the last step to be converted into an executeable, DLL or whatever.

.bin might just be lacking a start address which is the linkers problem. So, it is compiles such a way that key values can be found.

.bin is an extension used for Macbinary, see Binhex4 too. .bin is also used for EEPROM burners. It's not a one size fits all.

Take a look here too: **broken link removed**

Unix/Linux all bets are off. Try the standard executable a.out. No .bin there is there. Executable means that the +x is set with chmod and it could be a shell script or a binary.
 
.bin is sometimes a file for the linker. It's the next to the last step to be converted into an executeable, DLL or whatever.

".bin" can be anything. It can be a bmp image that is intended to be used by the application only. Games used this naming convention to hide bitmaps from the player, but it did not fool anyone.. this is how the first custom graphic mods were made. Just edit the .bin that contains all the "sprites" or graphics of the game.
 
Probably a better answer. Although in the context of output from a compiler mine makes sense. If I remember, firmware images for routers, etc. are typically .bin too.
 
Hi guys, T, KISS, NorthGuy
Thanks a lot!

I learned a lot from your posts :)

I indeed see here that the "files" which we burn into the FLASH of the chip are all *.bin.
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top