unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#32360: gst-plugins-base has test failures (when built as a dependency)
@ 2018-08-03 11:38 Björn Höfling
  2018-08-17 17:16 ` Leo Famulari
  0 siblings, 1 reply; 8+ messages in thread
From: Björn Höfling @ 2018-08-03 11:38 UTC (permalink / raw)
  To: 32360

[-- Attachment #1: Type: text/plain, Size: 5004 bytes --]

Hi,

gst-plugins-base has somehow a problem, which I don't understand fully.
Can someone have a look into it? It was already reported by Piere
Neidhardt on the help mailing list:

https://lists.gnu.org/archive/html/help-guix/2018-06/msg00075.html

OK, so I am on 5803f87284c228ca131d74a4259238e7685526ac and do:

./pre-inst-env  guix build gst-plugins-base
/gnu/store/58i3gmidcbksf7cxwhfjrp2w22k6glqa-gst-plugins-base-1.14.1-doc
/gnu/store/g3iwkhs7sjrhsaqq3bwmj81mxsa5c3d1-gst-plugins-base-1.14.1


Looks good.

I can also build the derivation:

./pre-inst-env  guix build gst-plugins-base -d
/gnu/store/zg9bmdlrdwd4i4c1prz4hzzjm3877nkl-gst-plugins-base-1.14.1.drv

I can also add options "--no-grafts --no-substitutes", same result.

Now, I want to build wine:

Building package wine
Full build command: ./pre-inst-env guix build wine --no-grafts --no-substitutes
Guix commit:
5803f87284c228ca131d74a4259238e7685526ac gnu: Update ruby-net-ssh to 4.2.0.
Start building at:    2018-08-03T11:09:39,183594824+00:00
The following derivations will be built:
   /gnu/store/shmcbb9yb99y0kfhn42dz2gpmqnifsmn-wine-3.0.2.drv
   /gnu/store/yrk539har2g5pw1rw5b9k8nq9p0w3c1h-gst-plugins-base-1.14.1.drv
@ build-started /gnu/store/yrk539har2g5pw1rw5b9k8nq9p0w3c1h-gst-plugins-base-1.14.1.drv - i686-linux /var/log/guix/drvs/yr//k539har2g5pw1rw5b9k8nq9p0w3c1h-gst-plugins-base-1.14.1.drv.bz2
starting phase `set-SOURCE-DATE-EPOCH'
[...]

What I find strange is that the derivation of gst-plugins-base differs
from the one above when directly building gst-plugins-base. That would
make sense to me if there would be two packages of gst-plugins-base,
like an inherited one or just any kind of copy. But here, the package
definition of wine ist just using the "normal" package. Or have I
overlooked something? Have I misunderstood something about derivations
here?!

This derivation will fail to build. Here is the end of the log:

[..]

================================================================
   GStreamer Base Plug-ins 1.14.1: tests/check/test-suite.log
================================================================

# TOTAL: 80
# PASS:  79
# SKIP:  0
# XFAIL: 0
# FAIL:  1
# XPASS: 0
# ERROR: 0

.. contents:: :depth: 2

FAIL: elements/opus
===================

Running suite(s): opus
33%: Checks: 6, Failures: 0, Errors: 4
gstcheck.c:596:E:general:test_opus_encode_nothing:0: (after this point) Received
 signal 11 (Segmentation fault)
gstcheck.c:596:E:general:test_opus_encode_samples:0: (after this point) Received signal 11 (Segmentation fault)
gstcheck.c:596:E:general:test_opus_encode_properties:0: (after this point) Received signal 11 (Segmentation fault)
elements/opus.c:429:E:general:test_opus_decode_plc_timestamps_with_fec:0: (after this point) Received signal 11 (Segmentation fault)
Check suite opus ran in 1.049s (tests failed: 4)
FAIL elements/opus (exit status: 4)


Backtrace:

           4 (primitive-load "/gnu/store/ki3kvmzipvf8baabfyaw1ncf4ax?")
In ice-9/eval.scm:
   191:35  3 (_ _)
