For discussion of Alpine Linux development and developer support

3 2

[alpine-devel] Issue with abuild on aports github build

Timothy Legge
Details
Message ID
<CALTFL3U9UHpHJFdqioxujDaY=q350UVAMUK1fw_=7mv_J62vqg@mail.gmail.com>
Sender timestamp
1553727901
DKIM signature
missing
Download raw message
Hi

I pushed a pull request https://github.com/alpinelinux/aports/pull/6851 for
perlmagic.  The build works on my development box if I use abuild from the
current https://github.com/alpinelinux/abuild master.

If I use the version of abuild included on 3.8.4 I it fails with

>>> ERROR: perlmagick*: Has /home/... in rpath
>>> ERROR: perlmagick*: prepare_package failed
>>> ERROR: perlmagick: all failed

This is the same error that shows up in github after the pull request runs:

continuous-integration/drone/pr — Build is failing
continuous-integration/travis-ci/pr — The Travis CI build failed

However the current git version of abuild works without any errors.  Any
thoughts?

Tim
Timothy Legge
Details
Message ID
<CALTFL3Wsh5aBXtgP75sVV2FxSt+g8T7yNvftc7B0-34cUDmAQw@mail.gmail.com>
In-Reply-To
<20190328120121.125e8882@ncopa-desktop.copa.dup.pw> (view parent)
Sender timestamp
1553773386
DKIM signature
missing
Download raw message
I do my builds from /home/tim

the built-in abuild results in the same error message on my system

however running the abuild from my local git clone for like

~/abuild/abuild -r

works fine.

Now that I think of it I should do a diff between my git version of abuild
and the  local system abuild.

Tim

On Thu, Mar 28, 2019, 8:01 AM Natanael Copa, <ncopa@alpinelinux.org> wrote:

> On Wed, 27 Mar 2019 20:05:01 -0300
> Timothy Legge <timlegge@gmail.com> wrote:
>
> > Hi
>
> Hi!
>
> >
> > I pushed a pull request https://github.com/alpinelinux/aports/pull/6851
> for
> > perlmagic.  The build works on my development box if I use abuild from
> the
> > current https://github.com/alpinelinux/abuild master.
> >
> > If I use the version of abuild included on 3.8.4 I it fails with
> >
> > >>> ERROR: perlmagick*: Has /home/... in rpath
>
> This is a check that there should be no references to /home in the
> binaries. Binaries should not be told to look for shared libs in any
> place under /home.
>
> What probably happened here is that build script will set RPATH to look
> for shared libs in the build tree, most likely to be able to run test
> suite or similar.
>
> My guess is that this does not happen on your local machine because you
> don't run your build from /home.
>
> You can find the offending binaries with: scanelf --recursive --rpath
> $pkgdir
>
> As a side note, I think we may need extend the test to also look
> for /tmp and /var/tmp or any place that users may have write access too.
>
> > >>> ERROR: perlmagick*: prepare_package failed
> > >>> ERROR: perlmagick: all failed
> >
> > This is the same error that shows up in github after the pull request
> runs:
> >
> > continuous-integration/drone/pr * Build is failing
> > continuous-integration/travis-ci/pr * The Travis CI build failed
> >
> > However the current git version of abuild works without any errors.  Any
> > thoughts?
> >
> > Tim
>
>
Natanael Copa
Details
Message ID
<20190328120121.125e8882@ncopa-desktop.copa.dup.pw>
In-Reply-To
<CALTFL3U9UHpHJFdqioxujDaY=q350UVAMUK1fw_=7mv_J62vqg@mail.gmail.com> (view parent)
Sender timestamp
1553770881
DKIM signature
missing
Download raw message
On Wed, 27 Mar 2019 20:05:01 -0300
Timothy Legge <timlegge@gmail.com> wrote:

> Hi

Hi!

> 
> I pushed a pull request https://github.com/alpinelinux/aports/pull/6851 for
> perlmagic.  The build works on my development box if I use abuild from the
> current https://github.com/alpinelinux/abuild master.
> 
> If I use the version of abuild included on 3.8.4 I it fails with
> 
> >>> ERROR: perlmagick*: Has /home/... in rpath

