LinuxQuestions.org
Download your favorite Linux distribution at LQ ISO.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 04-17-2016, 07:34 PM   #1
orbea
Senior Member
 
Registered: Feb 2015
Distribution: Slackware64-current
Posts: 1,950

Rep: Reputation: Disabled
Slackware-current: gstreamer0 compilation broke.


It was reported in ##slackware @ freenode that gstreamer0 was no longer compiling in slackware-current.

So with some searching online I found a patch that fixes it.

Code:
From 90622bb35544655cf641e3ab65cf35a6d01869bc Mon Sep 17 00:00:00 2001
From: Kerrick Staley <kerrick@kerrickstaley.com>
Date: Tue, 20 Aug 2013 23:59:29 -0700
Subject: [PATCH] Make grammar.y work with Bison 3

YYLEX_PARAM is no longer supported in Bison 3.
---
 gst/parse/grammar.y | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gst/parse/grammar.y b/gst/parse/grammar.y
index 8a9019c..f533389 100644
--- a/gst/parse/grammar.y
+++ b/gst/parse/grammar.y
@@ -26,7 +26,6 @@
  */
 
 #define YYERROR_VERBOSE 1
-#define YYLEX_PARAM scanner
 
 #define YYENABLE_NLS 0
 
@@ -659,6 +658,7 @@ static int yyerror (void *scanner, graph_t *graph, const char *s);
 %right '.'
 %left '!' '='
 
+%lex-param { void *scanner }
 %parse-param { void *scanner }
 %parse-param { graph_t *graph }
 %pure-parser
-- 
1.8.3.4
https://bugzilla.gnome.org/show_bug.cgi?id=706462
https://bug706462.bugzilla-attachmen....cgi?id=252504

Here is a patch for the slackbuild itself.
Code:
diff -urN a/gstreamer0/gstreamer0.SlackBuild b/gstreamer0/gstreamer0.SlackBuild
--- a/gstreamer0/gstreamer0.SlackBuild	2015-03-22 15:39:16.000000000 -0700
+++ b/gstreamer0/gstreamer0.SlackBuild	2016-04-17 17:39:53.676337014 -0700
@@ -25,7 +25,7 @@
 
 PKGNAM=gstreamer
 VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
 
 # Automatically determine the architecture we're building on:
 if [ -z "$ARCH" ]; then
@@ -74,6 +74,8 @@
  \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
  -exec chmod 644 {} \;
 
+zcat $CWD/YYLEX_PARAM.diff.gz | patch -p1
+
 CFLAGS="$SLKCFLAGS" \
 CXXFLAGS="$SLKCFLAGS" \
 ./configure \
Edit: For reference here is the error.
Code:
make[4]: Entering directory '/tmp/gstreamer-0.10.36/gst/parse'
  GEN    lex.priv_gst_parse_yy.c
  CC     libgstparse_la-lex.priv_gst_parse_yy.lo
lex.priv_gst_parse_yy.c:1020:5: warning: redundant redeclaration of 'priv_gst_parse_yyget_column' [-Wredundant-decls]
lex.priv_gst_parse_yy.c:4:19: note: previous declaration of 'priv_gst_parse_yyget_column' was here
 static inline int priv_gst_parse_yyget_column  (void * yyscanner);
                   ^
