ipmitool的Windows版本编译

一、Cygwin64 编译下载

Cygwin Installation

可以再次点击安装程序安装没有的包

下包清单:

  • gcc-core(C 编译器)
  • gcc-g++
  • make
  • autoconf
  • automake
  • libtool
  • m4
  • 依赖库 - devel(头文件库,解决 syslog.h/openssl 报错 )】
  • libssl-devel(openssl,lanplus 加密必需)
  • libreadline-devel
  • libncurses-devel

运行Cygwin64程序

二、 查看版本

三、下载

复制代码
$ wget https://github.com/ipmitool/ipmitool/archive/refs/tags/IPMITOOL_1_8_19.tar.gz
Connecting to github.com (20.205.243.166:443)
Connecting to codeload.github.com (20.205.243.165:443)
saving to 'IPMITOOL_1_8_19.tar.gz'
IPMITOOL_1_8_19.tar. 100% |********************************|  626k  0:00:00 ETA
'IPMITOOL_1_8_19.tar.gz' saved

四、解压

复制代码
tsy@DESKTOP-CP22LHU ~
$ ls
IPMITOOL_1_8_19.tar.gz  cdssetup

tsy@DESKTOP-CP22LHU ~
$ tar -zxvf IPMITOOL_1_8_19.tar.gz
ipmitool-IPMITOOL_1_8_19/
ipmitool-IPMITOOL_1_8_19/.github/
ipmitool-IPMITOOL_1_8_19/.github/workflows/
ipmitool-IPMITOOL_1_8_19/.github/workflows/ci.yml
ipmitool-IPMITOOL_1_8_19/.gitignore
ipmitool-IPMITOOL_1_8_19/AUTHORS
ipmitool-IPMITOOL_1_8_19/COPYING
ipmitool-IPMITOOL_1_8_19/ChangeLog
ipmitool-IPMITOOL_1_8_19/INSTALL
ipmitool-IPMITOOL_1_8_19/Makefile.am
ipmitool-IPMITOOL_1_8_19/NEWS
ipmitool-IPMITOOL_1_8_19/README
ipmitool-IPMITOOL_1_8_19/bootstrap
ipmitool-IPMITOOL_1_8_19/configure.ac
ipmitool-IPMITOOL_1_8_19/contrib/
ipmitool-IPMITOOL_1_8_19/contrib/Makefile.am
ipmitool-IPMITOOL_1_8_19/contrib/README
ipmitool-IPMITOOL_1_8_19/contrib/bmc-snmp-proxy
ipmitool-IPMITOOL_1_8_19/contrib/bmc-snmp-proxy.service
ipmitool-IPMITOOL_1_8_19/contrib/bmc-snmp-proxy.sysconf
ipmitool-IPMITOOL_1_8_19/contrib/bmclanconf
ipmitool-IPMITOOL_1_8_19/contrib/collect_data.sh
ipmitool-IPMITOOL_1_8_19/contrib/create_rrds.sh
ipmitool-IPMITOOL_1_8_19/contrib/create_webpage.sh
ipmitool-IPMITOOL_1_8_19/contrib/create_webpage_compact.sh
ipmitool-IPMITOOL_1_8_19/contrib/exchange-bmc-os-info.init.redhat
ipmitool-IPMITOOL_1_8_19/contrib/exchange-bmc-os-info.service.redhat
ipmitool-IPMITOOL_1_8_19/contrib/exchange-bmc-os-info.sysconf
ipmitool-IPMITOOL_1_8_19/contrib/ipmi.init.basic
ipmitool-IPMITOOL_1_8_19/contrib/ipmi.init.redhat
ipmitool-IPMITOOL_1_8_19/contrib/ipmievd.init.debian
ipmitool-IPMITOOL_1_8_19/contrib/ipmievd.init.redhat
ipmitool-IPMITOOL_1_8_19/contrib/ipmievd.init.suse
ipmitool-IPMITOOL_1_8_19/contrib/log_bmc.sh
ipmitool-IPMITOOL_1_8_19/contrib/oem_ibm_sel_map
ipmitool-IPMITOOL_1_8_19/control/
ipmitool-IPMITOOL_1_8_19/control/Makefile.am
ipmitool-IPMITOOL_1_8_19/control/ipmitool.spec.in
ipmitool-IPMITOOL_1_8_19/control/pkginfo.in
ipmitool-IPMITOOL_1_8_19/control/prototype.in
ipmitool-IPMITOOL_1_8_19/csv-revision
ipmitool-IPMITOOL_1_8_19/doc/
ipmitool-IPMITOOL_1_8_19/doc/Makefile.am
ipmitool-IPMITOOL_1_8_19/doc/ipmievd.8.in
ipmitool-IPMITOOL_1_8_19/doc/ipmitool.1.in
ipmitool-IPMITOOL_1_8_19/include/
ipmitool-IPMITOOL_1_8_19/include/Makefile.am
ipmitool-IPMITOOL_1_8_19/include/ipmitool/
ipmitool-IPMITOOL_1_8_19/include/ipmitool/Makefile.am
ipmitool-IPMITOOL_1_8_19/include/ipmitool/bswap.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/helper.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/hpm2.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_cc.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_cfgp.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_channel.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_chassis.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_constants.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_dcmi.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_delloem.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_ekanalyzer.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_entity.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_event.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_firewall.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_fru.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_fwum.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_gendev.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_hpmfwupg.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_ime.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_intf.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_isol.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_kontronoem.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_lanp.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_lanp6.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_main.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_mc.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_oem.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_pef.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_picmg.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_quantaoem.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_raw.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_sdr.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_sdradd.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_sel.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_sel_supermicro.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_sensor.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_session.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_sol.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_strings.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_sunoem.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_time.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_tsol.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_user.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/ipmi_vita.h
ipmitool-IPMITOOL_1_8_19/include/ipmitool/log.h
ipmitool-IPMITOOL_1_8_19/lib/
ipmitool-IPMITOOL_1_8_19/lib/Makefile.am
ipmitool-IPMITOOL_1_8_19/lib/dimm_spd.c
ipmitool-IPMITOOL_1_8_19/lib/helper.c
ipmitool-IPMITOOL_1_8_19/lib/hpm2.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_cfgp.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_channel.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_chassis.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_dcmi.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_delloem.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_ekanalyzer.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_event.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_firewall.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_fru.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_fwum.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_gendev.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_hpmfwupg.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_ime.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_isol.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_kontronoem.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_lanp.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_lanp6.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_main.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_mc.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_oem.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_pef.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_picmg.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_quantaoem.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_raw.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_sdr.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_sdradd.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_sel.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_sensor.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_session.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_sol.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_strings.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_sunoem.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_time.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_tsol.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_user.c
ipmitool-IPMITOOL_1_8_19/lib/ipmi_vita.c
ipmitool-IPMITOOL_1_8_19/lib/log.c
ipmitool-IPMITOOL_1_8_19/src/
ipmitool-IPMITOOL_1_8_19/src/Makefile.am
ipmitool-IPMITOOL_1_8_19/src/ipmievd.c
ipmitool-IPMITOOL_1_8_19/src/ipmishell.c
ipmitool-IPMITOOL_1_8_19/src/ipmitool.c
ipmitool-IPMITOOL_1_8_19/src/plugins/
ipmitool-IPMITOOL_1_8_19/src/plugins/Makefile.am
ipmitool-IPMITOOL_1_8_19/src/plugins/bmc/
ipmitool-IPMITOOL_1_8_19/src/plugins/bmc/Makefile.am
ipmitool-IPMITOOL_1_8_19/src/plugins/bmc/bmc.c
ipmitool-IPMITOOL_1_8_19/src/plugins/bmc/bmc.h
ipmitool-IPMITOOL_1_8_19/src/plugins/bmc/bmc_intf.h
ipmitool-IPMITOOL_1_8_19/src/plugins/dbus/
ipmitool-IPMITOOL_1_8_19/src/plugins/dbus/Makefile.am
ipmitool-IPMITOOL_1_8_19/src/plugins/dbus/dbus.c
ipmitool-IPMITOOL_1_8_19/src/plugins/dummy/
ipmitool-IPMITOOL_1_8_19/src/plugins/dummy/Makefile.am
ipmitool-IPMITOOL_1_8_19/src/plugins/dummy/dummy.c
ipmitool-IPMITOOL_1_8_19/src/plugins/dummy/dummy.h
ipmitool-IPMITOOL_1_8_19/src/plugins/free/
ipmitool-IPMITOOL_1_8_19/src/plugins/free/Makefile.am
ipmitool-IPMITOOL_1_8_19/src/plugins/free/free.c
ipmitool-IPMITOOL_1_8_19/src/plugins/imb/
ipmitool-IPMITOOL_1_8_19/src/plugins/imb/Makefile.am
ipmitool-IPMITOOL_1_8_19/src/plugins/imb/imb.c
ipmitool-IPMITOOL_1_8_19/src/plugins/imb/imbapi.c
ipmitool-IPMITOOL_1_8_19/src/plugins/imb/imbapi.h
ipmitool-IPMITOOL_1_8_19/src/plugins/ipmi_intf.c
ipmitool-IPMITOOL_1_8_19/src/plugins/lan/
ipmitool-IPMITOOL_1_8_19/src/plugins/lan/Makefile.am
ipmitool-IPMITOOL_1_8_19/src/plugins/lan/asf.h
ipmitool-IPMITOOL_1_8_19/src/plugins/lan/auth.c
ipmitool-IPMITOOL_1_8_19/src/plugins/lan/auth.h
ipmitool-IPMITOOL_1_8_19/src/plugins/lan/lan.c
ipmitool-IPMITOOL_1_8_19/src/plugins/lan/lan.h
ipmitool-IPMITOOL_1_8_19/src/plugins/lan/md5.c
ipmitool-IPMITOOL_1_8_19/src/plugins/lan/md5.h
ipmitool-IPMITOOL_1_8_19/src/plugins/lan/rmcp.h
ipmitool-IPMITOOL_1_8_19/src/plugins/lanplus/
ipmitool-IPMITOOL_1_8_19/src/plugins/lanplus/Makefile.am

