如果想要在windows平台上編譯,就需要借助cygwin工具。由于cygwin從v2.738之後就不支援Windows XP系統了,是以這裡采用win7 32系統 + cygwin v3.0.7來編譯ipmitool。
1、載ipmitool v1.8.17
官網位址:https://sourceforge.net/projects/ipmitool/files/ipmitool/1.8.17/
個人位址:https://download.csdn.net/download/sanqima/11466940
2、下載下傳cygwin v3.0.7
官網位址:http://www.cygwin.com/setup-x86.exe
個人位址:https://pan.baidu.com/s/1tjQVrUTdmhHuT4XrLZzKUA 提取碼:0ipv
3、安裝cywin裡的相關編譯套件,步驟如下:
3.1)輕按兩下cygwin setup-x86.exe
在界面裡選中Install from Internet --> 路徑預設C:\cygwin -->在Local Package Directory裡,選擇:D:\Program Files\CygwinPackage (該路徑是自定義的,任意填一個即可)
--> 點選 Use System Proxy Settings --> 在User URL裡填寫中國地區的鏡像,
比如:http://mirrors.aliyun.com
3.2)在Select Package裡,找到View的下拉清單裡的Category,點開ALL --》
a) + Devel–> 對于32位系統,勾選如下8個元件:
binutils
gcc
g++
gdb
make
automake
libtool
mingw-gcc(舊版是gcc-mingw)
b)在 +Shells 裡選中fish元件:
fish
c) 在 +Net 裡選中libssl-devle元件:
libssl-devel
d) 在 +Web 裡選中wget元件:
wget
e) 在 +Libs 裡選中如下2個元件:
libncurses-devel
libreadline-devel
詳細如下:
√ 勾選 automake 11-1
√ 勾選 binutils 2.29-1
√ 勾選 fish
√ 勾選 gcc-core 7.4.0-1
√ 勾選 gcc-g++ 7.4.0-1
√ 勾選 gdb 8.1.1-1
√ 勾選 make 4.2.1-2
√ 勾選 libtool 2.4.6-7
√ 勾選 mingw64-i686-gcc-core 7.4.0-1
√ 勾選 mingw64-i686-gcc-g++ 7.4.0-1
√ 勾選 mingw64-x86-i686-gcc-core 7.4.0-1
√ 勾選 mingw64-x86-i686-gcc-g++ 7.4.0-1
√ 勾選 libncurses-devel 6.1-1
√ 勾選 libreadline-devel 7.0.3-3
√ 勾選 libssl-devel 1.1.1c-1
√ 勾選 wget 1.19.1-2
點選[View]旁邊的下拉框裡選中Picked,就可以顯示目前選中的所有元件,如下圖所示:
圖(1) 點選Picked顯示已經勾選的元件
3.3)一路點選預設,直到安裝完成;
3.4) 測試gcc、g++、make是否安裝好,步驟如下:
運作Cygwin,在彈出的指令行視窗裡依次輸入如下指令;
gcc --version
g++ --version
make --version
cygcheck -c cygwin
如果上面4條都能列印出版本資訊,說明cygwin安裝成功。
注意,version前面是雙橫杆 --。
3.5) 配置cygwin環境變量
右擊[我的電腦]–》屬性 --》進階系統設定 --》環境變量 --》系統環境變量 --》
選擇Path --》編輯 --》在Path變量值路徑的末尾,添加如下字段:
;C:\cygwin\bin
注意,要確定前面加個英文半角分号來和其他的變量值進行區分。
點選"OK"關閉對話框,然後打開cygwin指令黑框框,輸入如下指令進行測試:
pwd
ls
3、将ipmitool-1.8.17.tar.bz2拷貝到C:\cygwin\XXX\home目錄下,解壓該檔案
即ipmitool的路徑為:C:\cygwin\XXX\home\ipmitool-1.8.17
注意:XXX表示電腦使用者名稱,如果電腦使用者名稱為hello,那麼XXX = hello,即路徑為:
C:\cygwin\hello\home\ipmitool-1.8.17 依次類推。
4、編譯C:\cygwin\hello\home目錄下的ipmitool工程
點選桌面左下角的[開始]—》Cygwin,打開[Cygwin Terminal],這裡以使用者名hello為例,依次輸入如下指令:
cd C:\cygwin\hello\home\ipmitool-1.8.17
./bootstrap
./configure --enable-intf-lan --enable-intf-lanplus --enable-intf-serial --enable-ipmishell --disable-intf-usb
LANG=C make
5、把下列7個檔案(1個exe + 6個dll),拷貝到一個檔案夾中,可以在不同的Windows上使用。當然,這些exe隻能在win7版本以上才能使用。
ipmitool-1.8.17\src.libs\ipmitool.exe
C:\cygwin\bin\cygcrypto-1.0.0.dll
C:\cygwin\bin\cyggcc_s-1.dll
C:\cygwin\bin\cygncursesw-10.dll
C:\cygwin\bin\cygreadline7.dll
C:\cygwin\bin\cygwin1.dll
C:\cygwin\bin\cygz.dll
注意,[ipmitool-1.8.XX\src\ipmitool.exe]隻是一個封裝的exe,該exe功能取決于第4步的./configure編譯指令,還有源碼裡實際的函數功能。
參考位址:
http://ipmitool.blogspot.com/2016/04/windows-os-ipmitool.html
https://blog.csdn.net/chunleixiahe/article/details/55666792
https://www.cnblogs.com/heidsoft/p/4014301.html
https://opsx.alibaba.com/mirror
https://blog.csdn.net/weixin_33859504/article/details/90877750