In srfi/srfi-1.scm:
    640:9  2 (for-each #<procedure 81b5700 at /gnu/store/cgnrsi20mw?> ?)
In /gnu/store/cgnrsi20mwcm1s3z9ab8qw125m73l4qd-module-import/guix/build/gnu-build-system.scm:
   799:31  1 (_ _)
    369:6  0 (check #:target _ #:make-flags _ #:tests? _ # _ # _ # _)

/gnu/store/cgnrsi20mwcm1s3z9ab8qw125m73l4qd-module-import/guix/build/gnu-build-system.scm:369:6: In procedure check:
Throw to key `srfi-34' with args `(#<condition &invoke-error [program: "make" arguments: ("check") exit-status: 2 term-signal: #f stop-signal: #f] 80a8ee0>)'.
builder for `/gnu/store/yrk539har2g5pw1rw5b9k8nq9p0w3c1h-gst-plugins-base-1.14.1.drv' failed with exit code 1
@ build-failed /gnu/store/yrk539har2g5pw1rw5b9k8nq9p0w3c1h-gst-plugins-base-1.14.1.drv - 1 builder for `/gnu/store/yrk539har2g5pw1rw5b9k8nq9p0w3c1h-gst-plugins-base-1.14.1.drv' failed with exit code 1
cannot build derivation `/gnu/store/shmcbb9yb99y0kfhn42dz2gpmqnifsmn-wine-3.0.2.drv': 1 dependencies couldn't be built
guix build: error: build failed: build of `/gnu/store/shmcbb9yb99y0kfhn42dz2gpmqnifsmn-wine-3.0.2.drv' failed


Command exited with non-zero status 1
3.30user 0.17system 6:49.03elapsed 0%CPU (0avgtext+0avgdata 145936maxresident)k
32inputs+656outputs (0major+20586minor)pagefaults 0swaps
Returncode: 1
Finished building at: 2018-08-03T11:16:28,219631472+00:00
--------------------------------------------------------------------------------

When looking at Hydra, it succeeds in direct build (for x86_64):

https://hydra.gnu.org/job/gnu/master/gst-plugins-base-1.14.1.x86_64-linux

On i686 it fails with the same opus test.
On ARM it fails with different test failures.


When you look at the build of wine-x86-64:

https://hydra.gnu.org/build/2937119

it fails building gst-plugins-base.


I tried upgrading to the 1.14.2 bugfix release: Same behaviour.

Any ideas someone?

Thanks,

Björn

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#32360: gst-plugins-base has test failures (when built as a dependency)
  2018-08-03 11:38 bug#32360: gst-plugins-base has test failures (when built as a dependency) Björn Höfling
@ 2018-08-17 17:16 ` Leo Famulari
  2018-08-17 18:05   ` Leo Famulari
  0 siblings, 1 reply; 8+ messages in thread
From: Leo Famulari @ 2018-08-17 17:16 UTC (permalink / raw)
  To: Björn Höfling; +Cc: 32360

[-- Attachment #1: Type: text/plain, Size: 1358 bytes --]

On Fri, Aug 03, 2018 at 01:38:58PM +0200, Björn Höfling wrote:
> What I find strange is that the derivation of gst-plugins-base differs
> from the one above when directly building gst-plugins-base. That would
> make sense to me if there would be two packages of gst-plugins-base,
> like an inherited one or just any kind of copy. But here, the package
> definition of wine ist just using the "normal" package. Or have I
> overlooked something? Have I misunderstood something about derivations
> here?!

Presumably, you are using an x86_64 computer, and the successful build
of gst-plugins-base is for an x86_64-linux system. However, the wine
package and its dependency graph is always built as 32-bit software,
regardless of the underlying architecture:

From gnu/packages/wine.scm:
------
    (arguments
     `(;; Force a 32-bit build targeting a similar architecture, i.e.:
       ;; armhf for armhf/aarch64, i686 for i686/x86_64.
       #:system ,@(match (%current-system)
                    ((or "armhf-linux" "aarch64-linux")
                     `("armhf-linux"))
                    (_  
                     `("i686-linux")))
------

And the test failure in the 32-bit build of gst-plugins base was
previously discussed on help-guix (no bug report):

https://lists.gnu.org/archive/html/help-guix/2018-06/msg00075.html

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#32360: gst-plugins-base has test failures (when built as a dependency)
  2018-08-17 17:16 ` Leo Famulari
@ 2018-08-17 18:05   ` Leo Famulari
  2018-08-17 21:50     ` Björn Höfling
  2018-08-18  7:44     ` Ricardo Wurmus
  0 siblings, 2 replies; 8+ messages in thread
From: Leo Famulari @ 2018-08-17 18:05 UTC (permalink / raw)
  To: Björn Höfling; +Cc: 32360


[-- Attachment #1.1: Type: text/plain, Size: 317 bytes --]

Here is a patch that excludes Opus when building gst-plugins-base on and
for 32-bit systems. I think it's not so bad to be missing support for
Opus in this context until the underlying bug is fixed.

With this patch, gst-plugins-base builds successfully with
'--system=i686-linux'. I didn't test the full Wine build.

[-- Attachment #1.2: 0001-gnu-gst-plugins-base-Don-t-build-with-Opus-for-32-bi.patch --]
[-- Type: text/plain, Size: 1962 bytes --]

From e1cc6137514c1e002b82ec48c3a5e260937ceeb1 Mon Sep 17 00:00:00 2001
From: Leo Famulari <leo@famulari.name>
Date: Fri, 17 Aug 2018 13:43:04 -0400
Subject: [PATCH] gnu: gst-plugins-base: Don't build with Opus for 32-bit
 systems.

Fixes <https://bugs.gnu.org/32360> and <https://bugs.gnu.org/32466>.

* gnu/packages/gstreamer.scm (gst-plugins-base)[inputs]: Exclude opus
when building for 32-bit systems.
---
 gnu/packages/gstreamer.scm | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm
index 951ca93fb..4477d2f86 100644
--- a/gnu/packages/gstreamer.scm
+++ b/gnu/packages/gstreamer.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2015, 2016 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2015, 2018 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
+;;; Copyright © 2016, 2018 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
@@ -167,7 +167,6 @@ This package provides the core library and elements.")
        ("orc" ,orc)))              ;required by gstreamer-audio-1.0.pc
     (inputs
      `(("cdparanoia" ,cdparanoia)
-       ("opus" ,opus)
        ("pango" ,pango)
        ("libogg" ,libogg)
        ("libtheora" ,libtheora)
@@ -176,7 +175,12 @@ This package provides the core library and elements.")
        ("zlib" ,zlib)
        ("libXext" ,libxext)
        ("libxv" ,libxv)
-       ("alsa-lib" ,alsa-lib)))
+       ("alsa-lib" ,alsa-lib)
+       ;; XXX Don't build with opus on 32-bit systems:
+       ;; <https://bugs.gnu.org/32360>
+       ,@(if (target-64bit?)
+           `(("opus" ,opus))
+           '())))
     (native-inputs
       `(("pkg-config" ,pkg-config)
         ("glib:bin" ,glib "bin")
-- 
2.18.0


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* bug#32360: gst-plugins-base has test failures (when built as a dependency)
  2018-08-17 18:05   ` Leo Famulari
@ 2018-08-17 21:50     ` Björn Höfling
  2018-08-18 10:46       ` Pjotr Prins
  2018-08-18  7:44     ` Ricardo Wurmus
  1 sibling, 1 reply; 8+ messages in thread
From: Björn Höfling @ 2018-08-17 21:50 UTC (permalink / raw)
  To: Leo Famulari; +Cc: 32360

[-- Attachment #1: Type: text/plain, Size: 982 bytes --]

Hi Leo,

On Fri, 17 Aug 2018 14:05:54 -0400
Leo Famulari <leo@famulari.name> wrote:

> Here is a patch that excludes Opus when building gst-plugins-base on
> and for 32-bit systems. I think it's not so bad to be missing support
> for Opus in this context until the underlying bug is fixed.
> 
> With this patch, gst-plugins-base builds successfully with
> '--system=i686-linux'. I didn't test the full Wine build.

I don't who/which program needs opus. But it's not working anyway, so I
would be fine with the patch.

I could not apply the patch. Maybe I did something wrong on my side?
Anyway, it's so short, I "applied" it manually.

Then it looks good:

$ ./pre-inst-env guix environment -C --expose=/gnu/store/ --ad-hoc wine
  -- wine $(./pre-inst-env  guix build hello --target=i686-w64-mingw32)/bin/hello.exe
[... some wine error message I suppose to be due to the -C
environment ...]
Hello, world!

Guix is so cool :-)

Thanks,

Björn





[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#32360: gst-plugins-base has test failures (when built as a dependency)
  2018-08-17 18:05   ` Leo Famulari
  2018-08-17 21:50     ` Björn Höfling
@ 2018-08-18  7:44     ` Ricardo Wurmus
  1 sibling, 0 replies; 8+ messages in thread
From: Ricardo Wurmus @ 2018-08-18  7:44 UTC (permalink / raw)
  To: Leo Famulari; +Cc: 32360


Leo Famulari <leo@famulari.name> writes:

> Here is a patch that excludes Opus when building gst-plugins-base on and
> for 32-bit systems. I think it's not so bad to be missing support for
> Opus in this context until the underlying bug is fixed.

I agree.  The patch looks good to me.
Shall we rename this bug and keep track of this problem here?

--
Ricardo

^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#32360: gst-plugins-base has test failures (when built as a dependency)
  2018-08-17 21:50     ` Björn Höfling
@ 2018-08-18 10:46       ` Pjotr Prins
  2018-08-18 11:34         ` Tobias Geerinckx-Rice
  0 siblings, 1 reply; 8+ messages in thread
From: Pjotr Prins @ 2018-08-18 10:46 UTC (permalink / raw)
  To: Björn Höfling; +Cc: 32360

Someone still needs to push the patch.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#32360: gst-plugins-base has test failures (when built as a dependency)
  2018-08-18 10:46       ` Pjotr Prins
@ 2018-08-18 11:34         ` Tobias Geerinckx-Rice
  2018-08-19  7:35           ` Pjotr Prins
  0 siblings, 1 reply; 8+ messages in thread
From: Tobias Geerinckx-Rice @ 2018-08-18 11:34 UTC (permalink / raw)
  To: Pjotr Prins, Leo Famulari; +Cc: 32360-done

Pjotr, Leo, Guix,

Pjotr Prins wrote:
> Someone still needs to push the patch.

I went ahead and did so in 
399c5fafcdb2d0c13ab51e4ab57d451d2c7cb1bd
since it's not really acceptable to have this broken in master.

Kind regards,

T G-R

^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#32360: gst-plugins-base has test failures (when built as a dependency)
  2018-08-18 11:34         ` Tobias Geerinckx-Rice
@ 2018-08-19  7:35           ` Pjotr Prins
  0 siblings, 0 replies; 8+ messages in thread
From: Pjotr Prins @ 2018-08-19  7:35 UTC (permalink / raw)
  To: Tobias Geerinckx-Rice; +Cc: 32360-done


On Sat, Aug 18, 2018 at 01:34:09PM +0200, Tobias Geerinckx-Rice wrote:
> Pjotr, Leo, Guix,
> 
> Pjotr Prins wrote:
> > Someone still needs to push the patch.
> 
> I went ahead and did so in 399c5fafcdb2d0c13ab51e4ab57d451d2c7cb1bd
> since it's not really acceptable to have this broken in master.

It has been broken for a while. And, miracle, guix pull just worked :)

Thanks Tobias, Björn and Leo!

Pj.

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2018-08-21  3:38 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-08-03 11:38 bug#32360: gst-plugins-base has test failures (when built as a dependency) Björn Höfling
2018-08-17 17:16 ` Leo Famulari
2018-08-17 18:05   ` Leo Famulari
2018-08-17 21:50     ` Björn Höfling
2018-08-18 10:46       ` Pjotr Prins
2018-08-18 11:34         ` Tobias Geerinckx-Rice
2018-08-19  7:35           ` Pjotr Prins
2018-08-18  7:44     ` Ricardo Wurmus

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).