Modify

Opened 9 years ago

Closed 9 years ago

Last modified 9 years ago

#5022 closed defect (fixed)

libopkg install fails (libtool related)

Reported by: anonymous Owned by: developers
Priority: high Milestone: Bugs Paradise
Component: packages Version: Trunk
Keywords: opkg libtool Cc:

Description

Hi,

I'm experiencing build problems with the latest git-master. The cause leading to this error seems to be related to an empty variable within the libtool script (global_symbol_pipe)

make[6]: Entering directory `/mnt/storage/openwrt/openwrt-master/build_dir/target-mipsel_uClibc-0.9.29/opkg-4564/libopkg'
/bin/sh ../libtool --tag=CC --mode=link mipsel-openwrt-linux-uclibc-gcc -Wall -Werror -DHOST_CPU_STR=\"mipsel\" -DBUILD_CPU=x86_64 -DLIBDIR=\"/usr/lib\" -DOPKGLIBDIR=\"/usr/lib\" -DDATADIR=\"/usr/share\" -I..    -Os -pipe -mips32 -
mtune=mips32 -funit-at-a-time -fhonour-copts -fpic  -I/mnt/storage/openwrt/openwrt-master/staging_dir/target-mipsel_uClibc-0.9.29/usr/include 
-I/mnt/storage/openwrt/openwrt-master/staging_dir/target-mipsel_uClibc-0.9.29/include  -L/mnt/storage/openwrt/openwrt-master/staging_dir/toolchain-mipsel_gcc-4.1.2_uClibc-0.9.29/usr/lib
 -L/mnt/storage/openwrt/openwrt-master/staging_dir/toolchain-mipsel_gcc-4.1.2_uClibc-0.9.29/lib -L/mnt/storage/openwrt/openwrt-master/staging_dir/target-mipsel_uClibc-0.9.29/usr/lib 
-L/mnt/storage/openwrt/openwrt-master/staging_dir/target-mipsel_uClibc-0.9.29/lib -L/mnt/storage/openwrt/openwrt-master/staging_dir/toolchain-mipsel_gcc-4.1.2_uClibc-0.9.29/usr/lib
 -L/mnt/storage/openwrt/openwrt-master/staging_dir/toolchain-mipsel_gcc-4.1.2_uClibc-0.9.29/lib -L/mnt/storage/openwrt/openwrt-master/staging_dir/target-mipsel_uClibc-0.9.29/usr/lib 
-L/mnt/storage/openwrt/openwrt-master/staging_dir/target-mipsel_uClibc-0.9.29/lib -Wl,-rpath-link,/mnt/storage/openwrt/openwrt-master/staging_dir/target-mipsel_uClibc-0.9.29/usr/lib 
-o libopkg.la -rpath /usr/lib -export-symbols-regex "^opkg_.*" args.lo libopkg.lo user.lo opkg_state.lo opkg.lo opkg_cmd.lo opkg_configure.lo opkg_download.lo opkg_install.lo opkg_upgrade.lo 
opkg_remove.lo opkg_conf.lo opkg_utils.lo pkg.lo pkg_depends.lo pkg_extract.lo hash_table.lo pkg_hash.lo pkg_parse.lo pkg_vec.lo file_util.lo opkg_message.lo md5.lo sprintf_alloc.lo str_util.lo
 xregex.lo xsystem.lo conffile.lo conffile_list.lo nv_pair.lo nv_pair_list.lo pkg_dest.lo pkg_dest_list.lo pkg_src.lo pkg_src_list.lo str_list.lo void_list.lo ../libbb/libbb.la   
generating symbol list for `libopkg.la'
mipsel-openwrt-linux-uclibc-nm  .libs/args.o
 .libs/libopkg.o .libs/user.o .libs/opkg_state.o .libs/opkg.o .libs/opkg_cmd.o .libs/opkg_configure.o .libs/opkg_download.o .libs/opkg_install.o .libs/opkg_upgrade.o .libs/opkg_remove.o 
.libs/opkg_conf.o .libs/opkg_utils.o .libs/pkg.o .libs/pkg_depends.o .libs/pkg_extract.o 
.libs/hash_table.o .libs/pkg_hash.o .libs/pkg_parse.o .libs/pkg_vec.o .libs/file_util.o .libs/opkg_message.o .libs/md5.o .libs/sprintf_alloc.o .libs/str_util.o .libs/xregex.o .libs/xsystem.o
 .libs/conffile.o .libs/conffile_list.o .libs/nv_pair.o .libs/nv_pair_list.o .libs/pkg_dest.o .libs/pkg_dest_list.o .libs/pkg_src.o .libs/pkg_src_list.o .libs/str_list.o .libs/void_list.o 
 ../libbb/.libs/libbb.a |  | /mnt/storage/openwrt/openwrt-master/staging_dir/host/bin/sed 's/.* //' | sort | uniq > .libs/libopkg.exp
