FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Gentoo > Gentoo Alt

 
 
LinkBack Thread Tools
 
Old 08-31-2010, 01:40 PM
Al
 
Default zlib: empty SHAREDLIBV

When runnig "env FEATURES="-collision-protect" emerge --oneshot
portage" intallation of zlib breaks with this error:

cp /home/prefix/gentoo/var/tmp/portage/sys-libs/zlib-1.2.5-r2/image//home/prefix/gentoo/usr/lib
cp: missing destination file operand after
`/home/prefix/gentoo/var/tmp/portage/sys-libs/zlib-1.2.5-r2/image//home/prefix/gentoo/usr/lib'

In fact not the destionation is missing but the source. Extracts from
Makefile:

[...]

STATICLIB=libz.a
SHAREDLIB=
SHAREDLIBV=
SHAREDLIBM=
LIBS=$(STATICLIB) $(SHAREDLIBV)

[...]

install-libs: $(LIBS)
[...]
cp $(STATICLIB) $(DESTDIR)$(libdir)
cp $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir)

As you see SHAREDLIBV and some other libs are simply empty resulting
in an invalid copy call. Either there is something missing in my
environmet variables or the copy call throws an error on Cygwin while
it is ignored in linux. Third option: SHAREDLIBV is empty because of
an a missing $PREFIX.

Have you seen this failure before?

Al
 
Old 08-31-2010, 01:44 PM
Fabian Groffen
 
Default zlib: empty SHAREDLIBV

On 31-08-2010 15:40:01 +0200, Al wrote:
> install-libs: $(LIBS)
> [...]
> cp $(STATICLIB) $(DESTDIR)$(libdir)
> cp $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir)
>
> As you see SHAREDLIBV and some other libs are simply empty resulting
> in an invalid copy call. Either there is something missing in my
> environmet variables or the copy call throws an error on Cygwin while
> it is ignored in linux. Third option: SHAREDLIBV is empty because of
> an a missing $PREFIX.
>
> Have you seen this failure before?

No, but zlib is really very custom made build stuff, so I'm not
surprised if it need some help from the ebuild to actually do something
useful.


--
Fabian Groffen
Gentoo on a different level
 
Old 08-31-2010, 01:46 PM
Al
 
Default zlib: empty SHAREDLIBV

>
> No, but zlib is really very custom made build stuff, so I'm not
> surprised if it need some help from the ebuild to actually do something
> useful.
>
>

OK, then I switch to linux, to find out how it should behave.

Al
 
Old 08-31-2010, 11:12 PM
Al
 
Default zlib: empty SHAREDLIBV

>>
>> No, but zlib is really very custom made build stuff, so I'm not
>> surprised if it need some help from the ebuild to actually do something
>> useful.
>
> OK, then I switch to linux, to find out how it should behave.

Seems like a bug in configure and/or Makefile.in in combination with a
misscofiguration of mine:

initially $shared is set to 1. (line 56: shared=1). Also the
libraries are set. As long as $shared this is not ZERO, the copy line
works.

The copy line is set in Makefile.in UNCONDITIONALLY. That is the bug I suspect.

If $shared is set to 1 the libraries are emptied and the copy line
breaks. This happens by this condition near line 240:

<snip>
elif test -z "$old_cc" -a -z "$old_cflags"; then
echo No shared library support.
shared=0;
</snip>

The origin of this variables is line 60 at the top:

old_cc="$CC"
old_cflags="$CFLAGS"

Bottomline: configure only works with shared libraries.

What do you suggest?

Fixing Makefile.in?

Setting CC or CFLAGS? Which value? Which location?

Al
 
Old 09-01-2010, 09:00 AM
Al
 
Default zlib: empty SHAREDLIBV

>
> What do you suggest?
>
> Fixing Makefile.in?
>
> Setting CC or CFLAGS? *Which value? Which location?
>

OK, a stupid question doesn't deserve an answer. I lost CFLAGS since
the initial bootstrapping.

However setting it, again, doesn't resolve it directly. I have to do
some further debugging.

Al
 
Old 09-01-2010, 10:08 AM
Al
 
Default zlib: empty SHAREDLIBV

Now the solution for the archives:

Symptom: Installation fails

cp /home/prefix/gentoo/var/tmp/portage/sys-libs/zlib-1.2.5-r2/image//home/prefix/gentoo/usr/lib
cp: missing destination file operand after
`/home/prefix/gentoo/var/tmp/portage/sys-libs/zlib-1.2.5-r2/image//home/prefix/gentoo/usr/lib'

Reason: "configure" line 123: No LDSHARED is set for Cygwin.

Workaround: Copy that line from linux.

LDSHARED=${LDSHARED-"$cc -shared
-Wl,-soname,libz.so.1,--version-script,zlib.map"}

Hope that works also with emerge. Seems I have to create a patch here.

Al
 

Thread Tools




All times are GMT. The time now is 02:30 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org