spdk/dpdk 編譯相關問題匯總

下載

到官網上下載最新的spdk 代碼。

解決編譯依賴

yum install libaio.x86_64 libaio-devel.x86_64

編譯dpdk

特別注意的是dpdk:依賴 /lib/modules/uname -a/build 下執行的內核已經存在,并且編譯過,為此需要:

  • 下載內核;
  • 安裝依賴;
    yum install ncurses.x86_64 ncurses-devel.x86_64 ncurses-libs.x86_64 ncurses-static.x86_64 ncurses-base.x86_64 ncurses-term.x86_64 ocaml-curses.x86_64

yum install numactl-devel.x86_64 numad.x86_64 numactl.x86_64

make menuconfig && make && make modules && make bzImage

注意用系統自帶的gcc make menuconfig 才可以彈出界面;

編譯spdk

參考下面命令:

./configure --with-fio=/home/xiaqichao/spdk/fio/fio --with-dpdk=/home/xiaqichao/latestspdk/spdk/dpdk/x86_64-native-linuxapp-gcc --without-virtio --without-vhost
make;
echo "EXTRA_CFLAGS=-fPIC" >> config/defconfig_x86_64-native-linuxapp-gcc && echo && make install T=x86_64-native-linuxapp-gcc DESTDIR=.LINK examples/bdev/fio_plugin/fio_plugin
/home/opt/gcc-4.8.2.bpkg-r4/gcc-4.8.2.bpkg-r4/sbin/../lib/gcc/x86_64-baidu-linux-gnu/4.8.2/../../../../x86_64-baidu-linux-gnu/bin/ld.bfd: cannot find -lnuma
collect2: error: ld returned 1 exit status
make[3]: *** [fio_plugin] Error 1
make[2]: *** [fio_plugin] Error 2
make[1]: *** [bdev] Error 2
make: *** [examples] Error 2
[root@s]# cd /
[root@s]# find ./ -name "libnuma*.so"
./usr/lib64/libnuma.so
[root@s]# cp ./usr/lib64/libnuma.so //home/opt/gcc-4.8.2.bpkg-r4/gcc-4.8.2.bpkg-r4/usr/lib
lib/     lib64/   libexec/
[root@s]# cp ./usr/lib64/libnuma.so //home/opt/gcc-4.8.2.bpkg-r4/gcc-4.8.2.bpkg-r4/usr/lib64/

可以通過下面的命令來解決上面的依賴:
yum install numactl-devel.x86_64 numad.x86_64 numactl.x86_64

然后重新編譯即可。

hello world nvme 版本程序演示

[ DPDK EAL parameters: hello_world -c 0x1 --file-prefix=spdk0 --base-virtaddr=0x1000000000 --proc-type=auto ]
EAL: Detected 32 lcore(s)
EAL: Auto-detected process type: PRIMARY
Initializing NVMe Controllers
EAL: PCI device 0000:86:00.0 on NUMA socket 0
EAL:   probe driver: 8086:a54 spdk_nvme
EAL: PCI device 0000:87:00.0 on NUMA socket 0
EAL:   probe driver: 8086:a54 spdk_nvme
EAL: PCI device 0000:88:00.0 on NUMA socket 0
EAL:   probe driver: 8086:a54 spdk_nvme
EAL: PCI device 0000:89:00.0 on NUMA socket 0
EAL:   probe driver: 8086:a54 spdk_nvme
EAL: PCI device 0000:af:00.0 on NUMA socket 0
EAL:   probe driver: 8086:a54 spdk_nvme
EAL: PCI device 0000:b0:00.0 on NUMA socket 0
EAL:   probe driver: 8086:a54 spdk_nvme
EAL: PCI device 0000:b1:00.0 on NUMA socket 0
EAL:   probe driver: 8086:a54 spdk_nvme
Attaching to 0000:b1:00.0
EAL: PCI device 0000:b2:00.0 on NUMA socket 0
EAL:   probe driver: 8086:a54 spdk_nvme
Attached to 0000:b1:00.0
Using controller INTEL SSDPE2KX040T7  (BTLF82140KK74P0IGN  ) with 1 namespaces.Namespace ID: 1 size: 4000GB
Initialization complete.
Hello world!
nvme_ctrlr.c: 473:nvme_ctrlr_shutdown: *ERROR*: did not shutdown within 5 seconds

轉載于:https://blog.51cto.com/xiamachao/2386347

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/448906.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/448906.shtml
英文地址,請注明出處:http://en.pswp.cn/news/448906.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

深入淺出 消息隊列 ActiveMQ

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 一、 概述與介紹 ActiveMQ 是Apache出品,最流行的、功能強大的即時通訊和集成模式的開源服務器。ActiveMQ 是一個完全支持JM…

2018-2019 ACM-ICPC Nordic Collegiate Programming Contest (NCPC 2018) - 4.28

賽后補了幾道 賽中我就寫了兩個... A - Altruistic AmphibiansGym - 101933A 看了眼榜沒幾個人做。就沒看。 最后發現就是一個DP(但是我覺得復雜度有點迷) 題意:$n$只青蛙有參數$l,w,h$分別表示彈跳力,體重,身高&#…

消息隊列技術介紹 : ActiveMQ、RabbitMQ、ZeroMQ、Kafka、MetaMQ、RocketMQ

一、 消息隊列概述 前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 消息隊列中間件是分布式系統中重要的組件,主要解決應用耦合、異步消息、流量削鋒等問題。實現高性能、高可…

程序員的惡性循環 !

窮人的惡性循環: 窮 -> 需要努力工作 -> 沒有時間去交際 -> 人脈越來越狹窄 -> 工作越來越難做 -> 越需要努力去工作 -> 越沒有時間去發展人脈 -> 越窮 富人的良性循環: 有錢 -> 工作很輕松 -> 很多時間都在交際上 -> 人…

