On Wed, May 4, 2016 at 6:16 PM, Douglas R. Reno <renodr2...@gmail.com>
wrote:

>
>
> On Wed, May 4, 2016 at 5:02 PM, Bruce Dubbs <bruce.du...@gmail.com> wrote:
>
>> Pierre Labastie wrote:
>>
>>
>>> I confirm that GCC-6 is not easy to work with: OpenJDK would not build
>>> with
>>> it. I do not have CLANG and have no motivation to build it. Furthermore,
>>> for
>>> OpenJDK, the variables CC and CXX are not honoured! What I have done (as
>>> root):
>>>
>>> mv /usr/bin/gcc{,.orig}
>>> cat >/usr/bin/gcc << EOF
>>> #!/bin/bash
>>> gcc -std=c99 "\$@"
>>> EOF
>>> mv /usr/bin/g++{,.orig}
>>> cat >/usr/bin/g++ << EOF
>>> #!/bin/bash
>>> gcc -std=c99 "\$@"
>>> EOF
>>>
>>> But that's not enough. The compilation goes to completion, but all the
>>> compiled executables segfault
>>>
>>> Downgrading to gcc-5.3 allowed to build. Tests are currently running,
>>> but at
>>> least, the executables seem to run.
>>>
>>
>> I agree that gcc6 will cause us problems.  I needed to rebuild ptlib and
>> ran into errors due to:
>>
>> 1.  Ambiguous overloaded function.  I was able to overcome that by
>>     casting an argument to std::string in several places.  Fortunately it
>>     is only one file.   src/ptlib/unix/svcproc.cxx
>>
>> 2.  There is a check for a header that depends on compiler version.  It
>>     fails if the minor version is less than 2.  That was fixed by adding
>>     ||  __GNUC__ >= 5 to the #if statement.  include/ptlib/critsec.h
>>
>> There are also a TON of warnings about deprecated constructs that creates
>> very noisy output.  I was able to turn them off my adding
>>
>> STDCCFLAGS  += -Wno-deprecated-declarations
>>
>> to make/unix.mak.
>>
>> It will be easy enough to add these fixes to the existing patch, but I
>> fear that this will become the rule for a while.
>>
>> I'll even note that there are warnings about indentation!
>>
>>   -- Bruce
>>
>> The latest breakage:
>
> gst-plugins-good-1.8.1 fails to install/link with taglib-1.11 installed!:
>
> make[2]: Entering directory
> '/sources/gst-plugins-good-1.8.1/gst-plugins-good-1.8.1/ext/taglib'
>    CXXLD      libgsttaglib.la
> /usr/bin/ld:
> /usr/lib/gcc/x86_64-pc-linux-gnu/6.1.0/../../../../lib64/libtag.a(id3v2framefactory.cpp.o):
> reolocation R_X86_64_32S against `_ZTVN6TagLib5ID3v212FrameFactoryE' can
> not be used when making a shared object; recompile with -fPIC
> /usr/lib/gcc/x86_64-pc-linux-gnu/6.1.0/../../../../lib64/libtag.a: error
> adding symbols: Bad value
> collect2: error: ld returned 1 exit status
> make[2]: *** [libgsttaglib.la] Error 1
> make[2]: Leaving directory
> '/sources/gst-plugins-good-1.8.1/gst-plugins-good-1.8.1/ext/taglib'
> Makefile:666: recipe for target 'install-recursive' failed
> make[1]: *** [install-recursive] Error 1
>
> The question is... taglib problem or gst-plugins-good problem? I will do
> some more research in a little while.
>
> I figured it out!

The instructions that we have in both books don't compile shared libraries,
only static ones. The gstreamer build process, at least on my 3 machines,
won't link to that. In order to fix that, we must add
-DBUILD_SHARED_LIBS=ON to the cmake command. That seemed to fix it for me.

Am I clear to put in the required changes for this and Qt4 tomorrow? I
would rather ask first before I commit them, due to prior experiences.

Douglas R. Reno
-- 
http://lists.linuxfromscratch.org/listinfo/blfs-dev
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to