lex.priv_gst_parse_yy.c:1022:6: warning: redundant redeclaration of 'priv_gst_parse_yyset_column' [-Wredundant-decls]
lex.priv_gst_parse_yy.c:5:20: note: previous declaration of 'priv_gst_parse_yyset_column' was here
 static inline void priv_gst_parse_yyset_column (int  column_no , void * yyscanner
                    ^
  CC     libgstparse_la-grammar.tab.lo
grammar.tab.c: In function 'priv_gst_parse_yyparse':
grammar.tab.c:67:25: error: too few arguments to function 'priv_gst_parse_yylex'
 #define yylex           priv_gst_parse_yylex
                         ^
grammar.tab.c:1821:16: note: in expansion of macro 'yylex'
   if (yychar == YYEMPTY)
                ^
./grammar.y:39:5: note: declared here
 int priv_gst_parse_yylex (void * yylval_param , yyscan_t yyscanner);
     ^
Makefile:507: recipe for target 'libgstparse_la-grammar.tab.lo' failed
make[4]: *** [libgstparse_la-grammar.tab.lo] Error 1
make[4]: Leaving directory '/tmp/gstreamer-0.10.36/gst/parse'
Makefile:1399: recipe for target 'all-recursive' failed
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory '/tmp/gstreamer-0.10.36/gst'
Makefile:758: recipe for target 'all' failed
make[2]: *** [all] Error 2
make[2]: Leaving directory '/tmp/gstreamer-0.10.36/gst'
Makefile:657: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/tmp/gstreamer-0.10.36'
Makefile:563: recipe for target 'all' failed
make: *** [all] Error 2

Last edited by orbea; 04-17-2016 at 07:49 PM.
 
Old 04-17-2016, 09:20 PM   #2
willysr
Senior Member
 
Registered: Jul 2004
Location: Jogja, Indonesia
Distribution: Slackware-Current
Posts: 4,670

Rep: Reputation: 1786Reputation: 1786Reputation: 1786Reputation: 1786Reputation: 1786Reputation: 1786Reputation: 1786Reputation: 1786Reputation: 1786Reputation: 1786Reputation: 1786
i think this should solve gradm (in SBo) failing on x86 with the same problem as well
Code:
/usr/lib/gcc/i586-slackware-linux/5.3.0/../../../libfl.so: undefined reference to `yylex'
 
Old 04-18-2016, 04:22 AM   #3
55020
Senior Member
 
Registered: Sep 2009
Location: Yorks. W.R. 167397
Distribution: Slackware
Posts: 1,307
Blog Entries: 4

Rep: Reputation: Disabled
re. gradm, that's a different problem, the code in its Makefile is totally bogus. Having seen this pile of steaming crap, well, let's just say I'll think of this Makefile every time I see people hyping grsecurity or starting a flame war in LWN's comments.

Code:
##############################################################################
# gradm (c) 2002-2015 - Brad Spengler, Open Source Security Inc.             #
# http://www.grsecurity.net                                                  #
#----------------------------------------------------------------------------#
# gradm is licensed under the GNU GPL v2 only http://www.gnu.org             #
# see COPYRIGHT and LICENSE files for more information                       #
##############################################################################

GRADM_BIN=gradm
GRADM_PAM=gradm_pam
GRSEC_DIR=/etc/grsec

LLEX=/usr/bin/lex
FLEX=/usr/bin/flex
LEX := $(shell if [ -x $(FLEX) ]; then echo $(FLEX); else echo $(LLEX); fi)
LEXFLAGS=-Cfa -B -8
#ubuntu broke byacc for who knows why, disable it
#BYACC=/usr/bin/byacc
BISON=/usr/bin/bison
#YACC := $(shell if [ -x $(BYACC) ]; then echo $(BYACC); else echo $(BISON); fi)
YACC=$(BISON)
MKNOD=/bin/mknod
#for dietlibc
#CC=/usr/bin/diet /usr/bin/gcc
CC=/usr/bin/gcc
FIND=/usr/bin/find
STRIP=/usr/bin/strip
LIBS := $(shell if [ "`uname -m`" != "sparc64" -a "`uname -m`" != "x86_64" ]; then echo "-lfl" ; else echo "" ; fi)
OPT_FLAGS := -O2
# for older versions of grsecurity, comment the above line and uncomment the below:
#OPT_FLAGS := $(shell if [ "`uname -m`" != "sparc64" ] && [ "`uname -m`" != "x86_64" ]; then echo "-O2" ; else echo "-O2 -m64" ; fi)
CFLAGS := $(OPT_FLAGS) -fPIE -Wcast-qual -DGRSEC_DIR=\"$(GRSEC_DIR)\" -D_LARGEFILE64_SOURCE
LDFLAGS= -pie
INSTALL = /usr/bin/install -c
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] Slackware current - Openssl and python2 update broke python-setuptools? orbea Slackware 28 03-14-2016 03:16 PM
[SOLVED] Slackware-current 16Dec2015? update broke installation via NFS mount kingbeowulf Slackware 8 12-23-2015 09:17 PM
[SOLVED] Octave 3.4.2 gives compilation error on Slackware-current 64 Bindestreck Slackware 1 05-25-2012 11:26 AM
Slackware-current and amarok compilation perfect_circle Slackware 5 03-18-2010 12:05 PM
Alsa broke while upgrading to Slackware-current Almighty-Bob Linux - Software 5 03-16-2005 08:07 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 07:58 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration