LinuxQuestions.org
Latest LQ Deal: Latest LQ Deals
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 11-23-2015, 02:19 PM   #1
akschu
Member
 
Registered: Dec 2007
Posts: 96

Rep: Reputation: 39
gstreamer package in current puts gstconfig.h in /usr/lib64/gstreamer-1.0/include


Looks like the -current gstreamer-1.6.1 package puts this one header file in an odd place:

/usr/lib64/gstreamer-1.0/include/gst/gstconfig.h

Adding this to the slackbuild:
Code:
mv usr/lib64/gstreamer-1.0/include/gst/gstconfig.h usr/include/gstreamer-1.0/gst/
Before the makepkg command fixes this which allows me to compile freerdp and probably other software that depends on gstreamer.

Might want to add this fix to -current before release otherwise software linked against gstreamer may not build correctly.

Thanks,
schu
 
Old 11-23-2015, 02:35 PM   #2
ponce
LQ Guru
 
Registered: Aug 2004
Location: Pisa, Italy
Distribution: Slackware
Posts: 7,117

Rep: Reputation: 4192Reputation: 4192Reputation: 4192Reputation: 4192Reputation: 4192Reputation: 4192Reputation: 4192Reputation: 4192Reputation: 4192Reputation: 4192Reputation: 4192
hi akschu, freerdp from SBo here builds fine on current.
to satisfy my own curiosity I've checked the cmake routine it uses to find gstreamer-1.0 (cmake/FindGStreamer_1_0.cmake): it uses pkg-config and the paths it shows are correct
Code:
# pkg-config --cflags-only-I gstreamer-1.0        
-I/usr/include/gstreamer-1.0 -I/usr/lib64/gstreamer-1.0/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include
 
Old 11-25-2015, 03:06 PM   #3
akschu
Member
 
Registered: Dec 2007
Posts: 96

Original Poster
Rep: Reputation: 39
I'm not sure why yours works. If I install the current gstreamer library from: http://mirrors.aptalaska.net/slackwa...1-x86_64-1.txt then the gstconfig.h file gets installed in an odd location:

Code:
$ grep gstconfig.h /var/log/packages/gstreamer-1.6.1-x86_64-1 
usr/lib64/gstreamer-1.0/include/gst/gstconfig.h
When I go to compile freerdp from slackbuilds.org I get:

Code:
[ 92%] Building C object channels/tsmf/client/gstreamer/CMakeFiles/tsmf-client-gstreamer-decoder.dir/tsmf_gstreamer.c.o
cd /tmp/SBo/FreeRDP-1.2.0-beta1-android9/build/channels/tsmf/client/gstreamer && /usr/bin/cc  -DHAVE_CONFIG_H -DWITH_XEXT=1 -I/tmp/SBo/FreeRDP-1.2.0-beta1-android9/build -I/tmp/SBo/FreeRDP-1.2.0-beta1-android9/build/include -I/tmp/SBo/FreeRDP-1.2.0-beta1-android9/include -I/tmp/SBo/FreeRDP-1.2.0-beta1-android9/winpr/include -I/tmp/SBo/FreeRDP-1.2.0-beta1-android9/build/winpr/include -I/tmp/SBo/FreeRDP-1.2.0-beta1-android9/channels/tsmf/client/.. -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/tmp/SBo/FreeRDP-1.2.0-beta1-android9/channels/tsmf/client/gstreamer/..  -O2 -fPIC -fPIC -Wall -Wno-unused-result -Wno-unused-but-set-variable -Wno-deprecated-declarations -O2 -msse2 -DWINPR_EXPORTS -DFREERDP_EXPORTS -DNDEBUG -Wno-builtin-macro-redefined -D__FILE__='"channels/tsmf/client/gstreamer/tsmf_gstreamer.c"' -fPIC   -o CMakeFiles/tsmf-client-gstreamer-decoder.dir/tsmf_gstreamer.c.o   -c /tmp/SBo/FreeRDP-1.2.0-beta1-android9/channels/tsmf/client/gstreamer/tsmf_gstreamer.c
In file included from /usr/include/gstreamer-1.0/gst/gstbin.h:27:0,
                 from /usr/include/gstreamer-1.0/gst/gst.h:35,
                 from /tmp/SBo/FreeRDP-1.2.0-beta1-android9/channels/tsmf/client/gstreamer/tsmf_gstreamer.c:34:
