2013-11-25 125 views
6

如果有人能幫助我,我真的很感激它,因爲它讓我瘋狂。OpenWRT - 重新編譯時丟失依賴關係

當我從頭開始編譯OpenWRT映像(包括我的包)時,通常情況下,一切正常。

否則,當我然後嘗試重新編譯時,我不斷失去依賴錯誤。

我發現唯一的解決方法是將我的軟件包放到一個完全乾淨的OpenWRT環境中,然後再次編譯所有東西。考慮到編譯整個OpenWRT映像需要花費一個多小時,這沒有什麼幫助。

這是我的錯誤:

[email protected]:~/Documents/openwrt/openwrt$ make package/amldmonitor/compile V=99 
^Tmake[1]: Entering directory `/home/michael/Documents/openwrt/openwrt' 
make[2]: Entering directory `/home/michael/Documents/openwrt/openwrt/package/kernel/linux' 
/home/michael/Documents/openwrt/openwrt/target/linux/imx23/modules.mk:65: warning: overriding commands for target `/home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/root-x86/stamp/.kmod-usb-mxs-phy_installed' 
modules/usb.mk:1079: warning: ignoring old commands for target `/home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/root-x86/stamp/.kmod-usb-mxs-phy_installed' 
/home/michael/Documents/openwrt/openwrt/target/linux/imx23/modules.mk:65: warning: overriding commands for target `/home/michael/Documents/openwrt/openwrt/bin/x86/packages/kmod-usb-mxs-phy_3.8.13-1_x86.ipk' 
modules/usb.mk:1079: warning: ignoring old commands for target `/home/michael/Documents/openwrt/openwrt/bin/x86/packages/kmod-usb-mxs-phy_3.8.13-1_x86.ipk' 
/home/michael/Documents/openwrt/openwrt/target/linux/imx23/modules.mk:65: warning: overriding commands for target `kmod-usb-mxs-phy-clean' 
modules/usb.mk:1079: warning: ignoring old commands for target `kmod-usb-mxs-phy-clean' 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kernel" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
WARNING: skipping kmod-ata-core -- package not selected 
WARNING: skipping kmod-ata-ahci -- package not selected 
WARNING: skipping kmod-ata-piix -- package not selected 
WARNING: skipping kmod-block2mtd -- package not selected 
WARNING: skipping kmod-md-mod -- package not selected 
WARNING: skipping kmod-scsi-core -- package not selected 
WARNING: skipping kmod-scsi-cdrom -- package not selected 
WARNING: skipping kmod-crypto-core -- package not selected 
WARNING: skipping kmod-crypto-hash -- package not selected 
WARNING: skipping kmod-crypto-aes -- package not selected 
WARNING: skipping kmod-crypto-crc32c -- package not selected 
WARNING: skipping kmod-fs-ext4 -- package not selected 
WARNING: skipping kmod-fs-isofs -- package not selected 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-hwmon-core" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
WARNING: skipping kmod-i2c-core -- package not selected 
WARNING: skipping kmod-i2c-algo-bit -- package not selected 
WARNING: skipping kmod-hid -- package not selected 
WARNING: skipping kmod-input-core -- package not selected 
WARNING: skipping kmod-acpi-button -- package not selected 
WARNING: skipping kmod-ledtrig-netdev -- package not selected 
WARNING: skipping kmod-ledtrig-default-on -- package not selected 
WARNING: skipping kmod-ledtrig-timer -- package not selected 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-lib-crc-ccitt" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
WARNING: skipping kmod-lib-crc16 -- package not selected 
WARNING: skipping kmod-lib-zlib -- package not selected 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-libphy" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-natsemi" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-sis900" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-via-rhine" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-via-velocity" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-8139too" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-r8169" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-ne2k-pci" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-e100" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-e1000" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-3c59x" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-pcnet32" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-tg3" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-ipt-core" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-ipt-conntrack" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-ipt-nat" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-ipt-nathelper" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-ip6tables" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
WARNING: skipping kmod-bridge -- package not selected 
WARNING: skipping kmod-llc -- package not selected 
WARNING: skipping kmod-stp -- package not selected 
WARNING: skipping kmod-8021q -- package not selected 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-ipv6" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-tun" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-slhc" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-ppp" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-pppox" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-pppoe" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
WARNING: skipping kmod-nls-base -- package not selected 
WARNING: skipping kmod-serial-8250 -- package not selected 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-pps" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install.clean; fi; echo "kmod-ptp" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/linux.default.install 
WARNING: skipping kmod-random-core -- package not selected 
WARNING: skipping kmod-thermal -- package not selected 
WARNING: skipping kmod-pcmcia-rsrc -- package not selected 
WARNING: skipping kmod-sound-seq -- package not selected 
WARNING: skipping kmod-usb-core -- package not selected 
WARNING: skipping kmod-usb-uhci -- package not selected 
WARNING: skipping kmod-usb-ohci -- package not selected 
WARNING: skipping kmod-usb2 -- package not selected 
WARNING: skipping kmod-usb2-pci -- package not selected 
WARNING: skipping kmod-usb-storage -- package not selected 
WARNING: skipping kmod-fb -- package not selected 
WARNING: skipping kmod-fb-cfb-fillrect -- package not selected 
WARNING: skipping kmod-fb-cfb-copyarea -- package not selected 
WARNING: skipping kmod-fb-cfb-imgblt -- package not selected 
WARNING: skipping kmod-pcmcia-au1000 -- package not selected 
WARNING: skipping kmod-rtc-stmp3xxx -- package not selected 
WARNING: skipping kmod-usb-chipidea-imx -- package not selected 
WARNING: skipping kmod-ata-rbppc-cf -- package not selected 
WARNING: skipping kmod-ata-rb532-cf -- package not selected 
make[2]: Leaving directory `/home/michael/Documents/openwrt/openwrt/package/kernel/linux' 
make[2]: Entering directory `/home/michael/Documents/openwrt/openwrt/package/libs/toolchain' 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/toolchain.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/toolchain.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/toolchain.default.install.clean; fi; echo "libc" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/toolchain.default.install 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/toolchain.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/toolchain.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/toolchain.default.install.clean; fi; echo "libgcc" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/toolchain.default.install 
WARNING: skipping libssp -- package not selected 
WARNING: skipping libstdcpp -- package not selected 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/toolchain.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/toolchain.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/toolchain.default.install.clean; fi; echo "libpthread" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/toolchain.default.install 
WARNING: skipping libthread-db -- package not selected 
WARNING: skipping librt -- package not selected 
WARNING: skipping libgfortran -- package not selected 
WARNING: skipping ldd -- package not selected 
WARNING: skipping ldconfig -- package not selected 
make[2]: Leaving directory `/home/michael/Documents/openwrt/openwrt/package/libs/toolchain' 
make[2]: Entering directory `/home/michael/Documents/openwrt/openwrt/package/libs/ocf-crypto-headers' 
make[2]: Leaving directory `/home/michael/Documents/openwrt/openwrt/package/libs/ocf-crypto-headers' 
make[2]: Entering directory `/home/michael/Documents/openwrt/openwrt/package/libs/zlib' 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/zlib.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/zlib.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/zlib.default.install.clean; fi; echo "zlib" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/zlib.default.install 
make[2]: Leaving directory `/home/michael/Documents/openwrt/openwrt/package/libs/zlib' 
make[2]: Entering directory `/home/michael/Documents/openwrt/openwrt/package/libs/openssl' 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/openssl.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/openssl.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/openssl.default.install.clean; fi; echo "libopenssl" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/openssl.default.install 
WARNING: skipping openssl-util -- package not selected 
make[2]: Leaving directory `/home/michael/Documents/openwrt/openwrt/package/libs/openssl' 
make[2]: Entering directory `/home/michael/Documents/openwrt/openwrt/package/amld' 
if [ -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/amld.default.install.clean ]; then rm -f /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/amld.default.install /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/amld.default.install.clean; fi; echo "amld" >> /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo/amld.default.install 
make[2]: Leaving directory `/home/michael/Documents/openwrt/openwrt/package/amld' 
make[2]: Entering directory `/home/michael/Documents/openwrt/openwrt/package/amldmonitor' 
mkdir -p /home/michael/Documents/openwrt/openwrt/bin/x86/packages /home/michael/Documents/openwrt/openwrt/build_dir/target-i386_i486_uClibc-0.9.33.2/amldmonitor/ipkg-x86/amldmonitor/CONTROL /home/michael/Documents/openwrt/openwrt/staging_dir/target-i386_i486_uClibc-0.9.33.2/pkginfo 
install -d -m0755 /home/michael/Documents/openwrt/openwrt/build_dir/target-i386_i486_uClibc-0.9.33.2/amldmonitor/ipkg-x86/amldmonitor/bin 
install -m0755 /home/michael/Documents/openwrt/openwrt/build_dir/target-i386_i486_uClibc-0.9.33.2/amldmonitor/amldmonitor /home/michael/Documents/openwrt/openwrt/build_dir/target-i386_i486_uClibc-0.9.33.2/amldmonitor/ipkg-x86/amldmonitor/bin/ 
find /home/michael/Documents/openwrt/openwrt/build_dir/target-i386_i486_uClibc-0.9.33.2/amldmonitor/ipkg-x86/amldmonitor -name 'CVS' -o -name '.svn' -o -name '.#*' -o -name '*~'| xargs -r rm -rf 
Package amldmonitor is missing dependencies for the following libraries: 
libc.so.6 
make[2]: *** [/home/michael/Documents/openwrt/openwrt/bin/x86/packages/amldmonitor_1_x86.ipk] Error 1 
make[2]: Leaving directory `/home/michael/Documents/openwrt/openwrt/package/amldmonitor' 
make[1]: *** [package/amldmonitor/compile] Error 2 
make[1]: Leaving directory `/home/michael/Documents/openwrt/openwrt' 
make: *** [package/amldmonitor/compile] Error 2 

