Marc J. Driftmeyer
2011-Aug-25 01:36 UTC
[LLVMdev] Changes to Debian's linker object files breaks building LLVM [crti.o, crt1.o, crtn.o]
I've got a simple workaround which obviously everyone will figure out: mdriftmeyer at horus:/usr/lib$ sudo ln -s x86_64-linux-gnu/crti.o crti.o mdriftmeyer at horus:/usr/lib$ sudo ln -s x86_64-linux-gnu/crt1.o crt1.o mdriftmeyer at horus:/usr/lib$ sudo ln -s x86_64-linux-gnu/crtn.o crtn.o My real question concerns whether or not I should file a bug report against Debian not having a transition path or other means in Debian's update-alternatives infrastructure to update those paths and make them available system-wide or whether LLVM needs to be aware of this move and update autotools configurations files for make to traverse. - Sincerely, Marc -- Marc J. Driftmeyer Email :: mjd at reanimality.com <mailto:mjd at reanimality.com> Web :: http://www.reanimality.com Cell :: (509) 435-5212 -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20110824/092d7bae/attachment.html> -------------- next part -------------- A non-text attachment was scrubbed... Name: mjd.vcf Type: text/x-vcard Size: 317 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20110824/092d7bae/attachment.vcf>
Eli Friedman
2011-Aug-25 02:15 UTC
[LLVMdev] Changes to Debian's linker object files breaks building LLVM [crti.o, crt1.o, crtn.o]
On Wed, Aug 24, 2011 at 6:36 PM, Marc J. Driftmeyer <mjd at reanimality.com> wrote:> I've got a simple workaround which obviously everyone will figure out: > > mdriftmeyer at horus:/usr/lib$ sudo ln -s x86_64-linux-gnu/crti.o crti.o > mdriftmeyer at horus:/usr/lib$ sudo ln -s x86_64-linux-gnu/crt1.o crt1.o > mdriftmeyer at horus:/usr/lib$ sudo ln -s x86_64-linux-gnu/crtn.o crtn.o > > My real question concerns whether or not I should file a bug report against > Debian not having a transition path or other means in Debian's > update-alternatives infrastructure to update those paths and make them > available system-wide or whether LLVM needs to be aware of this move and > update autotools configurations files for make to traverse.clang currently has some extremely ugly hacks to figure out how to link a program under Linux, and they tend to frequently break; see lib/Driver/ToolChains.cpp in clang. I think there's been some discussion of trying to do something more sane, but nobody has stepped up to do the work. -Eli
Marc J. Driftmeyer
2011-Aug-25 03:57 UTC
[LLVMdev] Changes to Debian's linker object files breaks building LLVM [crti.o, crt1.o, crtn.o]
Seeing as GCC 4.6 works without breaking to build LLVM instead of Clang I think I'm going to bug the Debian proper to make it easier for Clang/LLVM to get the linker update changes. After all, Debian's breaking an awful lot of stuff lately so it seems reasonable for them to add this to their To Do List. - Marc On 08/24/2011 07:15 PM, Eli Friedman wrote:> On Wed, Aug 24, 2011 at 6:36 PM, Marc J. Driftmeyer<mjd at reanimality.com> wrote: >> I've got a simple workaround which obviously everyone will figure out: >> >> mdriftmeyer at horus:/usr/lib$ sudo ln -s x86_64-linux-gnu/crti.o crti.o >> mdriftmeyer at horus:/usr/lib$ sudo ln -s x86_64-linux-gnu/crt1.o crt1.o >> mdriftmeyer at horus:/usr/lib$ sudo ln -s x86_64-linux-gnu/crtn.o crtn.o >> >> My real question concerns whether or not I should file a bug report against >> Debian not having a transition path or other means in Debian's >> update-alternatives infrastructure to update those paths and make them >> available system-wide or whether LLVM needs to be aware of this move and >> update autotools configurations files for make to traverse. > clang currently has some extremely ugly hacks to figure out how to > link a program under Linux, and they tend to frequently break; see > lib/Driver/ToolChains.cpp in clang. I think there's been some > discussion of trying to do something more sane, but nobody has stepped > up to do the work. > > -Eli-- Marc J. Driftmeyer Email :: mjd at reanimality.com <mailto:mjd at reanimality.com> Web :: http://www.reanimality.com Cell :: (509) 435-5212 -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20110824/2990290e/attachment.html> -------------- next part -------------- A non-text attachment was scrubbed... Name: mjd.vcf Type: text/x-vcard Size: 317 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20110824/2990290e/attachment.vcf>
Marc J. Driftmeyer
2011-Aug-26 00:58 UTC
[LLVMdev] Changes to Debian's linker object files breaks building LLVM [crti.o, crt1.o, crtn.o]
Debian's response I enclose to see if this helps out:> reassign 639214 general > forcemerge 637232 639214 > quit > > Hi Marc, > > Marc J. Driftmeyer wrote: > >> With the most recent changes of moving the object files under >> /usr/lib/x86_64-linux-gnu/ the linker to build Clang/LLVM breaks. >> >> A workaround is to add symlinks for crt1.o, crti.o and crtn.o back >> under /usr/lib. > From /usr/share/doc/libc6/NEWS.Debian.gz: > > Starting with the eglibc package version 2.13-5, the libraries are > shipped in the multiarch directory/lib/$arch instead of the more > traditional /lib. Similarly the includes are now shipped in > /usr/include/$arch instead of the more traditional /usr/include. > > The toolchain in Debian has been updated to cope with that, and most > build systems should be unaffected. If you are using a non-Debian > toolchain to build your software and it is not able to cope with > multiarch, you might try to pass the following option to your > compiler: > > -B/usr/lib/$arch -I/usr/include/$arch > > Does clang support similar options? > > See alsohttp://llvm.org/bugs/show_bug.cgi?id=6541 which suggests to > me that upstream is interested in out-of-the-box support for the new > paths. > > Reassigning to "general" and merging with the relevant bug, since this > is far from a libc-specific problem. See [1] for some background. > > Thanks and hope that helps, > Jonathan > > [1]http://wiki.debian.org/Multiarch- Marc On 08/24/2011 06:36 PM, Marc J. Driftmeyer wrote:> I've got a simple workaround which obviously everyone will figure out: > > mdriftmeyer at horus:/usr/lib$ sudo ln -s x86_64-linux-gnu/crti.o crti.o > mdriftmeyer at horus:/usr/lib$ sudo ln -s x86_64-linux-gnu/crt1.o crt1.o > mdriftmeyer at horus:/usr/lib$ sudo ln -s x86_64-linux-gnu/crtn.o crtn.o > > My real question concerns whether or not I should file a bug report > against Debian not having a transition path or other means in Debian's > update-alternatives infrastructure to update those paths and make them > available system-wide or whether LLVM needs to be aware of this move > and update autotools configurations files for make to traverse. > > - Sincerely, > > Marc > > -- > Marc J. Driftmeyer > Email :: mjd at reanimality.com <mailto:mjd at reanimality.com> > Web :: http://www.reanimality.com > Cell :: (509) 435-5212 > > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev-- Marc J. Driftmeyer Email :: mjd at reanimality.com <mailto:mjd at reanimality.com> Web :: http://www.reanimality.com Cell :: (509) 435-5212 -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20110825/ffb83d42/attachment.html> -------------- next part -------------- A non-text attachment was scrubbed... Name: mjd.vcf Type: text/x-vcard Size: 317 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20110825/ffb83d42/attachment.vcf>
James Molloy
2011-Aug-26 07:35 UTC
[LLVMdev] Changes to Debian's linker object files breaks building LLVM [crti.o, crt1.o, crtn.o]
Hi,> Does clang support similar options?Yes, Clang supports the -B option. Have you tried emailing cfe-dev at cs.uiuc.edu? That's where the Clang developers (that aren't LLVM devs) hang out. Cheers, James From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On Behalf Of Marc J. Driftmeyer Sent: 26 August 2011 01:59 To: llvmdev at cs.uiuc.edu Subject: Re: [LLVMdev] Changes to Debian's linker object files breaks building LLVM [crti.o, crt1.o, crtn.o] Debian's response I enclose to see if this helps out: reassign 639214 general forcemerge 637232 639214 quit Hi Marc, Marc J. Driftmeyer wrote: With the most recent changes of moving the object files under /usr/lib/x86_64-linux-gnu/ the linker to build Clang/LLVM breaks. A workaround is to add symlinks for crt1.o, crti.o and crtn.o back under /usr/lib.>From /usr/share/doc/libc6/NEWS.Debian.gz:Starting with the eglibc package version 2.13-5, the libraries are shipped in the multiarch directory /lib/$arch instead of the more traditional /lib. Similarly the includes are now shipped in /usr/include/$arch instead of the more traditional /usr/include. The toolchain in Debian has been updated to cope with that, and most build systems should be unaffected. If you are using a non-Debian toolchain to build your software and it is not able to cope with multiarch, you might try to pass the following option to your compiler: -B/usr/lib/$arch -I/usr/include/$arch Does clang support similar options? See also http://llvm.org/bugs/show_bug.cgi?id=6541 which suggests to me that upstream is interested in out-of-the-box support for the new paths. Reassigning to "general" and merging with the relevant bug, since this is far from a libc-specific problem. See [1] for some background. Thanks and hope that helps, Jonathan [1] http://wiki.debian.org/Multiarch - Marc On 08/24/2011 06:36 PM, Marc J. Driftmeyer wrote: I've got a simple workaround which obviously everyone will figure out: mdriftmeyer at horus:/usr/lib$ sudo ln -s x86_64-linux-gnu/crti.o crti.o mdriftmeyer at horus:/usr/lib$ sudo ln -s x86_64-linux-gnu/crt1.o crt1.o mdriftmeyer at horus:/usr/lib$ sudo ln -s x86_64-linux-gnu/crtn.o crtn.o My real question concerns whether or not I should file a bug report against Debian not having a transition path or other means in Debian's update-alternatives infrastructure to update those paths and make them available system-wide or whether LLVM needs to be aware of this move and update autotools configurations files for make to traverse. - Sincerely, Marc -- Marc J. Driftmeyer Email :: mjd at reanimality.com Web :: http://www.reanimality.com Cell :: (509) 435-5212 _______________________________________________ LLVM Developers mailing list LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev -- Marc J. Driftmeyer Email :: mjd at reanimality.com Web :: http://www.reanimality.com Cell :: (509) 435-5212 -- IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
Possibly Parallel Threads
- [LLVMdev] Changes to Debian's linker object files breaks building LLVM [crti.o, crt1.o, crtn.o]
- [LLVMdev] Changes to Debian's linker object files breaks building LLVM [crti.o, crt1.o, crtn.o]
- [LLVMdev] Changes to Debian's linker object files breaks building LLVM [crti.o, crt1.o, crtn.o]
- [LLVMdev] Building past few days with Clang++ and Clang produces errors on Cmake for Debian Linux
- [LLVMdev] Builds failing on lldb with the following for well over a week on a new build folder