Anonymous | Login | Signup for a new account | 11-10-2008 12:55 PST |
Main | My View | View Issues | Change Log | Docs |
Viewing Issue Simple Details [ Jump to Notes ] | [ View Advanced ] [ Issue History ] [ Print ] | |||||||||||
ID | Category | Severity | Reproducibility | Date Submitted | Last Update | |||||||
0005214 | [buildroot] Other | major | always | 10-02-08 22:11 | 10-05-08 21:38 | |||||||
Reporter | mjd | View Status | public | |||||||||
Assigned To | buildroot | |||||||||||
Priority | normal | Resolution | open | |||||||||
Status | assigned | Product Version | ||||||||||
Summary | 0005214: make uclibc-config fails, as sed does not exist. | |||||||||||
Description |
I am getting the following failure from a fresh checkout of buildroot: <yada yada> /home/mjd/wrk/buildroot-sym-1/toolchain_build_arm/bin/sed -i -e 's,^CROSS_COMPILER_PREFIX=.*,CROSS_COMPILER_PREFIX="/home/mjd/wrk/buildroot-sym-1/build_arm/staging_dir/usr/bin/arm-linux-uclibc-",g' \ -e 's,# TARGET_arm is not set,TARGET_arm=y,g' \ -e 's,^TARGET_ARCH=".*",TARGET_ARCH=\"arm\",g' \ -e 's,^KERNEL_SOURCE=.*,KERNEL_SOURCE=\"/home/mjd/wrk/buildroot-sym-1/toolchain_build_arm/linux\",g' \ -e 's,^KERNEL_HEADERS=.*,KERNEL_HEADERS=\"/home/mjd/wrk/buildroot-sym-1/toolchain_build_arm/linux/include\",g' \ -e 's,^RUNTIME_PREFIX=.*,RUNTIME_PREFIX=\"/\",g' \ -e 's,^DEVEL_PREFIX=.*,DEVEL_PREFIX=\"/usr/\",g' \ -e 's,^SHARED_LIB_LOADER_PREFIX=.*,SHARED_LIB_LOADER_PREFIX=\"/lib\",g' \ /home/mjd/wrk/buildroot-sym-1/toolchain_build_arm/uClibc-0.9.29/.oldconfig make: /home/mjd/wrk/buildroot-sym-1/toolchain_build_arm/bin/sed: Command not found How to reproduce: tar -xjf ../dl/buildroot-svn-snapshot.tar.bz2 cd buildroot cp target/device/Atmel/at91sam9260dfc/at91sam9260dfc_defconfig .config make menuconfig # Immediately exit and save without changing any values make uclibc-config |
|||||||||||
Additional Information |
On my machine, uclibc-config depends on /home/mjd/wrk/buildroot-sym-1/toolchain_build_arm/uClibc-0.9.29/.oldconfig The rule for /home/mjd/wrk/buildroot-sym-1/toolchain_build_arm/uClibc-0.9.29/.oldconfig in toolchain/uClibc/uclibc.mk uses sed from $(SED): $(UCLIBC_DIR)/.oldconfig: $(UCLIBC_DIR)/.patched $(UCLIBC_CONFIG_FILE) cp -f $(UCLIBC_CONFIG_FILE) $(UCLIBC_DIR)/.oldconfig $(SED) 's,^CROSS_COMPILER_PREFIX=.*,CROSS_COMPILER_PREFIX="$(TARGET_CROSS)",g' \ -e 's,# TARGET_$(UCLIBC_TARGET_ARCH) is not set,TARGET_$(UCLIBC_TARGET_ARCH)=y,g' \ -e 's,^TARGET_ARCH=".*",TARGET_ARCH=\"$(UCLIBC_TARGET_ARCH)\",g' \ -e 's,^KERNEL_SOURCE=.*,KERNEL_SOURCE=\"$(LINUX_HEADERS_DIR)\",g' \ -e 's,^KERNEL_HEADERS=.*,KERNEL_HEADERS=\"$(LINUX_HEADERS_DIR)/include\",g' \ -e 's,^RUNTIME_PREFIX=.*,RUNTIME_PREFIX=\"/\",g' \ -e 's,^DEVEL_PREFIX=.*,DEVEL_PREFIX=\"/usr/\",g' \ -e 's,^SHARED_LIB_LOADER_PREFIX=.*,SHARED_LIB_LOADER_PREFIX=\"/lib\",g' \ $(UCLIBC_DIR)/.oldconfig The problem is that there is nothing to force the generation of $(SED) before this rule is run. I tried adding $(SED) to the list of prerequisites for $(UCLIBC_DIR)/.oldconfig, but it doesn't work, because SED is set in packages/sed/sed.mk, but that file is not read in until *after* uclibc.mk, so $(SED) is empty at the time that the prerequisite list is parsed. |
|||||||||||
Attached Files | uclibc-sed-1.diff [^] (737 bytes) 10-02-08 22:59 | |||||||||||
|
Copyright © 2000 - 2006 Mantis Group |