How to make an object file to executable file?
Asked
Active
Viewed 3.4k times
10
-
http://stackoverflow.com/questions/12122446/how-does-c-linking-work-in-practice – Ciro Santilli Путлер Капут 六四事 Nov 09 '15 at 11:03
3 Answers
15
You need to link the object file. Your command:
gcc -c -o file.cgi file.c
compiles file.c into an object file (which would typically be called file.o). If you get rid of the '-c', it will generate the executable directly:
gcc -o file.cgi file.c
Alternatively (more useful if you have multiple files and don't want to compile all files when only one has changed), do it in two steps:
# Compile only
gcc -c -o file.o file.c
gcc -c -o file2.o file2.c
# Link
gcc -o file.cgi file.o file2.o
DrAl
- 67,377
- 10
- 101
- 105
4
If your file is a .o file that contains a main function you just need to link it, for example gcc file.o -o executable
Arkaitz Jimenez
- 21,514
- 11
- 73
- 100