dpdk環(huán)境下開發(fā)C++

最近呢要寫一個hyperscan的多模匹配,自然是使用C++來寫會更方便些啦蕾羊,而老板要求hyperscan搭配dpdk一塊使用。但由于dpdk源代碼使用的C語言開發(fā),其在example/l2fwd/目錄下提供的Makefile是不支持C++的笤昨,所以想要進(jìn)行C++和C的混和編程,就要做出相應(yīng)的修改握恳。根據(jù)網(wǎng)上的說法瞒窒,最起碼有兩種方案可以實(shí)現(xiàn)C++的編程。

第一類解決方案說需要修改兩個文件乡洼,文件路徑如下:
dpdk-16.07/mk/ineternal/rte.compile-pre.mk
dpdk-16.07/mk/toolchain/gcc/rte.vars.mk
其實(shí)呢我按照第一種方法修改過崇裁,結(jié)果還是不能支持C++,可能是在我的環(huán)境下行不通吧束昵!
由于是別人博客里的方法拔稳,所以還是提供一下博客原址比較好,感興趣的朋友也可以進(jìn)去看看具體的修改方法锹雏,鏈接如下:
用 g++ 編譯 dpdk

第二類解決方案相對簡單一點(diǎn)巴比,只需要修改Makefile就可以了,先給出dpdk本身提供的Makefile代碼:

ifeq ($(RTE_SDK), )

$(error "Please define RTE_SDK environment variable")
endif

#Default target, can be overriden by command line or environment
RTE_TARGET ?= x86_64-native-linuxapp-gcc

include $(RTE_SDK)/mk/rte.vars.mk

#binary name
APP = l2fwd

LDLIBS += -L/root/libnids-1.24/src/ /root/libnet-1.1.6/src/.libs/libnet.so.1 -lnids \ 
-lglib-2.0 -lgthread-2.0 /root/libpcap/release/libpcap.a
#all source are stored in SRCS-Y
SRCS-y := main.c

CFLAGS += -o0 -g
CFLAGS += $(WERROR_FLAGS) -Wno-error -Wno-unused-function

include $(RTE_SDK)/mk/rte.extapp.mk

下面給出為了添加對C++11編程的支持而修改后的Makefile礁遵,代碼如下:

ifeq ($(RTE_SDK), )

$(error "Please define RTE_SDK environment variable")
endif

#Default target, can be overriden by command line or environment
RTE_TARGET ?= x86_64-native-linuxapp-gcc

include $(RTE_SDK)/mk/rte.vars.mk

#binary name
APP = l2fwd

LDLIBS += -L/root/libnids-1.24/src/ /root/libnet-1.1.6/src/.libs/libnet.so.1 -lnids \ 
-lglib-2.0 -lgthread-2.0 /root/libpcap/release/libpcap.a
#all source are stored in SRCS-Y
SRCS-y := main.cpp

CPPFLAGS += -std=gnu++11
CFLAGS += -o3
CFLAGS += $(WERROR_FLAGS) -Wno-error -Wno-unused-function
LDFLAGS += -lstdc++
include $(RTE_SDK)/mk/rte.extapp.mk

其實(shí)呢修改Makefile也有好幾種修改方案轻绞,我提供的Makefile修改方案參考自下面的一篇博客:
How to code for DPDK with C++
沒錯,本篇博客都是別人的東西佣耐,我只是一名搬運(yùn)工政勃,但有一點(diǎn)要說明的是本博客中修改Makefile的方法是我花了好些功夫才找到的,所以想著貢獻(xiàn)出來給大家兼砖,并不是為了純粹寫博客而寫博客奸远,我沒那么閑。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末讽挟,一起剝皮案震驚了整個濱河市然走,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌戏挡,老刑警劉巖芍瑞,帶你破解...
    沈念sama閱讀 216,591評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異褐墅,居然都是意外死亡拆檬,警方通過查閱死者的電腦和手機(jī)洪己,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,448評論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來竟贯,“玉大人答捕,你說我怎么就攤上這事⌒寄牵” “怎么了拱镐?”我有些...
    開封第一講書人閱讀 162,823評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長持际。 經(jīng)常有香客問我沃琅,道長,這世上最難降的妖魔是什么蜘欲? 我笑而不...
    開封第一講書人閱讀 58,204評論 1 292
  • 正文 為了忘掉前任益眉,我火速辦了婚禮,結(jié)果婚禮上姥份,老公的妹妹穿的比我還像新娘郭脂。我一直安慰自己,他們只是感情好澈歉,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,228評論 6 388
  • 文/花漫 我一把揭開白布展鸡。 她就那樣靜靜地躺著,像睡著了一般埃难。 火紅的嫁衣襯著肌膚如雪莹弊。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,190評論 1 299
  • 那天凯砍,我揣著相機(jī)與錄音箱硕,去河邊找鬼。 笑死悟衩,一個胖子當(dāng)著我的面吹牛剧罩,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播座泳,決...
    沈念sama閱讀 40,078評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼惠昔,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了挑势?” 一聲冷哼從身側(cè)響起镇防,我...
    開封第一講書人閱讀 38,923評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎潮饱,沒想到半個月后来氧,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,334評論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,550評論 2 333
  • 正文 我和宋清朗相戀三年啦扬,在試婚紗的時候發(fā)現(xiàn)自己被綠了中狂。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,727評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡扑毡,死狀恐怖胃榕,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情瞄摊,我是刑警寧澤勋又,帶...
    沈念sama閱讀 35,428評論 5 343
  • 正文 年R本政府宣布,位于F島的核電站换帜,受9級特大地震影響楔壤,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜膜赃,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,022評論 3 326
  • 文/蒙蒙 一挺邀、第九天 我趴在偏房一處隱蔽的房頂上張望揉忘。 院中可真熱鬧跳座,春花似錦、人聲如沸泣矛。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,672評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽您朽。三九已至狂丝,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間哗总,已是汗流浹背几颜。 一陣腳步聲響...
    開封第一講書人閱讀 32,826評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留讯屈,地道東北人蛋哭。 一個月前我還...
    沈念sama閱讀 47,734評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像涮母,于是被迫代替她去往敵國和親谆趾。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,619評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 1. 簡介 本文檔包含DPDK軟件安裝和配置的相關(guān)說明叛本。旨在幫助用戶快速啟動和運(yùn)行軟件沪蓬。文檔主要描述了在Linux...
    半天妖閱讀 17,915評論 0 22
  • 31. 開發(fā)套件構(gòu)建系統(tǒng) DPDK 需要一個構(gòu)建系統(tǒng)用于編譯等操作。 本節(jié)介紹 DPDK 框架中使用的約束和機(jī)制来候。...
    半天妖閱讀 3,524評論 6 3
  • 1跷叉、通過CocoaPods安裝項(xiàng)目名稱項(xiàng)目信息 AFNetworking網(wǎng)絡(luò)請求組件 FMDB本地?cái)?shù)據(jù)庫組件 SD...
    陽明先生_X自主閱讀 15,979評論 3 119
  • 電影評分:9分(劇情波折起伏,演員演技逼真,能傳達(dá)的情感很深云挟。) 導(dǎo)演:愛德華峡眶,導(dǎo)演還是以實(shí)際為準(zhǔn),特效很少植锉,...
    Fanlander閱讀 512評論 0 3
  • 今天看了TED的-蒂姆·爾班的拖延癥的內(nèi)心世界辫樱,應(yīng)該和大部分觀看者一樣-是的,我腦袋里就是有這個一直喜歡簡單和快樂...
    迷妹喬小喵閱讀 727評論 0 0