Douglas R. Reno wrote:
On Wed, May 4, 2016 at 6:16 PM, Douglas R. Reno <[email protected]>
wrote:
On Wed, May 4, 2016 at 5:02 PM, Bruce Dubbs <[email protected]> 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.
I confirm that taglib needs -DBUILD_SHARED_LIBS=ON. Go ahead and add it.
-- Bruce
--
http://lists.linuxfromscratch.org/listinfo/blfs-dev
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page