网站设计评级,wordpress排行榜插件,公司网站建设设计公司,安徽蚌埠网嵌入式系统的sata盘经常故障#xff0c;需要使用smatctl工具监控和诊断sata故障。
1. 从网上下载开源smartmontools-5.43包。
2. 修改makefile进行交叉编译。 由于软件包中已经包含Makefile.am#xff0c;Makefile.in。直接运行 automake --add-missing 生成Makefile。
3.…嵌入式系统的sata盘经常故障需要使用smatctl工具监控和诊断sata故障。
1. 从网上下载开源smartmontools-5.43包。
2. 修改makefile进行交叉编译。 由于软件包中已经包含Makefile.amMakefile.in。直接运行 automake --add-missing 生成Makefile。
3. 修改Makefile中交叉编译工具
COMPILEPRE/usr/local/arm/4.4.3/bin
#CC gcc #CCAS gccCC ${COMPILEPRE}/arm-linux-gcc-4.4.3 CCAS ${COMPILEPRE}/arm-linux-gcc-4.4.3
CCASDEPMODE depmodegcc3 CCASFLAGS -g -O2 CCDEPMODE depmodegcc3 CFLAGS -g -O2 CPPFLAGS
CXX ${COMPILEPRE}/arm-linux-g CXXCPP ${COMPILEPRE}/arm-linux-g -E #CXX g #CXXCPP g -E
4. make 生成
报错
/home/grape/s3c2440/tools/smartmontools-5.43/dev_interface.cpp:271: undefined reference to clock_gettime
查询发现少了librt 实时库。
5. 在交叉编译库中查找
# find / -name *librt* /usr/local/arm/4.4.3/arm-none-linux-gnueabi/sys-root/usr/lib/librt.so
6. 在Makefile添加
LIBS /usr/local/arm/4.4.3/arm-none-linux-gnueabi/sys-root/usr/lib/librt.so
7. 重新make 成功编译成功。并查看生成的smartctl。
file smartctl smartctl: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.3, for GNU/Linux 2.6.32, not stripped
8. 上载smartctl到开发版查询stata:
# ./smartctl -h smartctl 5.43 2012-06-30 r3573 [armv4tl-linux-4.15.0] (local build) Copyright (C) 2002-12 by Bruce Allen, http://smartmontools.sourceforge.net
Usage: smartctl [options] device SHOW INFORMATION OPTIONS -h, --help, --usage Display this help and exit -V, --version, --copyright, --license Print license, copyright, and version information and exit