User forums > Using Code::Blocks

Output file gives "cannot execute binary file: Exec format error"

(1/2) > >>

turqoisehex:
I'm new to Code::Blocks, until now I've written C programs in gedit and compiled with gcc on CLI.
When I compile with:

--- Code: ---clang example.c -o example
--- End code ---
I get an ~8kb file, and when I run "file example" I get:

--- Code: ---example: ELF 64-bit LSB  executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=f777e63be4eb01a07e3dea7e1b7adfff47150ded, not stripped

--- End code ---

But when I build in C::B I get a 2kb file called example.o. When I file it I get:

--- Code: ---example.o: ELF 64-bit LSB  relocatable, x86-64, version 1 (SYSV), not stripped
--- End code ---

I've looked inside Settings --> Compiler and everything looks normal to me there. It's set to GCC, clang isn't an option as far as I can see.

When I attempt to run example.o from C::B I get permission denied. Then after changing the permissions I get "cannot execute binary file: Exec format error"

Any suggestions? Thanks.

Дмитро:



Hello! I am also a novice, in fact.
I can not exactly understand .. But anyway, IDE makes it easy to compile the program by clicking on and build the desired item in the drop-down list. The finer settings - for which a more complex, not simple tasks.
Happy New year to you!! With a joyful holiday !! :)

turqoisehex:
Thanks, it doesn't throw any errors when I hit build, but something is definitely wrong with the output file.

--- Code: ---gcc -Wextra -Wall -std=c99  -c /home/user/Dropbox/code/example/example.c -o /home/user/Dropbox/code/example/example.o
g++  -o /home/user/Dropbox/code/example/example /home/user/Dropbox/code/example/example.o   
Process terminated with status 0 (0 minute(s), 0 second(s))
0 error(s), 0 warning(s) (0 minute(s), 0 second(s))
--- End code ---

When I compile the same source file in Eclipse CDT, it compiles and works normally, though it makes the file about 5 times as big as clang/gcc do... So it seems to me that I've missed something with CB in terms of configuration.

stahta01:
You do know that the "example" file and the "example.o" files are two different files, right?

You SHOULD NOT try to run the "example.o" file.

Tim S.

turqoisehex:
Hi Tim,
Thanks, I feel like an idiot. Build was outputting both "example" and "example.o".  I assumed that example.o was the output of the build and that example was what I'd already output from the CLI. I deleted both and hit build again, and it output both.

Can you tell me what example.o is?

Navigation

[0] Message Index

[#] Next page

Go to full version