五、编译

./bootstrap

复制代码
tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19
$ ./bootstrap
+ aclocal
+ case `uname` in
++ uname
+ libtoolize --automake --copy
+ autoheader
+ automake --foreign --add-missing --copy
configure.ac:15: installing './compile'
configure.ac:8: installing './config.guess'
configure.ac:8: installing './config.sub'
configure.ac:9: installing './install-sh'
configure.ac:9: installing './missing'
lib/Makefile.am: installing './depcomp'
+ aclocal
+ autoconf
configure.ac:8: warning: The macro 'AC_CANONICAL_SYSTEM' is obsolete.
configure.ac:8: You should run autoupdate.
/mnt/share/cygpkgs/autoconf2.7/autoconf2.7.noarch/src/autoconf-2.73/lib/autoconf/general.m4:2137: AC_CANONICAL_SYSTEM is expanded from...
configure.ac:8: the top level
configure.ac:10: warning: 'AM_CONFIG_HEADER': this macro is obsolete.
configure.ac:10: You should use the 'AC_CONFIG_HEADERS' macro instead.
aclocal.m4:9890: AM_CONFIG_HEADER is expanded from...
configure.ac:10: the top level
configure.ac:24: warning: The macro 'AC_HEADER_STDC' is obsolete.
configure.ac:24: You should run autoupdate.
/mnt/share/cygpkgs/autoconf2.7/autoconf2.7.noarch/src/autoconf-2.73/lib/autoconf/headers.m4:664: AC_HEADER_STDC is expanded from...
configure.ac:24: the top level
configure.ac:41: warning: The macro 'AM_PROG_LIBTOOL' is obsolete.
configure.ac:41: You should run autoupdate.
aclocal.m4:123: AM_PROG_LIBTOOL is expanded from...
configure.ac:41: the top level
configure.ac:145: warning: The macro 'AC_HELP_STRING' is obsolete.
configure.ac:145: You should run autoupdate.
/mnt/share/cygpkgs/autoconf2.7/autoconf2.7.noarch/src/autoconf-2.73/lib/autoconf/general.m4:205: AC_HELP_STRING is expanded from...
/mnt/share/cygpkgs/autoconf2.7/autoconf2.7.noarch/src/autoconf-2.73/lib/autoconf/general.m4:1584: AC_ARG_ENABLE is expanded from...
configure.ac:145: the top level
configure.ac:155: warning: The macro 'AC_TRY_COMPILE' is obsolete.
configure.ac:155: You should run autoupdate.
/mnt/share/cygpkgs/autoconf2.7/autoconf2.7.noarch/src/autoconf-2.73/lib/autoconf/general.m4:2903: AC_TRY_COMPILE is expanded from...
configure.ac:155: the top level
configure.ac:173: warning: The macro 'AC_HELP_STRING' is obsolete.
configure.ac:173: You should run autoupdate.
/mnt/share/cygpkgs/autoconf2.7/autoconf2.7.noarch/src/autoconf-2.73/lib/autoconf/general.m4:205: AC_HELP_STRING is expanded from...
/mnt/share/cygpkgs/autoconf2.7/autoconf2.7.noarch/src/autoconf-2.73/lib/autoconf/general.m4:1584: AC_ARG_ENABLE is expanded from...
configure.ac:173: the top level
configure.ac:224: warning: The macro 'AC_HELP_STRING' is obsolete.
configure.ac:224: You should run autoupdate.
/mnt/share/cygpkgs/autoconf2.7/autoconf2.7.noarch/src/autoconf-2.73/lib/autoconf/general.m4:205: AC_HELP_STRING is expanded from...
/mnt/share/cygpkgs/autoconf2.7/autoconf2.7.noarch/src/autoconf-2.73/lib/autoconf/general.m4:1584: AC_ARG_ENABLE is expanded from...
configure.ac:224: the top level
configure.ac:240: warning: The macro 'AC_HELP_STRING' is obsolete.
configure.ac:240: You should run autoupdate.
/mnt/share/cygpkgs/autoconf2.7/autoconf2.7.noarch/src/autoconf-2.73/lib/autoconf/general.m4:205: AC_HELP_STRING is expanded from...
/mnt/share/cygpkgs/autoconf2.7/autoconf2.7.noarch/src/autoconf-2.73/lib/autoconf/general.m4:1584: AC_ARG_ENABLE is expanded from...
configure.ac:240: the top level
configure.ac:256: warning: The macro 'AC_HELP_STRING' is obsolete.
configure.ac:256: You should run autoupdate.
/mnt/share/cygpkgs/autoconf2.7/autoconf2.7.noarch/src/autoconf-2.73/lib/autoconf/general.m4:205: AC_HELP_STRING is expanded from...
/mnt/share/cygpkgs/autoconf2.7/autoconf2.7.noarch/src/autoconf-2.73/lib/autoconf/general.m4:1584: AC_ARG_ENABLE is expanded from...
configure.ac:256: the top level
configure.ac:280: warning: The macro 'AC_HELP_STRING' is obsolete.
configure.ac:280: You should run autoupdate.
/mnt/share/cygpkgs/autoconf2.7/autoconf2.7.noarch/src/autoconf-2.73/lib/autoconf/general.m4:205: AC_HELP_STRING is expanded from...
/mnt/share/cygpkgs/autoconf2.7/autoconf2.7.noarch/src/autoconf-2.73/lib/autoconf/general.m4:1584: AC_ARG_ENABLE is expanded from...
configure.ac:280: the top level
configure.ac:297: warning: The macro 'AC_HELP_STRING' is obsolete.
configure.ac:297: You should run autoupdate.
/mnt/share/cygpkgs/autoconf2.7/autoconf2.7.noarch/src/autoconf-2.73/lib/autoconf/general.m4:205: AC_HELP_STRING is expanded from...
/mnt/share/cygpkgs/autoconf2.7/autoconf2.7.noarch/src/autoconf-2.73/lib/autoconf/general.m4:1603: AC_ARG_WITH is expanded from...
configure.ac:297: the top level
configure.ac:351: warning: The macro 'AC_HELP_STRING' is obsolete.
configure.ac:351: You should run autoupdate.
/mnt/share/cygpkgs/autoconf2.7/autoconf2.7.noarch/src/autoconf-2.73/lib/autoconf/general.m4:205: AC_HELP_STRING is expanded from...
/mnt/share/cygpkgs/autoconf2.7/autoconf2.7.noarch/src/autoconf-2.73/lib/autoconf/general.m4:1584: AC_ARG_ENABLE is expanded from...
configure.ac:351: the top level
configure.ac:366: warning: The macro 'AC_TRY_COMPILE' is obsolete.
configure.ac:366: You should run autoupdate.
/mnt/share/cygpkgs/autoconf2.7/autoconf2.7.noarch/src/auto

