在Linux下面,如果要編譯一個C語言源程序,我們要使用gcc編譯器。
先將源文件編譯成目標文件:gcc - c hello.c
生成hello.o文件,再將目標文件編譯成可執行文件:gcc -o hello hello.o
如:
int main(int argc,char **argv)
{
printf("Hello Linux ");
}
(1)怎麼編譯多個c源擴展閱讀:
在使用GCC編譯器的時候,我們必須給出一系列必要的調用參數和文件名稱。GCC編譯器的調用參數大約有100多個,這里只介紹其中最基本、最常用的參數。具體可參考GCC Manual。
GCC最基本的用法是∶gcc [options] [filenames]
其中options就是編譯器所需要的參數,filenames給出相關的文件名稱。
網路_gcc
❷ vscode C語言如何編譯多個源文件
你可以寫一個類似的任務在task里:在args一行,寫你需要編譯的文件
{
"label": "build my project",
"type": "shell",
"command": "C:\\MinGW\\bin\\g++.exe",
"args": ["main.cpp", "test.cpp", "-o", "test.exe"],
"group": "build",
},
你還可以寫一個make任務,對於文件多的,手寫不現實,可以做一個makefile
這樣你只要在launch裡面
preLaunchTask,寫上這個build my project,就可以了。
❸ UNIX下 用CC如何編譯多個c語言源程序文件
用makefile啊,用makefile可以很方便地編譯多個源文件的程序。unix下都是用這個的。
❹ linux下 c語言多文件編譯
如果有多個源文件,基本上有兩種編譯方法:
[假設有兩個源文件為test.c和testfun.c]
1. 多個文件一起編譯
用法:#gcc testfun.c test.c -o test
作用:將testfun.c和test.c分別編譯後鏈接成test可執行文件。
2. 分別編譯各個源文件,之後對編譯後輸出的目標文件鏈接。
用法:
#gcc -c testfun.c //將testfun.c編譯成testfun.o
#gcc -c test.c //將test.c編譯成test.o
#gcc -o testfun.o test.o -o test //將testfun.o和test.o鏈接成test
以上兩種方法相比較,第一中方法編譯時需要所有文件重新編譯,而第二種方法可以只重新編譯修改的文件,未修改的文件不用重新編譯。
❺ linux環境下如何編譯包含多個源文件的c/c++程序
多個文件一起編譯
用法:#gcc testfun.c test.c -o test
作用:將testfun.c和test.c分別編譯後鏈接成test可執行文件。
❻ UNIX下 用CC如何編譯多個c語言源程序文件
用makefile啊,用makefile可以很方便地編譯多個源文件的程序。unix下都是用這個的。
❼ 如何用在windows的cmd編譯多個c源文件
命令行編譯
linux系統下:g++ prog1.cc -0 prog1,echo $?查看返回值結果。
windows系統下:cl –GX prog1.cpp,自動產生與源文件同名的exe文件,echo %errorlevel%查看返回值結果。
多個源文件編譯:
linux系統下:gcc –c prog1.cc //output prog1.o object file
gcc –c prog2.cc //output prog2.o object file
gcc prog1.o prog2.o //generate executable file prog1.exe or prog1.out
//above is complied step by step, now we can also compile once
gcc –c –g prog1.cc prog2.cc –o prog1.exe
windows系統:與linux系統整體過程類似,只是命令不同罷了
cl –c prog1.c //output prog1.obj object file
cl –c prog2.c //output prog2.obj object file
gcc prog1.obj prog2.obj //generate executable file prog1.exe or prog1.out
//above is complied step by step, now we can also compile once
cl –GX prog1.c prog2.c
cl 不是內部或外部命令 解決辦法:確保已經安裝vs,在控制台中鍵入set查看環境變數,看是否有類似VS??COMNTOOLS的環境變數,若沒有則在系統環境變數中新建一個環境變數VS??COMNTOOLS,變數值為vs安裝目錄\commom7\tools\。然後在控制台中鍵入
call 「%VS??COMNTOOLS%」vsvars32.bat設置cl運行時的環境變數。
❽ 怎麼編譯多個c語言文件
1、如果,在一個c主程序中,以include形式包含了其他所有的引用文件,在編譯過程中,編譯器首先會將這些文件合並到一個臨時文件中,然後再對這個臨時文件進行編譯。
2、如果,是作為一個工程,編譯器會分別編譯各個獨立的文件(如果文件中有include按照上一步進行),然後再將編譯好的初步結果用鏈接程序連到一起。
簡單的說,每一個.c或者.cc都是一個編譯單元,每一個編譯單元編輯的結果是一個.o或者obj之類的中間文件,至於是否是多文件,不需要關心,但是要保證不同的編譯單元之間不要有重復的符號,這就是要避免重復包含。
每一個編譯單元生成的目標文件.o或者obj都會引用一些不在本目標文件中的符號,這些符號定義在別的.o或者.obj文件中, 鏈接器把他們聯系在一起,所有的符號也就都有定義了,編譯鏈接簡單說來就是這樣。
❾ 如何在VS2010中編譯多個C語言源文件
要知道,一個系統生成的程序文件夾里,只可能有一個源程序,打開兩個必然會沖突啊。
你可以打開兩個VS來進行對兩個源程序的編譯。
❿ 用VC如何編譯多個單獨的C程序!
在同一工程中加.cpp文件即可
比如你的工程中有兩個.cpp文件(如圖)(PS:用VC6可能按「添加文件到工程」時會崩潰,你可看網頁鏈接)
注意,調用其它.cpp的函數時到先聲明該函數