This is a check that there should be no references to /home in the
binaries. Binaries should not be told to look for shared libs in any
place under /home.

What probably happened here is that build script will set RPATH to look
for shared libs in the build tree, most likely to be able to run test
suite or similar.

My guess is that this does not happen on your local machine because you
don't run your build from /home.

You can find the offending binaries with: scanelf --recursive --rpath $pkgdir

As a side note, I think we may need extend the test to also look
for /tmp and /var/tmp or any place that users may have write access too.

> >>> ERROR: perlmagick*: prepare_package failed
> >>> ERROR: perlmagick: all failed  
> 
> This is the same error that shows up in github after the pull request runs:
> 
> continuous-integration/drone/pr * Build is failing
> continuous-integration/travis-ci/pr * The Travis CI build failed
> 
> However the current git version of abuild works without any errors.  Any
> thoughts?
> 
> Tim



---
Unsubscribe:  alpine-devel+unsubscribe@lists.alpinelinux.org
Help:         alpine-devel+help@lists.alpinelinux.org
---
Timothy Legge
Details
Message ID
<CALTFL3Uy+eCPPsHLvj08hb=F6e4gRdXvuE6zT=YQ=MsothkG5Q@mail.gmail.com>
In-Reply-To
<20190328120121.125e8882@ncopa-desktop.copa.dup.pw> (view parent)
Sender timestamp
1553787895
DKIM signature
missing
Download raw message
HI

Thanks.  Apparently I had commented out the rpath check in my git repo
version so that explained the reason.

However, my APKBUILD file does not have /home or ~/ so how I could be
getting the same results on the github checks is strange to me.

I guess it likely has to do with:

Warning: -L../MagickCore/.libs changed to
-L/home/tim/aports/testing/perlmagick/src/ImageMagick-7.0.8-35/PerlMagick/../MagickCore/.libs


localhost:~/aports/testing/perlmagick/pkg$ scanelf --recursive --rpath .
 TYPE   RPATH FILE
ET_DYN
/home/tim/aports/testing/perlmagick/src/ImageMagick-7.0.8-35/PerlMagick/quantum/../../MagickCore/.libs
./perlmagick/usr/lib/perl5/vendor_perl/auto/Image/Magick/Q16HDRI/Q16HDRI.so


On Thu, Mar 28, 2019 at 8:01 AM Natanael Copa <ncopa@alpinelinux.org> wrote:

> On Wed, 27 Mar 2019 20:05:01 -0300
> Timothy Legge <timlegge@gmail.com> wrote:
>
> > Hi
>
> Hi!
>
> >
> > I pushed a pull request https://github.com/alpinelinux/aports/pull/6851
> for
> > perlmagic.  The build works on my development box if I use abuild from
> the
> > current https://github.com/alpinelinux/abuild master.
> >
> > If I use the version of abuild included on 3.8.4 I it fails with
> >
> > >>> ERROR: perlmagick*: Has /home/... in rpath
>
> This is a check that there should be no references to /home in the
> binaries. Binaries should not be told to look for shared libs in any
> place under /home.
>
> What probably happened here is that build script will set RPATH to look
> for shared libs in the build tree, most likely to be able to run test
> suite or similar.
>
> My guess is that this does not happen on your local machine because you
> don't run your build from /home.
>
> You can find the offending binaries with: scanelf --recursive --rpath
> $pkgdir
>
> As a side note, I think we may need extend the test to also look
> for /tmp and /var/tmp or any place that users may have write access too.
>
> > >>> ERROR: perlmagick*: prepare_package failed
> > >>> ERROR: perlmagick: all failed
> >
> > This is the same error that shows up in github after the pull request
> runs:
> >
> > continuous-integration/drone/pr * Build is failing
> > continuous-integration/travis-ci/pr * The Travis CI build failed
> >
> > However the current git version of abuild works without any errors.  Any
> > thoughts?
> >
> > Tim
>
>