./configure --enable-intf-lan --enable-intf-lanplus --enable-ipmishell --disable-intf-usb

复制代码
tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19
$ ./configure --enable-intf-lan --enable-intf-lanplus --enable-ipmishell --disable-intf-usb
checking build system type... x86_64-pc-cygwin
checking host system type... x86_64-pc-cygwin
checking target system type... x86_64-pc-cygwin
checking for a BSD-compatible install... /usr/bin/install -c
checking whether sleep supports fractional seconds... yes
checking filesystem timestamp resolution... 0.01
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking xargs -n works... yes
checking whether UID '197609' is supported by ustar format... yes
checking whether GID '197121' is supported by ustar format... yes
checking how to create a ustar tar archive... gnutar
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.exe
checking for suffix of executables... .exe
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C23 features... unsupported
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking whether make supports the include directive... yes (GNU style)
checking dependency style of gcc... gcc3

make

复制代码
Interfaces (default=lan)
  lan     : yes
  lanplus : yes
  open    : no
  free    : no
  imb     : no
  bmc     : no
  dbus    : no
  usb     : no
  lipmi   : no
  serial  : yes
  dummy   : no

Extra tools
  ipmievd   : yes
  ipmishell : yes


tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19
$ make
make  all-recursive
make[1]: Entering directory '/cygdrive/d/Cadence/SPB_Data/ipmitool-IPMITOOL_1_8_19'
Making all in lib
make[2]: Entering directory '/cygdrive/d/Cadence/SPB_Data/ipmitool-IPMITOOL_1_8_19/lib'
depbase=`echo helper.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'`;\
/bin/sh ../libtool --silent  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..  -I../include   -g -O2 -Wall -Wextra -std=gnu11 -pedantic -Wformat -Wformat-nonliteral -MT helper.lo -MD -MP -MF $depbase.Tpo -c -o helper.lo helper.c &&\
mv -f $depbase.Tpo $depbase.Plo
In file included from helper.c:48:
helper.c: In function 'ipmi_parse_hex':
helper.c:182:31: warning: array subscript has type 'char' [-Wchar-subscripts]
  182 |                 if (!isxdigit(*p)) {
      |                               ^~
depbase=`echo ipmi_sdr.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'`;\
/bin/sh ../libtool --silent  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..  -I../include   -g -O2 -Wall -Wextra -std=gnu11 -pedantic -Wformat -Wformat-nonliteral -MT ipmi_sdr.lo -MD -MP -MF $depbase.Tpo -c -o ipmi_sdr.lo ipmi_sdr.c &&\
mv -f $depbase.Tpo $depbase.Plo
ipmi_sdr.c: In function 'ipmi_sdr_print_name_from_rawentry':
ipmi_sdr.c:2646:17: warning: pointer targets in assignment from 'uint8_t *' {aka 'unsigned char *'} to 'const char *' differ in signedness [-Wpointer-sign]
 2646 |       id_string = record.full->id_string;
      |                 ^
ipmi_sdr.c:2652:17: warning: pointer targets in 

六、查看验证

cd src/

复制代码
tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19/src
$ ls
Makefile     Makefile.in  ipmievd.exe  ipmishell.c  ipmitool.c    ipmitool.o
Makefile.am  ipmievd.c    ipmievd.o    ipmishell.o  ipmitool.exe  plugins

tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19/src
$ ./ipmitool.exe
IANA PEN registry open failed: No such file or directory
No hostname specified!

tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19/src
$ ./ipmitool.exe -h
ipmitool version 1.8.19

usage: ipmitool [options...] <command>

       -h             This help
       -V             Show version information
       -v             Verbose (can use multiple times)
       -c             Display output in comma separated format
       -d N           Specify a /dev/ipmiN device to use (default=0)
       -I intf        Interface to use
       -H hostname    Remote host name for LAN interface
       -p port        Remote RMCP port [default=623]
       -U username    Remote session username
       -f file        Read remote session password from file
       -z size        Change Size of Communication Channel (OEM)
       -S sdr         Use local file for remote SDR cache
       -D tty:b[:s]   Specify the serial device, baud rate to use
                      and, optionally, specify that interface is the system one
       -4             Use only IPv4
       -6             Use only IPv6
       -a             Prompt for remote password
       -Y             Prompt for the Kg key for IPMIv2 authentication
       -e char        Set SOL escape character
       -C ciphersuite Cipher suite to be used by lanplus interface
       -k key         Use Kg key for IPMIv2 authentication
       -y hex_key     Use hexadecimal-encoded Kg key for IPMIv2 authentication
       -L level       Remote session privilege level [default=ADMINISTRATOR]
                      Append a '+' to use name/privilege lookup in RAKP1
       -A authtype    Force use of auth type NONE, PASSWORD, MD2, MD5 or OEM
       -P password    Remote session password
       -E             Read password from IPMI_PASSWORD environment variable
       -K             Read kgkey from IPMI_KGKEY environment variable

七、移植到windows环境

运行报错

解决:

复制代码
tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19
$ ./bootstrap
+ aclocal
+ case `uname` in
++ uname
tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19
$ ./configure
checking build system type... x86_64-pc-cygwin
checking host system type... x86_64-pc-cygwin
tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19
$ make -j8
make  all-recursive

tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19/src/.libs
$ ./ipmitool.exe -h
tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19/src/.libs
$ ldd ipmitool
        ntdll.dll => /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll (0x7ffd94870000)
        KERNEL32.DLL => /cygdrive/c/WINDOWS/System32/KERNEL32.DLL (0x7ffd93db0000)
        KERNELBASE.dll => /cygdrive/c/WINDOWS/System32/KERNELBASE.dll (0x7ffd92240000)
        cygwin1.dll => /usr/bin/cygwin1.dll (0x7ffd0ee50000)
        cygcrypto-3.dll => /usr/bin/cygcrypto-3.dll (0x3ff7c0000)
        cygreadline8.dll => /usr/bin/cygreadline8.dll (0x3fef10000)
        cygncursesw-10.dll => /usr/bin/cygncursesw-10.dll (0x3ff260000)
        CRYPT32.dll => /cygdrive/c/WINDOWS/System32/CRYPT32.dll (0x7ffd91cb0000)
        ucrtbase.dll => /cygdrive/c/WINDOWS/System32/ucrtbase.dll (0x7ffd92120000)
        cygz.dll => /usr/bin/cygz.dll (0x3fe8e0000)

tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19/src/.libs
$ cp /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll /cygdrive/d/360极速浏览器X下载/ipmitool/

tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19/src/.libs
$ cp /cygdrive/c/WINDOWS/SYSTEM32/KERNEL32.DLL /cygdrive/d/360极速浏览器X下载/ipmitool/

tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19/src/.libs
$ cp /cygdrive/c/WINDOWS/SYSTEM32//KERNELBASE.dll /cygdrive/d/360极速浏览器X下载/ipmitool/

tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19/src/.libs
$ cp /cygdrive/c/WINDOWS/SYSTEM32/CRYPT32.dll /cygdrive/d/360极速浏览器X下载/ipmitool/

tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19/src/.libs
$ cp /cygdrive/c/WINDOWS/SYSTEM32/ucrtbase.dll /cygdrive/d/360极速浏览器X下载/ipmitool/

tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19/src/.libs
$ cp /usr/bin/cygwin1.dll /cygdrive/d/360极速浏览器X下载/ipmitool/

tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19/src/.libs
$ cp /usr/bin/cygreadline8.dll /cygdrive/d/360极速浏览器X下载/ipmitool/

tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19/src/.libs
$ cp /usr/bin/cygncursesw-10.dll /cygdrive/d/360极速浏览器X下载/ipmitool/

tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19/src/.libs
$ cp /usr/bin//cygcrypto-3.dll /cygdrive/d/360极速浏览器X下载/ipmitool/

tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19/src/.libs
$ cp /usr/bin/cygz.dll /cygdrive/d/360极速浏览器X下载/ipmitool/

tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19/src/.libs
$ ls
ipmievd.exe  ipmievd_ltshwrapper  ipmitool.exe  ipmitool_ltshwrapper  lt-ipmievd.c  lt-ipmitool.c

tsy@DESKTOP-CP22LHU ~/ipmitool-IPMITOOL_1_8_19/src/.libs
$ cp ipmievd.exe ipmitool.exe /cygdrive/d/360极速浏览器X下载/ipmitool/

windows版本查看

相关推荐
王维同学4 小时前
Credential Provider、Filter 与 PLAP 的 CLSID 枚举
c++·windows·安全·注册表
寒水馨6 小时前
Windows下载、安装 Codex CLI(附安装包codex-x86_64-pc-windows-msvc.exe)
windows·rust·codex·终端工具·自动化编程·codex cli·ai编码代理
其实防守也摸鱼9 小时前
镜像校验完成iso完整操作流程(Windows 环境,适配 Ubuntu 22.04 / 24.04)
linux·服务器·windows·学习·ubuntu·教程
像风一样自由202018 小时前
从本地到公网:Windows 下使用 Cloudflare Quick Tunnel 与 Natapp 联调 FastAPI
windows·fastapi
2601_960906721 天前
科技“无人区”跋涉,难度高、不确定性大
windows·macos·pycharm·myeclipse
会飞的大鱼人1 天前
一文搞懂 Java HashSet:把它想成游乐园里只允许一次入场的盖章名单
java·开发语言·windows
ziguo11221 天前
C/C++ 错误处理全解:从 errno 到 C++ 异常
linux·c语言·c++·windows·visual studio
编程圈子1 天前
电机驱动开发学习19. 霍尔 BLDC 三段式 FOC 启动算法
驱动开发·学习·算法
王维同学1 天前
IFEO Debugger、VerifierDlls 与 SilentProcessExit 配置
c++·windows·安全·注册表