交叉編譯libudev


一、交叉編譯libudev
下載udev-182.tar.xz
下載網址:https://mirrors.edge.kernel.org/pub/linux/utils/kernel/hotplug/
#tar -xvf udev-182.tar.xz

# cd udev-182
# mkdir build
# export PATH=/gcc-linaro-7.2.1-2017.11-x86_64_aarch64-linux-gnu/bin:$PATH
# vim udev-182/build-aux/config.sub 
 245 case $basic_machine in
 246         # Recognize the basic CPU types without company name.
 247         # Some are omitted here because they have special meanings below.
 248         1750a | 580 \
 249         | a29k \
 250         | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
 251         | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
 252         | am33_2.0 \
 253         | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 |aarch64 \
 254         | be32 | be64 \
 255         | bfin \

# ./configure --host=aarch64-linux-gnu --prefix=/udev-182/build CC=aarch64-linux-gnu-gcc AR=aarch64-linux-gnu-ar
 configure 配置問題:
1> configure: error: Package requirements (libkmod >= 5) were not met:No package 'libkmod' found  
2> configure: error: Package requirements (blkid >= 2.20) were not met:No package 'blkid' found      
3> configure: error: Package requirements (glib-2.0 >= 2.22.0 gobject-2.0 >= 2.22.0) were not met: No package 'glib-2.0' found No package 'gobject-2.0' found
    等等這類問題只需要安裝這些庫即可:
# apt-get install libkmod-dev libblkid-dev libglib2.0-dev

4> configure: error: pci.ids not found, try --with-pci-ids-path=
    解決該問題需要找到系統中的 pci.ids 然后指定
# ./configure --host=aarch64-linux-gnu --prefix=/udev-182/build CC=aarch64-linux-gnu-gcc AR=aarch64-linux-gnu-ar --with-pci-ids-path=/usr/share/misc/pci.ids
5> configure: error: Package requirements (gobject-introspection-1.0 >= 0.6.2) were not met:No package 'gobject-introspection-1.0' found

libudev編譯出錯太多,沒有完全編譯成功,后改為編譯eudev,獲取libudev.so

二、交叉編譯eudev
eudev下載路徑:https://dev.gentoo.org/~blueness/eudev/
# tar -xvf eudev-3.2.5.tar.gz
# cd eudev-3.2.5
# mkdir build
# export PATH=/gcc-linaro-7.2.1-2017.11-x86_64_aarch64-linux-gnu/bin:$PATH
# ./configure --host=aarch64-linux-gnu --prefix=/eudev-3.2.5/build/ CC=aarch64-linux-gnu-gcc AR=aarch64-linux-gnu-ar --disable-blkid --disable-kmod 
# make
# make install
# ls /eudev-3.2.5/build/
  bin etc include lib sbin share

  







免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM