On 12/ 6/12 08:33 AM, Gabriele Bulfon wrote:
Thanks Tim, actually I tried this directly into the gmp.p5m, but I'm not
sure if I did it correctly.
Would you please show me the right syntax for it and where?

Sure, there's an example in the man page:

#
# Add runpath and bypass-generate attributes:
#
file NOHASH path=opt/python/foo/file.py mode=0644 group=sys owner=root \
  pkg.depend.bypass-generate=.*/test.py.* \
  pkg.depend.bypass-generate=.*/testmodule.so \
  pkg.depend.bypass-generate=.*/test.so \
  pkg.depend.bypass-generate=usr/lib/python2.6/vendor-packages/xdg/.* \
  pkg.depend.runpath=$PKGDEPEND_RUNPATH:/opt/python

So here, we're adding /opt/python to the runpath for pkgdepend - it's important to use $PKGDEPEND_RUNPATH if you want to also include the standard runpath.

        cheers,
                        tim



thanx so much!
Gabriele.



----------------------------------------------------------------------------------

Da: Tim Foster <[email protected]>
A: Gabriele Bulfon <[email protected]>
Cc: Danek Duvall <[email protected]> [email protected]
Data: 5 dicembre 2012 20.26.02 CET
Oggetto: Re: [pkg-discuss] pkgdepend help

    On 12/ 6/12 08:19 AM, Gabriele Bulfon wrote:
     > Thanks Danek! True :) it shows RUNPATH as /usr/lib :)
     > I'll check the output of gmake publish to see why it does not
    link with -R as you stated,
     > I placed LDFLAGS for it (using gcc), but maybe they're not taken
    somewhere ;)

    I should also mention that if you can't get -R sorted out, your
    manifest
    can use 'pkg.depend.runpath' attributes to specify the runpath that
    pkgdepend should use when resolving. There's more detail in the man
    page.

    cheers,
    tim



     > Thanks again!
     > Gabriele.
     >
    
----------------------------------------------------------------------------------
     > Da: Danek Duvall
     > A: Gabriele Bulfon
     > Cc: [email protected]
     > Data: 5 dicembre 2012 18.23.44 CET
     > Oggetto: Re: [pkg-discuss] pkgdepend help
     > Gabriele Bulfon wrote:
     > Hi,
     > I hope you can help me with an issue with pkgdepend.
     > I'm trying to work out our own userland for XStreamOS, similar to
    the way illumos-userland does,
     > derived from Oracle one.
     > Some of the components (at the moment I'm working on having
    gnump+gnupg+mpfr to be able to
     > package gcc45) have dependencies from the libgcc and libstdc++
    I'm using.
     > Because I still have no gcc45, I'm using gcc3 preinstalled inside
    /usr/sfw/*.
     > I could make build run fine, but then pkgdepend cannot resolve
    these dependencies:
     >
    
/sources/userlands/xstream-userland-gate/components/gnump/build/manifest-i386-gmp.depend
    has unresolved dependency '
     > depend type=require fmri=__TBD pkg.debug.depend.file=libstdc++.so.6 \
     > pkg.debug.depend.reason=usr/lib/libgmpxx.so.4.1.2 \
     > pkg.debug.depend.type=elf \
     > pkg.debug.depend.path=lib \
     > pkg.debug.depend.path=usr/lib'.
     > As far as I can see, the problem is because pkgdepend is looking
    for path usr/lib and not usr/sfw/lib,
     > so it can't find any package in my system delivering that path file.
     > Do you have any idea how pkgdepend decides these dependency paths?
     > Examining the built libgmpxx.so.4.1.2 with ldd, it correctly says
    it depends from /usr/sfw/lib files.
     > Searching for libstdc++.so.6 via pkg search on my build system,
    finds pkg:/system/library/gcc-3-runtime
     > delivering the correct file /usr/sfw/lib/libstdc++.so.6.
     > Why pkgdepend cannot see this?
     > Be careful with using ldd -- it does a full traversal of the
    objects brough
     > in by the ELF dependencies, and isn't as strict as pkgdepend,
    which looks
     > just at each individual object, one at a time.
     > So what it looks like is that yousr libgmpxx has a RUNPATH of
    /lib:/usr/lib
     > and so won't find libstdc++.so.6, even though something else
    might pull it
     > in for it. Check the output of
     > elfdump -d libgmpxx.so.4.1.2
     > and you'll see. You'll need to link libgmpxx with "-R /usr/sfw/lib".
     > If elfdump shows /usr/sfw/lib in the RUNPATH, then I'm not sure
    what could
     > be going on.
     > Danek
     >
     >
     >
     > _______________________________________________
     > pkg-discuss mailing list
     > [email protected]
     > http://mail.opensolaris.org/mailman/listinfo/pkg-discuss




_______________________________________________
pkg-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/pkg-discuss

Reply via email to