刷臉考勤,重新定位校園管理

近幾年,人臉識別技術在安防領域得到了廣泛應用,隨著技術的不斷發展,它離我們的日常生活越來越近,手機、商場、公園、校園等都可以看到它的身影。刷臉考勤,重新定義校園管理。人臉識別,也叫面部識別&#xf…

python爬蟲學習之頁面登陸

爬蟲學習的一點心得 登陸主要有3種方法:使用selenium,cookies,模擬表單登陸 個人對于一般情況使用cookies登陸 可以實現一次手動,長期自動,可以繞過登陸(登陸的相關信息密碼,賬號等會存于cookie…

消息隊列 應用場景 解析

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 另外騰訊云-云社區還有一文不允許轉載,但內容挺好的:https://cloud.tencent.com/developer/article/1006035 分布…

求職面試的時候如何談薪酬待遇

在社會大學里混了那么多年,我最慘痛的經歷就是,在應聘一家企業的時候,總是羞于談薪酬待遇。大概這是很多職場新人都會遇到過的尷尬吧——覺得自己經驗不夠,或者想應聘的企業比較好,就覺得對方提多少就是多少吧&#xf…

利用memcached實現CAS單點登錄集群部署

前言:利用memcached實現CAS單點登錄集群部署 負載均衡:將接口請求的有狀態性變成無狀態性。是我們在實現負載均衡時必要要解決的問題。以應用接口的session狀態為例,一般解決方法都是將session數據和應用進行剝離,session數據統一…

注冊

<!DOCTYPE html><html lang"en"><head> <meta charset"UTF-8"> <title>注冊</title> {# 導入jQuery基礎類庫&#xff0c;才可以使用 $ #} <script src"../static/js/jquery-1.12.4.min.js"&…

Linux中10個有用的命令行補齊命令

本文由 極客范 - 踏雁尋花 翻譯自 Balakrishnan Mariyappan。歡迎加入極客翻譯小組&#xff0c;同我們一道翻譯與分享。轉載請參見文章末尾處的要求。在Linux系統中&#xff0c;輸入一個命令&#xff0c;再按兩次TAB鍵&#xff0c;就會列出所有以輸入字符開頭的可用命令。這并…

分布式開放消息系統 ( RocketMQ ) 的原理與實踐

分布式消息系統作為實現分布式系統可擴展、可伸縮性的關鍵組件&#xff0c;需要具有高吞吐量、高可用等特點。而談到消息系統的設計&#xff0c;就回避不了兩個問題&#xff1a; 消息的順序問題消息的重復問題RocketMQ作為阿里開源的一款高性能、高吞吐量的消息中間件&#xff…

數據結構02-鏈表

說明&#xff1a;由于該數據結構是由java并且是原生實現&#xff0c;所以與C有一些出入&#xff0c;不過原理是相同的 1.鏈表的定義 為了表示線性表元素a與a1的邏輯關系&#xff0c;存儲數據時&#xff0c;除了存儲元素本身的信息之外&#xff0c;還存儲了直接后繼元素的位置信…

第四章 面向對象

第四章 面向對象 1. 基本格式 定義&#xff1a;當函數(業務功能)比較多&#xff0c;可以使用面向對象來進行歸類&#xff0c;如果有一個凡事使用的公共值&#xff0c;也可以放到對象中 #格式&關鍵字 class 類名:def __inti__(self,x)self.x xdef 方法名(self,name):print(…

洛谷P2347 砝碼稱重 某一年noip提高組原題

可以轉化為01背包求方案數的問題&#xff0c;dp數組f[][]表示第幾個砝碼能稱出的重量,可壓縮至一維 轉移方程為f(i,j)f(i-1,j-w[i]) 當前我們可以稱出的重量必定是由之前的砝碼重量轉移過來的 #include<bits/stdc.h> using namespace std; const int N550; const int max…

解決:-bash: unzip: command not found (Linux 中 unZip/Zip 的安裝及使用)

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 Linux系統沒有自帶的壓縮解壓工具&#xff1b;需要我們自己安裝&#xff1b; 當用到zip或者unzip如果沒有安裝就會出現 unzip: Command…

云計算時代IT專業人員需具備的10項技能

摘要&#xff1a;IT專業人員需要不斷的學習&#xff0c;才能確保自己的工作能力跟上時代的步伐。云時代IT專業人員不僅需要具備一定的專業技能&#xff0c;比如快速運用自身知識快速在互聯網上構建應用程序&#xff0c;還必須具備商業、金融、業務需求分析等等。 【編者按】談…

java自定義注解學習筆記

注解學習筆記之自定義注解 Target&#xff08;{1,2,3,4,5,6,7}&#xff09; 1.ElementType.CONSTRUCTOR:用于描述構造器2.ElementType.FIELD:用于描述域3.ElementType.LOCAL_VARIABLE:用于描述局部變量4.ElementType.METHOD:用于描述方法5.ElementType.PACKAGE:用于描述包6.Ele…

[xsy3132]數表

題意&#xff1a;一個$n\times m$的數表&#xff0c;數值$\in[0,4)$&#xff0c;你可以任意次選擇一行或一列$1,\text{mod }4$&#xff0c;要最小化所有數的和 因為$n\leq10$&#xff0c;所以數表可以看成$m$個$n$位$4$進制數$a_{1\cdots m}$&#xff0c;以下使用不進位加法 定…

linux 下載、安裝 maven

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 1. 創建maven的文件夾并下載maven的tar包到此文件夾中 //進入一個目錄 cd /usr/local//創建一個文件夾 mkdir maven//下載maven的tar包…