/usr/include/gstreamer-1.0/gst/gstelement.h:55:27: fatal error: gst/gstconfig.h: No such file or directory
compilation terminated.
If I download the source and SlackBuild from http://mirrors.aptalaska.net/slackwa...e/l/gstreamer/

Then patch it with this:

Code:
--- gstreamer.SlackBuild.orig   2015-10-27 12:28:56.000000000 -0800
+++ gstreamer.SlackBuild        2015-11-25 12:02:39.836159764 -0900
@@ -125,5 +125,6 @@
 cat $CWD/slack-desc > $PKG/install/slack-desc
 
 cd $PKG
+mv usr/lib64/gstreamer-1.0/include/gst/gstconfig.h usr/include/gstreamer-1.0/gst/
 /sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
Build, install, then I have gstconfig.h in a more common place:

Code:
$ grep gstconfig.h /var/log/packages/gstreamer-1.6.1-x86_64-1 
usr/include/gstreamer-1.0/gst/gstconfig.h
And freerdp builds just fine....

We should be running the same software, I updated -current this morning. Perhaps one difference could be I'm using Eric's multilib stuff, but it seems to me that the header file would be better off in the include directory which is why I suggested this as an update to -current before RC1.

Thanks,
schu
 
Old 11-25-2015, 03:10 PM   #4
akschu
Member
 
Registered: Dec 2007
Posts: 96

Original Poster
Rep: Reputation: 39
You are right that freerdp should build fine as my system also lists the correct directory in pkg-config:

Code:
$ pkg-config --cflags-only-I gstreamer-1.0        
-I/usr/include/gstreamer-1.0 -I/usr/lib64/gstreamer-1.0/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include
But apparently freerdp 1.2.0-beta1+android9.tar.gz makes some spurious assumptions.

I'm not sure what makes more sense, update the gstreamer package to make it use more common/assumed paths for this one header file, or file a bug with freerdp since it's not searching all of the pkg-config paths for every header file. It probably finds the first directory and rolls with it....

Thanks,
schu
 
Old 11-25-2015, 04:18 PM   #5
chris.willing
Member
 
Registered: Jun 2014
Location: Brisbane, Australia
Distribution: Slackware,LFS
Posts: 917

Rep: Reputation: 619Reputation: 619Reputation: 619Reputation: 619Reputation: 619Reputation: 619
I see the same problem on a recently rebuilt -current system. I'm not sure how the existing SlackBuild works for others but in my freerdp.SlackBuild, I changed the -DCMAKE_C_FLAGS:STRING definition line to:
Code:
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS $(pkg-config --cflags-only-I gstreamer-1.0)" \
chris
 
Old 11-26-2015, 01:46 AM   #6
rworkman
Slackware Contributor
 
Registered: Oct 2004
Location: Tuscaloosa, Alabama (USA)
Distribution: Slackware
Posts: 2,559

Rep: Reputation: 1351Reputation: 1351Reputation: 1351Reputation: 1351Reputation: 1351Reputation: 1351Reputation: 1351Reputation: 1351Reputation: 1351Reputation: 1351
As ponce implied, this is a bug with the app trying to include the header - gstreamer did what it was supposed to do in its pkgconfig file:
Code:
Cflags: -I${includedir} -I${libdir}/gstreamer-1.0/include
 
  


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] Broken sound on KDE with phonon-gstreamer since KDE 4.14.3 in -current sberthelot Slackware 5 05-04-2015 10:24 AM
[SOLVED] Current java.SlackBuild Does Not Install as /usr/lib64/java/jre tronayne Slackware 0 09-28-2012 10:25 AM
Package gstreamer-0.10.23 was not found in the pkg-config search path. HarryBoy Linux - Newbie 1 12-16-2009 03:41 PM
[SOLVED] gstreamer-plugins-base conflicts with gstreamer-plugins-good Raveolution Linux - Software 14 11-17-2009 12:24 PM
GStreamer package requirements jonasan Linux - Software 2 02-27-2006 02:59 AM

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

All times are GMT -5. The time now is 09:39 PM.

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