../libtool: eval: line 4350: syntax error near unexpected token `|'
../libtool: eval: line 4350: `mipsel-openwrt-linux-uclibc-nm  .libs/args.o .libs/libopkg.o .libs/user.o .libs/opkg_state.o
 .libs/opkg.o .libs/opkg_cmd.o .libs/opkg_configure.o .libs/opkg_download.o .libs/opkg_install.o .libs/opkg_upgrade.o .libs/opkg_remove.o .libs/opkg_conf.o .libs/opkg_utils.o
 .libs/pkg.o .libs/pkg_depends.o .libs/pkg_extract.o .libs/hash_table.o .libs/pkg_hash.o .libs/pkg_parse.o .libs/pkg_vec.o 
.libs/file_util.o .libs/opkg_message.o .libs/md5.o .libs/sprintf_alloc.o .libs/str_util.o .libs/xregex.o .libs/xsystem.o .libs/conffile.o .libs/conffile_list.o .libs/nv_pair.o .libs/nv_pair_list.o 
.libs/pkg_dest.o .libs/pkg_dest_list.o .libs/pkg_src.o .libs/pkg_src_list.o .libs/str_list.o .libs/void_list.o  ../libbb/.libs/libbb.a |  | /mnt/storage/openwrt/openwrt-master/staging_dir/host/bin/sed 's/.* //' | 
sort | uniq > .libs/libopkg.exp'}}}

Notice the double pipe symbols, the line within the libtool script seems to insert something within the pipe symbols but this variable is not set, I am not an expert with the libtool stuff, so hopefully some of the developers might find a quick fix.

Greetings 
Lennart

Attachments (0)

Change History (10)

comment:1 Changed 9 years ago by anonymous

Hi There,

I fixed this myself since the missing variables were present in the 8.09 libtool script, so I just copied them from there and it seemed to work.

I cannot provide any further Information since I don't know which change in the master altered the libtool. Furthermore I don't think that this fix will work when doing a build from scratch since the libtool itself seems to be build as well and the change I made was in the toolchain file.

If anyone can fix this directly I would be very happy *g*,

Greetings
Lennart

comment:2 Changed 9 years ago by anonymous

Can you state what are the missing variables? I've hit this problem as well.

comment:3 Changed 9 years ago by anonymous

i think it was enough to copy over the values for global_symbol_pipe and the one following that (in libtool). I just did a diff on both versions of the libtool and found the differing places. Hope this helps

Greetings

comment:4 Changed 9 years ago by anonymous

That did it. Thanks!

comment:5 Changed 9 years ago by florian

Do you have a patch for this ?

comment:6 Changed 9 years ago by acoul <alex at ozo.com>

I just bumped into this on r16200 x86, gcc-4.4.0, uClibc-0.9.30.1

