pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: firefox52 fails to compile on linux sparc



On Sun, Jul 12, 2020 at 3:38 PM Connor McLaughlan <cont6pro3%gmail.com@localhost> wrote:
>
> On Fri, Jul 10, 2020 at 4:11 PM Connor McLaughlan <cont6pro3%gmail.com@localhost> wrote:
> > I am now almost there and reached linking.
> >
> > However it won't link:
> [...]
> >     INPUT("StaticXULComponentsEnd/StaticXULComponentsEnd.o")
> >
> > ../../build/unix/gold/ld: error:
> > /usr/pkgsrc/www/firefox52/work/build/toolkit/library/../../xpcom/reflect/xptcall/md/unix/xptcinvoke_asm_sparc_linux_GCC3.o:
> > multiple definition of 'NS_InvokeByIndex'
> > ../../build/unix/gold/ld:
> > /usr/pkgsrc/www/firefox52/work/build/toolkit/library/../../xpcom/reflect/xptcall/md/unix/xptcinvoke_asm_sparc_linux_GCC3.o:
> > previous definition here
> > ../../build/unix/gold/ld: error:
> > /usr/pkgsrc/www/firefox52/work/build/toolkit/library/../../xpcom/reflect/xptcall/md/unix/xptcstubs_asm_sparc_solaris.o:
> > multiple definition of 'SharedStub'
> > ../../build/unix/gold/ld:
> > /usr/pkgsrc/www/firefox52/work/build/toolkit/library/../../xpcom/reflect/xptcall/md/unix/xptcstubs_asm_sparc_solaris.o:
> > previous definition here
> > collect2: error: ld returned 1 exit status
> > make[3]: *** [/usr/pkgsrc/www/firefox52/work/firefox-52.9.0esr/config/rules.mk:802:
> > libxul.so] Error 1
> > make[3]: Leaving directory
> > '/usr/pkgsrc/www/firefox52/work/build/toolkit/library'
> > make[2]: *** [/usr/pkgsrc/www/firefox52/work/firefox-52.9.0esr/config/recurse.mk:71:
> > toolkit/library/target] Error 2
> > make[2]: Leaving directory '/usr/pkgsrc/www/firefox52/work/build'
> > make[1]: *** [/usr/pkgsrc/www/firefox52/work/firefox-52.9.0esr/config/recurse.mk:33:
> > compile] Error 2
> > make[1]: Leaving directory '/usr/pkgsrc/www/firefox52/work/build'
> > make: *** [/usr/pkgsrc/www/firefox52/work/firefox-52.9.0esr/config/rules.mk:523:
> > all] Error 2
> > *** Error code 2
> >
> > Stop.
> >
> > How can i avoid/fix those errors?
> >
> >
> > Regards,
> > Connor
>
> If i search my bmake console output, i see, that these libraries are
> included for linking two times, presumably resulting in the above
> error:
>
> /usr/pkgsrc/www/firefox52/work/firefox-52.9.0esr/config/rules.mk:903:
> target 'xptcinvoke_asm_sparc_linux_GCC3.o' given more than once in the
> same rule
> /usr/pkgsrc/www/firefox52/work/firefox-52.9.0esr/config/rules.mk:903:
> target 'xptcinvoke_asm_sparc_linux_GCC3.o' given more than once in the
> same rule
>     INPUT("../../xpcom/reflect/xptcall/md/unix/xptcinvoke_asm_sparc_linux_GCC3.o")
>     INPUT("../../xpcom/reflect/xptcall/md/unix/xptcinvoke_asm_sparc_linux_GCC3.o")
> ../../build/unix/gold/ld: error:
> /usr/pkgsrc/www/firefox52/work/build/toolkit/library/../../xpcom/reflect/xptcall/md/unix/xptcinvoke_asm_sparc_linux_GCC3.o:
> multiple definition of 'NS_InvokeByIndex'
> ../../build/unix/gold/ld:
> /usr/pkgsrc/www/firefox52/work/build/toolkit/library/../../xpcom/reflect/xptcall/md/unix/xptcinvoke_asm_sparc_linux_GCC3.o:
> previous definition here
>
> Unfortunately the linking seems to be done via python and the process
> uses a temporary file to record object-files which instantly gets
> deleted on failure.
>
> So for now i have no idea why this is happening and where i could
> start to fix it.
> I might try some different configure options, but currently i have no
> exact clue.
>
>
> Regards,
> Connor

Does anyone have an idea how the linker fetches the files to link and
possibly how to prevent multiple includes of the same file?

Files preceeded by INPUT like these?

INPUT("../../media/libstagefright/String16.o")
    INPUT("../../media/libstagefright/String8.o")
    INPUT("../../media/libstagefright/VectorImpl.o")
    INPUT("../../media/libstagefright/Unified_cpp_media_libstagefright0.o")
    INPUT("../../media/libstagefright/Unified_cpp_media_libstagefright1.o")
    INPUT("../../security/certverifier/Unified_cpp_certverifier0.o")
    INPUT("../../security/pkix/pkixbuild.o")
    INPUT("../../security/pkix/pkixcert.o")
    INPUT("../../security/pkix/pkixcheck.o")
    INPUT("../../security/pkix/pkixder.o")
    INPUT("../../security/pkix/pkixnames.o")
    INPUT("../../security/pkix/pkixnss.o")


I only figured that it is a python script that does it, but not what
goes wrong to include multiple definitions of the same:
/usr/pkgsrc/www/firefox52/work/build/toolkit/library/../../xpcom/reflect/xptcall/md/unix/xptcinvoke_asm_sparc_linux_GCC3.o:
multiple definition of 'NS_InvokeByIndex'

Regards,
Connor


Home | Main Index | Thread Index | Old Index