而我的包的Makefile:

include $(TOPDIR)/rules.mk 

PKG_NAME:=amldmonitor 
PKG_RELEASE:=1 

include $(INCLUDE_DIR)/package.mk 

define Package/amldmonitor 
TITLE:=amldmontior 
SECTION:=utils 
CATEGORY:=Utilities 
DEPENDS:=+amld +libc +libpthread 
endef 

CONFIGURE_VARS+= \ 
    CC="$(TOOLCHAIN_DIR)/bin/$(TARGET_CC)" 

define Build/Prepare 
    mkdir -p $(PKG_BUILD_DIR) 
    $(CP) ./files/* $(PKG_BUILD_DIR)/ 
endef 

define Build/Compile 
    $(MAKE) -C $(PKG_BUILD_DIR) $(TARGET_CONFIGURE_OPTS) 
endef 

define Package/amldmonitor/install 
    $(INSTALL_DIR) $(1)/bin 
    $(INSTALL_BIN) $(PKG_BUILD_DIR)/amldmonitor $(1)/bin/ 
endef 

$(eval $(call BuildPackage,amldmonitor)) 

這裏是Makefile中爲我的項目源文件:

LDFLAGS=-pthread 
CFLAGS=-g -Wall 
all: amldmonitor 

amldmonitor:amldmonitor.o 
    $(CC) amldmonitor.o -o amldmonitor $(LDFLAGS) 

amldmonitor.o: amldmonitor.c 
    $(CC) $(CFLAGS) -c amldmonitor.c 

clean: 
    rm *.o amldmonitor 
+0

您是否嘗試過使用CMake的,而不是Makefile文件?到目前爲止,我對依賴libpthread,libcurl等的自己的程序沒有任何問題。 – yegorich

+0

不,我還沒有其他的軟件包,例如依賴於libopenssl的軟件,它可以正常工作,但這只是給我帶來麻煩。 – TomSelleck

回答

6

this線程,用戶在我編譯輸出注意到,它提到:

make[3]: Nothing to be done for `all'. 

評論:

Is your src/ directory actually clean? I suspect it contains an "amldmonitor" executable already which was built for your host. Make sure your src/ directory does not contain any junk like *.o files or final executables.

檢查我的包源文件夾後,它確實包含.o文件和可執行文件。

刪除此解決了我遇到的問題!

0

的OpenWRT不支持libc,它很大,以適應。它使用uClibc和EGLIBC,因爲它們更小。 我不確定你是如何第一次編譯它的,但我估計它沒有正確的工作。

您需要更改Makefile以使其引用其中一個libc,但您也可以完全沒有依賴關係地嘗試它,並且它也可以工作。

檢查出「feeds/packages」目錄,並在那裏使用libc研究其他Makefiles,比如有「DEPENDS + = + USE_UCLIBC:librpc」的「feeds/packages/utils/owfs/Makefile」。

祝你好運。

+0

刪除依賴不起作用,還嘗試了owfs中的所有依賴關係,仍然沒有歡樂 – TomSelleck

+0

針對所有輸出編譯V = 99的V = s,並查看它特別尋找哪個函數或libc的一部分。另外,不要只看owfs,還有很多其他需要libc和變體的軟件包。 – nemik

+0

剛找到解決方案,在我的答案上面貼出 – TomSelleck

1

我通過包括uClibc的固定++這個問題。MK

這對你的包Makefile中添加只是包括package.mk線之上。

包括$(INCLUDE_DIR)/ uClibc中++ MK

我還添加了這包定義:

依賴:= +的libc

+0

如果你的代碼是用C++編寫的,這可能會起作用。我在C中,包括「$(INCLUDE_DIR)/cmake.mk」爲我解決了它。謝謝你的想法,儘管我的upvote :) –