make[5]: Entering directory `/develop/openwrt/rb532/trunk/build_dir/target-mipsel_uClibc-0.9.30.1/opkg-4993/libopkg'
make  all-am
make[6]: Entering directory `/develop/openwrt/rb532/trunk/build_dir/target-mipsel_uClibc-0.9.30.1/opkg-4993/libopkg'
/bin/sh ../libtool --tag=CC --mode=link mipsel-openwrt-linux-uclibc-gcc -Wall -Werror -DHOST_CPU_STR=\"mipsel\" -DBUILD_CPU=i686 -DLIBDIR=\"/usr/lib\" -DOPKGLIBDIR=\"/usr/lib\" -DDATADIR=\"/usr/share\" -I..    -Os -pipe -mips32 -mtune=mips32 -funit-at-a-time -fhonour-copts -fpic -Wno-array-bounds -I/develop/openwrt/rb532/trunk/staging_dir/target-mipsel_uClibc-0.9.30.1/usr/include -I/develop/openwrt/rb532/trunk/staging_dir/target-mipsel_uClibc-0.9.30.1/include  -L/develop/openwrt/rb532/trunk/staging_dir/toolchain-mipsel_gcc-4.4.0_uClibc-0.9.30.1/usr/lib -L/develop/openwrt/rb532/trunk/staging_dir/toolchain-mipsel_gcc-4.4.0_uClibc-0.9.30.1/lib -L/develop/openwrt/rb532/trunk/staging_dir/target-mipsel_uClibc-0.9.30.1/usr/lib -L/develop/openwrt/rb532/trunk/staging_dir/target-mipsel_uClibc-0.9.30.1/lib -L/develop/openwrt/rb532/trunk/staging_dir/toolchain-mipsel_gcc-4.4.0_uClibc-0.9.30.1/usr/lib -L/develop/openwrt/rb532/trunk/staging_dir/toolchain-mipsel_gcc-4.4.0_uClibc-0.9.30.1/lib -L/develop/openwrt/rb532/trunk/staging_dir/target-mipsel_uClibc-0.9.30.1/usr/lib -L/develop/openwrt/rb532/trunk/staging_dir/target-mipsel_uClibc-0.9.30.1/lib -Wl,-rpath-link,/develop/openwrt/rb532/trunk/staging_dir/target-mipsel_uClibc-0.9.30.1/usr/lib -o libopkg.la -rpath /usr/lib -export-symbols-regex "^opkg_.*" args.lo libopkg.lo user.lo opkg_state.lo opkg.lo opkg_cmd.lo opkg_configure.lo opkg_download.lo opkg_install.lo opkg_upgrade.lo opkg_remove.lo opkg_conf.lo opkg_utils.lo pkg.lo pkg_depends.lo pkg_extract.lo hash_table.lo pkg_hash.lo pkg_parse.lo pkg_vec.lo file_util.lo opkg_message.lo md5.lo sprintf_alloc.lo str_util.lo xregex.lo xsystem.lo conffile.lo conffile_list.lo nv_pair.lo nv_pair_list.lo pkg_dest.lo pkg_dest_list.lo pkg_src.lo pkg_src_list.lo str_list.lo void_list.lo active_list.lo ../libbb/libbb.la   
generating symbol list for `libopkg.la'
mipsel-openwrt-linux-uclibc-nm  .libs/args.o .libs/libopkg.o .libs/user.o .libs/opkg_state.o .libs/opkg.o .libs/opkg_cmd.o .libs/opkg_configure.o .libs/opkg_download.o .libs/opkg_install.o .libs/opkg_upgrade.o .libs/opkg_remove.o .libs/opkg_conf.o .libs/opkg_utils.o .libs/pkg.o .libs/pkg_depends.o .libs/pkg_extract.o .libs/hash_table.o .libs/pkg_hash.o .libs/pkg_parse.o .libs/pkg_vec.o .libs/file_util.o .libs/opkg_message.o .libs/md5.o .libs/sprintf_alloc.o .libs/str_util.o .libs/xregex.o .libs/xsystem.o .libs/conffile.o .libs/conffile_list.o .libs/nv_pair.o .libs/nv_pair_list.o .libs/pkg_dest.o .libs/pkg_dest_list.o .libs/pkg_src.o .libs/pkg_src_list.o .libs/str_list.o .libs/void_list.o .libs/active_list.o  ../libbb/.libs/libbb.a |  | /develop/openwrt/rb532/trunk/staging_dir/host/bin/sed 's/.* //' | sort | uniq > .libs/libopkg.exp
../libtool: eval: line 4344: syntax error near unexpected token `|'
../libtool: eval: line 4344: `mipsel-openwrt-linux-uclibc-nm  .libs/args.o .libs/libopkg.o .libs/user.o .libs/opkg_state.o .libs/opkg.o .libs/opkg_cmd.o .libs/opkg_configure.o .libs/opkg_download.o .libs/opkg_install.o .libs/opkg_upgrade.o .libs/opkg_remove.o .libs/opkg_conf.o .libs/opkg_utils.o .libs/pkg.o .libs/pkg_depends.o .libs/pkg_extract.o .libs/hash_table.o .libs/pkg_hash.o .libs/pkg_parse.o .libs/pkg_vec.o .libs/file_util.o .libs/opkg_message.o .libs/md5.o .libs/sprintf_alloc.o .libs/str_util.o .libs/xregex.o .libs/xsystem.o .libs/conffile.o .libs/conffile_list.o .libs/nv_pair.o .libs/nv_pair_list.o .libs/pkg_dest.o .libs/pkg_dest_list.o .libs/pkg_src.o .libs/pkg_src_list.o .libs/str_list.o .libs/void_list.o .libs/active_list.o  ../libbb/.libs/libbb.a |  | /develop/openwrt/rb532/trunk/staging_dir/host/bin/sed 's/.* //' | sort | uniq > .libs/libopkg.exp'
make[6]: *** [libopkg.la] Error 1
make[6]: Leaving directory `/develop/openwrt/rb532/trunk/build_dir/target-mipsel_uClibc-0.9.30.1/opkg-4993/libopkg'
make[5]: *** [all] Error 2
make[5]: Leaving directory `/develop/openwrt/rb532/trunk/build_dir/target-mipsel_uClibc-0.9.30.1/opkg-4993/libopkg'
make[4]: *** [all-recursive] Error 1
make[4]: Leaving directory `/develop/openwrt/rb532/trunk/build_dir/target-mipsel_uClibc-0.9.30.1/opkg-4993'
make[3]: *** [/develop/openwrt/rb532/trunk/build_dir/target-mipsel_uClibc-0.9.30.1/opkg-4993/.built] Error 2
make[3]: Leaving directory `/develop/openwrt/rb532/trunk/package/opkg'
make[2]: *** [package/opkg/compile] Error 2
make[2]: Leaving directory `/develop/openwrt/rb532/trunk'
make[1]: *** [/develop/openwrt/rb532/trunk/staging_dir/target-mipsel_uClibc-0.9.30.1/stamp/.package_compile] Error 2
make[1]: Leaving directory `/develop/openwrt/rb532/trunk'

comment:7 Changed 9 years ago by acoul <alex at ozo.com>

commenting out the "PKG_FIXUP = libtool" line on the package/opkg/Makefile deals with this issue. this is not a fix, just a workaround tested on x86 & rb532

comment:8 Changed 9 years ago by lars

  • Resolution set to fixed
  • Status changed from new to closed

Fixed with r16212

comment:9 Changed 9 years ago by acoul <alex at ozo.com>

r16305 reverts r16212 so this ticket should reopen. as #16331 I get a new error:

generating symbol list for `libopkg.la'
mips-openwrt-linux-uclibc-nm  .libs/args.o .libs/libopkg.o .libs/user.o .libs/opkg_state.o .libs/opkg.o .libs/opkg_cmd.o .libs/opkg_configure.o .libs/opkg_download.o .libs/opkg_install.o .libs/opkg_upgrade.o .libs/opkg_remove.o .libs/opkg_conf.o .libs/opkg_utils.o .libs/pkg.o .libs/pkg_depends.o .libs/pkg_extract.o .libs/hash_table.o .libs/pkg_hash.o .libs/pkg_parse.o .libs/pkg_vec.o .libs/file_util.o .libs/opkg_message.o .libs/md5.o .libs/sprintf_alloc.o .libs/str_util.o .libs/xregex.o .libs/xsystem.o .libs/conffile.o .libs/conffile_list.o .libs/nv_pair.o .libs/nv_pair_list.o .libs/pkg_dest.o .libs/pkg_dest_list.o .libs/pkg_src.o .libs/pkg_src_list.o .libs/str_list.o .libs/void_list.o .libs/active_list.o  ../libbb/.libs/libbb.a |  | /extra/openwrt/ar71xx/trunk/staging_dir/host/bin/sed 's/.* //' | sort | uniq > .libs/libopkg.exp
../libtool: eval: line 4350: syntax error near unexpected token `|'
../libtool: eval: line 4350: `mips-openwrt-linux-uclibc-nm  .libs/args.o .libs/libopkg.o .libs/user.o .libs/opkg_state.o .libs/opkg.o .libs/opkg_cmd.o .libs/opkg_configure.o .libs/opkg_download.o .libs/opkg_install.o .libs/opkg_upgrade.o .libs/opkg_remove.o .libs/opkg_conf.o .libs/opkg_utils.o .libs/pkg.o .libs/pkg_depends.o .libs/pkg_extract.o .libs/hash_table.o .libs/pkg_hash.o .libs/pkg_parse.o .libs/pkg_vec.o .libs/file_util.o .libs/opkg_message.o .libs/md5.o .libs/sprintf_alloc.o .libs/str_util.o .libs/xregex.o .libs/xsystem.o .libs/conffile.o .libs/conffile_list.o .libs/nv_pair.o .libs/nv_pair_list.o .libs/pkg_dest.o .libs/pkg_dest_list.o .libs/pkg_src.o .libs/pkg_src_list.o .libs/str_list.o .libs/void_list.o .libs/active_list.o  ../libbb/.libs/libbb.a |  | /extra/openwrt/ar71xx/trunk/staging_dir/host/bin/sed 's/.* //' | sort | uniq > .libs/libopkg.exp'
make[5]: *** [libopkg.la] Error 1
make[5]: Leaving directory `/extra/openwrt/ar71xx/trunk/build_dir/target-mips_uClibc-0.9.30.1/opkg-4993/libopkg'
make[4]: *** [all] Error 2
make[4]: Leaving directory `/extra/openwrt/ar71xx/trunk/build_dir/target-mips_uClibc-0.9.30.1/opkg-4993/libopkg'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/extra/openwrt/ar71xx/trunk/build_dir/target-mips_uClibc-0.9.30.1/opkg-4993'
make[2]: *** [/extra/openwrt/ar71xx/trunk/build_dir/target-mips_uClibc-0.9.30.1/opkg-4993/.built] Error 2
make[2]: Leaving directory `/extra/openwrt/ar71xx/trunk/package/opkg'
make[1]: *** [package/opkg/compile] Error 2
make[1]: Leaving directory `/extra/openwrt/ar71xx/trunk'
make: *** [package/opkg/compile] Error 2

config.log is here

comment:10 Changed 9 years ago by acoul <alex at ozo.com>

BTW, this looks like a dublicate of #4389

Add Comment

Modify Ticket

Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.