用gcc編譯c與c++混編的工程

背景是我們有一個linux下的多媒體播放器項目,該程序是用c語言實現的。目前要引入一個功能模塊,目的是使其對流媒體進行支持。經過挑選,我們選擇了一個名爲live555的流媒體庫,該庫是用c++寫成的。

c與c++混編的時候除了在源文件內容上要注意的地方,比如命名規則中c++要加上 extern "c" ,防止編譯過程中符號名改變。(更多規則見More effective c++中的相關條款

還需要注意的是關於編譯器的選擇問題。如果工程中既有c源碼又有c++源碼,有兩種方法:

1. 將gcc換成g++;

2. 在gcc後加上 -lstdc++ 選項。

發佈了46 篇原創文章 · 獲贊 12 · 訪問量 43萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章