Message ID | 50A9E93F.8060207@tvdr.de |
---|---|
State | New |
Headers |
Received: from localhost ([127.0.0.1] helo=www.linuxtv.org) by www.linuxtv.org with esmtp (Exim 4.72) (envelope-from <vdr-bounces@linuxtv.org>) id 1TaMQJ-0003mh-9t; Mon, 19 Nov 2012 09:09:43 +0100 Received: from mail.tu-berlin.de ([130.149.7.33]) by www.linuxtv.org with esmtp (Exim 4.72) (envelope-from <Klaus.Schmidinger@tvdr.de>) id 1TaMQI-0003mB-2K for vdr@linuxtv.org; Mon, 19 Nov 2012 09:09:42 +0100 X-tubIT-Incoming-IP: 188.40.50.18 Received: from racoon.tvdr.de ([188.40.50.18]) by mail.tu-berlin.de (exim-4.75/mailfrontend-3) with esmtps [TLSv1:AES256-SHA:256] for <vdr@linuxtv.org> id 1TaMQH-00009n-Fh; Mon, 19 Nov 2012 09:09:42 +0100 Received: from dolphin.tvdr.de (dolphin.tvdr.de [192.168.100.2]) by racoon.tvdr.de (8.14.5/8.14.5) with ESMTP id qAJ89ebA013866 for <vdr@linuxtv.org>; Mon, 19 Nov 2012 09:09:40 +0100 Received: from [192.168.100.11] (falcon.tvdr.de [192.168.100.11]) by dolphin.tvdr.de (8.14.4/8.14.4) with ESMTP id qAJ89Z19004929 for <vdr@linuxtv.org>; Mon, 19 Nov 2012 09:09:35 +0100 Message-ID: <50A9E93F.8060207@tvdr.de> Date: Mon, 19 Nov 2012 09:09:35 +0100 From: Klaus Schmidinger <Klaus.Schmidinger@tvdr.de> User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:16.0) Gecko/20121025 Thunderbird/16.0.2 MIME-Version: 1.0 To: vdr@linuxtv.org References: <50A9B53C.3000209@clear.net.nz> In-Reply-To: <50A9B53C.3000209@clear.net.nz> X-PMX-Version: 5.6.1.2065439, Antispam-Engine: 2.7.2.376379, Antispam-Data: 2012.11.19.80020 X-PMX-Spam: Gauge=IIIIIIII, Probability=8%, Report=' HTML_00_01 0.05, HTML_00_10 0.05, BODYTEXTP_SIZE_3000_LESS 0, BODY_SIZE_1700_1799 0, BODY_SIZE_2000_LESS 0, BODY_SIZE_5000_LESS 0, BODY_SIZE_7000_LESS 0, __ANY_URI 0, __BOUNCE_CHALLENGE_SUBJ 0, __BOUNCE_NDR_SUBJ_EXEMPT 0, __CT 0, __CTE 0, __CT_TEXT_PLAIN 0, __HAS_FROM 0, __HAS_MSGID 0, __MIME_TEXT_ONLY 0, __MIME_VERSION 0, __MOZILLA_MSGID 0, __MOZILLA_USER_AGENT 0, __RUS_OBFU_PHONE 0, __SANE_MSGID 0, __SUBJ_ALPHA_END 0, __TO_MALFORMED_2 0, __TO_NO_NAME 0, __URI_NO_MAILTO 0, __URI_NO_PATH 0, __URI_NO_WWW 0, __USER_AGENT 0' X-LSpam-Score: -1.1 (-) X-LSpam-Report: No, score=-1.1 required=5.0 tests=BAYES_00=-1.9, RDNS_NONE=0.793 autolearn=no Subject: Re: [vdr] vdr-1.7.32 plugin dvbhddevice fails X-BeenThere: vdr@linuxtv.org X-Mailman-Version: 2.1.13 Precedence: list Reply-To: VDR Mailing List <vdr@linuxtv.org> List-Id: VDR Mailing List <vdr.linuxtv.org> List-Unsubscribe: <http://www.linuxtv.org/cgi-bin/mailman/options/vdr>, <mailto:vdr-request@linuxtv.org?subject=unsubscribe> List-Archive: <http://www.linuxtv.org/pipermail/vdr> List-Post: <mailto:vdr@linuxtv.org> List-Help: <mailto:vdr-request@linuxtv.org?subject=help> List-Subscribe: <http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr>, <mailto:vdr-request@linuxtv.org?subject=subscribe> Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: vdr-bounces@linuxtv.org Errors-To: vdr-bounces@linuxtv.org |
Commit Message
Klaus Schmidinger
Nov. 19, 2012, 8:09 a.m. UTC
On 19.11.2012 05:27, Richard Scobie wrote: > I have just upgraded from vdr-1.7.31 to vdr-1.7.32 with S2-6400 and on making plugins, I receive the following error: > > make[2]: Entering directory `/home/rs/vdr-1.7.32/PLUGINS/src/dvbhddevice/libhdffcmd' > gcc -O3 -Wall -fPIC -shared -o libhdffcmd-0.1.0.so bitbuffer.o hdffcmd_av.o hdffcmd_base.o hdffcmd_generic.o hdffcmd_hdmi.o hdffcmd_mux.o hdffcmd_osd.o hdffcmd_remote.o > /usr/bin/ld: bitbuffer.o: relocation R_X86_64_PC32 against undefined symbol `memset@@GLIBC_2.2.5' can not be used when making a shared object; recompile with -fPIC > /usr/bin/ld: final link failed: Bad value > collect2: ld returned 1 exit status > make[2]: *** [libhdffcmd-0.1.0.so] Error 1 > > As "-fPIC" is being used, I am not sure how to handle the comment, "recompile with -fPIC" Maybe this was caused by the change I introduced in order to be able to easily build a 32-bit version of VDR (and all its plugins) on a 64-bit machine: -------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------- However, I got no such error message here, and I do use a TT S2-6400. Maybe check your Make.global and/or Make.config files. Klaus
Comments
Hi Klaus, Klaus Schmidinger wrote: > Maybe this was caused by the change I introduced in order to be able to > easily build a 32-bit version of VDR (and all its plugins) on a 64-bit > machine: > > -------------------------------------------------------------------------------------------- > > --- PLUGINS/src/dvbhddevice/libhdffcmd/Makefile 2012/01/18 12:25:20 1.2 > +++ PLUGINS/src/dvbhddevice/libhdffcmd/Makefile 2012/10/09 09:54:26 1.3 > @@ -24,6 +24,18 @@ > AR ?= ar > ARFLAGS ?= r > > +### The directory environment: > + > +VDRDIR ?= ../../../.. > + > +### Make sure that necessary options are included: > + > +include $(VDRDIR)/Make.global > + > +### Allow user defined options to overwrite defaults: > + > +-include $(VDRDIR)/Make.config > + > ### Implicit rules: > > %.o: %.c > -------------------------------------------------------------------------------------------- > > > However, I got no such error message here, and I do use a TT S2-6400. > Maybe check your Make.global and/or Make.config files. > I checked both and they seem OK. My previous post just showed the linking stage. Here is the full output from compiling the dvbhddevice plugin and "-fPIC" is present during compilation of all object files. Plugin dvbhddevice: make[1]: Entering directory `/home/rs/vdr-1.7.32/PLUGINS/src/dvbhddevice' make[1]: Leaving directory `/home/rs/vdr-1.7.32/PLUGINS/src/dvbhddevice' make[1]: Entering directory `/home/rs/vdr-1.7.32/PLUGINS/src/dvbhddevice' g++ -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses -fPIC -c -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"dvbhddevice"' -I/mnt/storage/media_build_experimental/linux/include -I../../../include dvbhddevice.c g++ -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses -fPIC -c -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"dvbhddevice"' -I/mnt/storage/media_build_experimental/linux/include -I../../../include dvbhdffdevice.c g++ -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses -fPIC -c -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"dvbhddevice"' -I/mnt/storage/media_build_experimental/linux/include -I../../../include hdffcmd.c g++ -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses -fPIC -c -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"dvbhddevice"' -I/mnt/storage/media_build_experimental/linux/include -I../../../include hdffosd.c hdffosd.c: In member function â??virtual void cHdffOsd::DrawText(int, int, const char*, tColor, tColor, const cFont*, int, int, int)â??: hdffosd.c:258:9: warning: variable â??limitâ?? set but not used [-Wunused-but-set-variable] g++ -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses -fPIC -c -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"dvbhddevice"' -I/mnt/storage/media_build_experimental/linux/include -I../../../include menu.c g++ -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses -fPIC -c -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"dvbhddevice"' -I/mnt/storage/media_build_experimental/linux/include -I../../../include setup.c make -C libhdffcmd all make[2]: Entering directory `/home/rs/vdr-1.7.32/PLUGINS/src/dvbhddevice/libhdffcmd' gcc -O3 -Wall -fPIC -shared -o libhdffcmd-0.1.0.so bitbuffer.o hdffcmd_av.o hdffcmd_base.o hdffcmd_generic.o hdffcmd_hdmi.o hdffcmd_mux.o hdffcmd_osd.o hdffcmd_remote.o /usr/bin/ld: bitbuffer.o: relocation R_X86_64_PC32 against undefined symbol `memset@@GLIBC_2.2.5' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: final link failed: Bad value collect2: ld returned 1 exit status make[2]: *** [libhdffcmd-0.1.0.so] Error 1 make[2]: Leaving directory `/home/rs/vdr-1.7.32/PLUGINS/src/dvbhddevice/libhdffcmd' make[1]: *** [libvdr-dvbhddevice.so] Error 2 make[1]: Leaving directory `/home/rs/vdr-1.7.32/PLUGINS/src/dvbhddevice' The machine is running Fedora 16 64bit and gcc version 4.6.2 20111027 (Red Hat 4.6.2-1) and I have no problem building vdr-1.7.31. Regards, Richard
Am 2012-11-20 04:38, schrieb Richard Scobie: > Hi Klaus, > > Klaus Schmidinger wrote: > >> Maybe this was caused by the change I introduced in order to be able >> to >> easily build a 32-bit version of VDR (and all its plugins) on a >> 64-bit >> machine: >> >> -------------------------------------------------------------------------------------------- >> --- PLUGINS/src/dvbhddevice/libhdffcmd/Makefile 2012/01/18 12:25:20 >> 1.2 >> +++ PLUGINS/src/dvbhddevice/libhdffcmd/Makefile 2012/10/09 09:54:26 >> 1.3 >> @@ -24,6 +24,18 @@ >> AR ?= ar >> ARFLAGS ?= r >> +### The directory environment: >> + >> +VDRDIR ?= ../../../.. >> + >> +### Make sure that necessary options are included: >> + >> +include $(VDRDIR)/Make.global >> + >> +### Allow user defined options to overwrite defaults: >> + >> +-include $(VDRDIR)/Make.config >> + >> ### Implicit rules: >> %.o: %.c >> >> -------------------------------------------------------------------------------------------- >> >> However, I got no such error message here, and I do use a TT >> S2-6400. >> Maybe check your Make.global and/or Make.config files. >> > > I checked both and they seem OK. My previous post just showed the > linking stage. Here is the full output from compiling the dvbhddevice > plugin and "-fPIC" is present during compilation of all object files. > > > Plugin dvbhddevice: > make[1]: Entering directory > `/home/rs/vdr-1.7.32/PLUGINS/src/dvbhddevice' > make[1]: Leaving directory > `/home/rs/vdr-1.7.32/PLUGINS/src/dvbhddevice' > make[1]: Entering directory > `/home/rs/vdr-1.7.32/PLUGINS/src/dvbhddevice' > g++ -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses -fPIC -c > -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE > -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"dvbhddevice"' > -I/mnt/storage/media_build_experimental/linux/include > -I../../../include dvbhddevice.c > g++ -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses -fPIC -c > -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE > -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"dvbhddevice"' > -I/mnt/storage/media_build_experimental/linux/include > -I../../../include dvbhdffdevice.c > g++ -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses -fPIC -c > -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE > -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"dvbhddevice"' > -I/mnt/storage/media_build_experimental/linux/include > -I../../../include hdffcmd.c > g++ -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses -fPIC -c > -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE > -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"dvbhddevice"' > -I/mnt/storage/media_build_experimental/linux/include > -I../../../include hdffosd.c > hdffosd.c: In member function â??virtual void cHdffOsd::DrawText(int, > int, const char*, tColor, tColor, const cFont*, int, int, int)â??: > hdffosd.c:258:9: warning: variable â??limitâ?? set but not used > [-Wunused-but-set-variable] > g++ -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses -fPIC -c > -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE > -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"dvbhddevice"' > -I/mnt/storage/media_build_experimental/linux/include > -I../../../include menu.c > g++ -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses -fPIC -c > -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE > -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"dvbhddevice"' > -I/mnt/storage/media_build_experimental/linux/include > -I../../../include setup.c > make -C libhdffcmd all > make[2]: Entering directory > `/home/rs/vdr-1.7.32/PLUGINS/src/dvbhddevice/libhdffcmd' > gcc -O3 -Wall -fPIC -shared -o libhdffcmd-0.1.0.so bitbuffer.o > hdffcmd_av.o hdffcmd_base.o hdffcmd_generic.o hdffcmd_hdmi.o > hdffcmd_mux.o hdffcmd_osd.o hdffcmd_remote.o > /usr/bin/ld: bitbuffer.o: relocation R_X86_64_PC32 against undefined > symbol `memset@@GLIBC_2.2.5' can not be used when making a shared > object; recompile with -fPIC > /usr/bin/ld: final link failed: Bad value > collect2: ld returned 1 exit status > make[2]: *** [libhdffcmd-0.1.0.so] Error 1 > make[2]: Leaving directory > `/home/rs/vdr-1.7.32/PLUGINS/src/dvbhddevice/libhdffcmd' > make[1]: *** [libvdr-dvbhddevice.so] Error 2 > make[1]: Leaving directory > `/home/rs/vdr-1.7.32/PLUGINS/src/dvbhddevice' > > The machine is running Fedora 16 64bit and gcc version 4.6.2 20111027 > (Red Hat 4.6.2-1) and I have no problem building vdr-1.7.31. If you would take a deeper look into your post you would have noticed that the mentioned file bitbuffer.o is not build to this time. It must have been build in a former stage. So there is still no proof that it has been build with -fPIC. Gerald
Hi Gerald, Gerald Dachs wrote: > If you would take a deeper look into your post you would have noticed > that the mentioned file bitbuffer.o is not > build to this time. It must have been build in a former stage. So there > is still no proof that it > has been build with -fPIC. > You are correct. It appears none of the object files in dvbhddevice/libhdffcmd are being built without -fPIC, whereas all other object files in all the other plugins are, so I will investigate further. Regards, Richard
--- PLUGINS/src/dvbhddevice/libhdffcmd/Makefile 2012/01/18 12:25:20 1.2 +++ PLUGINS/src/dvbhddevice/libhdffcmd/Makefile 2012/10/09 09:54:26 1.3 @@ -24,6 +24,18 @@ AR ?= ar ARFLAGS ?= r +### The directory environment: + +VDRDIR ?= ../../../.. + +### Make sure that necessary options are included: + +include $(VDRDIR)/Make.global + +### Allow user defined options to overwrite defaults: + +-include $(VDRDIR)/Make.config + ### Implicit rules: %.o: %.c