OpenWrt Build Fails

Hi All,

I was trying to build latest openwrt yun firmware image tag 1.5.0 on Debian Wheezy 32 bit with mac pro as a host for my virtual box and it fails at compiling ruby. It complains that “Package ruby-core is missing dependencies for the following libraries:
librt.so.0
libruby.so.1.9”.

Also find nohup.out file and config.log files from ruby package attached. I am using GitHub - arduino/openwrt-yun: A custom version of OpenWrt, targeted to the Arduino Yún and used https to download source code. I also tried same on debian wheezy 64bit but same error. find . -name to those above libraries shows at the correct path ruby is looking for as I can see it in the config.log under LDFLAGS in the ruby package. I am not sure why ruby does not see them.

Please help as I already wasted plenty of hours debuggin this. Meanwhile if someone can point me to the working version of the openwrt source code for the yun for the build, I would be really grateful.

Best Regards,
Dipen Patel

build_errors_nohup_and_change_log.zip (226 KB)

pateldipen1984: ::::SNIP:::: Please help as I already wasted plenty of hours debuggin this. Meanwhile if someone can point me to the working version of the openwrt source code for the yun for the build, I would be really grateful. ::::SNIP::::

@pateldipen1984, I'm not sure why you are compiling the source. You can can get the latest stable Yun/OpenWrt OS, if you upgrade.

AT THE TOP OF THE FORUM you'll see: Please upgrade your Yún - latest is 1.5.3. Follow the link and UPGRADE. After that you can add the latest Ruby packages available.

But first you need to expand your storage space. Here is the tutorial: How to expand the Yún disk space

Next, follow this tutorial and upgrade your Yun Upgrading the OpenWrt-Yun image on the Yún

Then review this List of software packages so you can use the Package Manager to download what you need.

If you get stuck, come back and ask for help Jesse

I am using https://github.com/arduino/openwrt-yun and used https to download source code.

I use

git clone https://github.com/arduino/openwrt-yun.git

I also tried same on debian wheezy 64bit but same error. find .

YunOS is 32 bits, stay with debian wheezy 32bit for less headache.

It complains that "Package ruby-core is missing dependencies for the following libraries: librt.so.0 libruby.so.1.9".

Post output of

find . -name librt.so.0
find . -name libruby.so.1.9

You could compile ruby alone:

make package/feeds/packages/ruby/clean  V=s
make package/feeds/packages/ruby/compile  V=s

Post output of :

make package/feeds/packages/ruby/compile  V=s

Hi Sonnyyu,

Thanks for the reply. Below are my outputs for find and make commands. Make compile commands does not give much while clean command wiped out my build_dir target folder not sure why though.

1) find . -name librt.so*

./staging_dir/target-mips_r2_uClibc-0.9.33.2/root-ar71xx/lib/librt.so.0 ./staging_dir/toolchain-mips_r2_gcc-4.6-linaro_uClibc-0.9.33.2/lib/librt.so.0 ./staging_dir/toolchain-mips_r2_gcc-4.6-linaro_uClibc-0.9.33.2/lib/librt.so ./build_dir/target-mips_r2_uClibc-0.9.33.2/yun-gcc-4.6.2/ipkg-ar71xx/yun-gcc/usr/lib/librt.so.0 ./build_dir/target-mips_r2_uClibc-0.9.33.2/yun-gcc-4.6.2/ipkg-ar71xx/yun-gcc/usr/lib/librt.so ./build_dir/target-mips_r2_uClibc-0.9.33.2/toolchain/ipkg-ar71xx/librt/lib/librt.so.0 ./build_dir/toolchain-mips_r2_gcc-4.6-linaro_uClibc-0.9.33.2/uClibc-0.9.33.2/lib/librt.so.0 ./build_dir/toolchain-mips_r2_gcc-4.6-linaro_uClibc-0.9.33.2/uClibc-0.9.33.2/lib/librt.so

2) find . -name libruby.so*

./build_dir/target-mips_r2_uClibc-0.9.33.2/ruby-1.9.3-p429/ipkg-ar71xx/libruby/usr/lib/libruby.so.1.9 ./build_dir/target-mips_r2_uClibc-0.9.33.2/ruby-1.9.3-p429/ipkg-ar71xx/libruby/usr/lib/libruby.so.1.9.1 ./build_dir/target-mips_r2_uClibc-0.9.33.2/ruby-1.9.3-p429/ipkg-install/usr/lib/libruby.so.1.9 ./build_dir/target-mips_r2_uClibc-0.9.33.2/ruby-1.9.3-p429/ipkg-install/usr/lib/libruby.so.1.9.1 ./build_dir/target-mips_r2_uClibc-0.9.33.2/ruby-1.9.3-p429/ipkg-install/usr/lib/libruby.so

3) make package/feeds/packages/ruby compile V=s

Checking 'openssl'... ok. Checking 'rsync'... ok. Checking 'xgettext'... ok. Checking '/usr/include/openssl/ssl.h'... ok. Checking 'xsltproc'... ok. make[1]: Entering directory /home/dipen/openwrt-yun' make[1]: *** No rule to make targetcompile'. Stop. make[1]: Leaving directory `/home/dipen/openwrt-yun' make: *** [compile] Error 2

pateldipen1984: ::::SNIP::::

3) make package/feeds/packages/ruby compile V=s

::::SNIP::::

@pateldipen1984,

You copy wrong, should be

make package/feeds/packages[b]/ruby/compile[/b] V=s

SonnyYu will be online in a few hours.

Good Luck Jesse

... Make compile commands does not give much while clean command wiped out my build_dir target folder not sure why though. ...

Correct way to clean:

make package/feeds/packages/ruby/clean  V=s

Wrong way to clean:

make package/feeds/packages/ruby clean  V=s

You need to start over again.

Hi,

My bad. Please find output of the make package/feeds/packages/ruby/complie V=s attached.

nohup.zip (11.8 KB)

Start over:

MAKE_JOBS=5 nice -n 10 make -j $MAKE_JOBS V=s

MAKE_JOBS= core+1

I use 8 cores box, MAKE_JOBS=9.

Hi Sonnyyu,

Thanks for the reply. I just issued make command with MAKE_JOBS=5 and will report here if it still fails. However I was wondering why does number of MAKE_JOBS affect the outcome of the build process especially for failing compilations like in my case?

Thanks, Best Regards, Dipen Patel

Hi All,

I think below link solves the issue. I can successfully compile that now.

https://github.com/arduino/openwrt-yun/issues/34#issuecomment-74551385

Thanks, Best Regards, Dipen Patel