Hello list, on the lld main page at http://lld.llvm.org, it says: "lld is in its early stages of development. It can currently self host on Linux x86-64 with -static." Is this information up-to-date? I'm interested in using lld on Windows (win32 on PC) with object files created by llvm (no clang involved). Is that possible at this time? It would be awesome to be able to create a compiler based on llvm that does not have any third party dependencies. Currently, to my knowledge, the linker is the only third party dependency left, is it? Or is an assembler required that is called by llvm that I am not aware of? Greetings, Daniel Albuschat
2013/10/31 Daniel Albuschat <d.albuschat at gmail.com>:> on the lld main page at http://lld.llvm.org, it says: > > "lld is in its early stages of development. > It can currently self host on Linux x86-64 with -static." > > Is this information up-to-date?I made a quick test on a Windows 8 64bit system: test.c: int main () { return 42; }> clang -c test.c > lld -flavor link test.o > .\test.exeThis application can not be run in Win32 mode. Maybe I can produce correct results by specifying -target, but I couldn't get it to even accept -flavor and -target arguments in the same command line.> lld -target x86_64-pc-win32 -flavor link test.owarning: ignoring unknown argument: -flavor Greetings, Daniel Albuschat
Hi Daniel, Thanks for testing lld on windows. This is really useful. On the status page, we are consistently testing Linux binaries with ELF to work on x86_64. They also work on other architectures too like Hexagon. Currently the windows link flavor doesnot handle targets, I am not sure of what kind of binaries it can run, but I have heard that it can build windows binaries and run them. I am adding Ruiu here, who has been working on making windows work on lld. Thanks Shankar Easwaran On 11/1/2013 4:51 AM, Daniel Albuschat wrote:> 2013/10/31 Daniel Albuschat <d.albuschat at gmail.com>: >> on the lld main page at http://lld.llvm.org, it says: >> >> "lld is in its early stages of development. >> It can currently self host on Linux x86-64 with -static." >> >> Is this information up-to-date? > I made a quick test on a Windows 8 64bit system: > > test.c: int main () { return 42; } >> clang -c test.c >> lld -flavor link test.o >> .\test.exe > This application can not be run in Win32 mode. > > Maybe I can produce correct results by specifying -target, but I > couldn't get it to even accept -flavor and -target arguments in the > same command line. > >> lld -target x86_64-pc-win32 -flavor link test.o > warning: ignoring unknown argument: -flavor > > Greetings, > Daniel Albuschat > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > >-- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by the Linux Foundation
On Fri, Nov 1, 2013 at 2:51 AM, Daniel Albuschat <d.albuschat at gmail.com>wrote:> 2013/10/31 Daniel Albuschat <d.albuschat at gmail.com>: > > on the lld main page at http://lld.llvm.org, it says: > > > > "lld is in its early stages of development. > > It can currently self host on Linux x86-64 with -static." > > > > Is this information up-to-date? > > I made a quick test on a Windows 8 64bit system: > > test.c: int main () { return 42; } > > clang -c test.c > > lld -flavor link test.o > > .\test.exe > This application can not be run in Win32 mode. >I think you need to add /subsystem:console for a console application. The current status of Windows port of LLD is that it can link a small program like yours or little bit more complicated ones. I haven't tried to self-host LLD, but I believe it cannot do yet. The linker depends on some third party tools, namely cvtres.exe and rc.exe, for resource file. I want to eliminate that dependency in the future, though. Maybe I can produce correct results by specifying -target, but I> couldn't get it to even accept -flavor and -target arguments in the > same command line. > > > lld -target x86_64-pc-win32 -flavor link test.o > warning: ignoring unknown argument: -flavor > > Greetings, > Daniel Albuschat > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20131101/aecfe4a4/attachment.html>
Reasonably Related Threads
- [LLVMdev] Current state of the lld project
- [LLVMdev] Current state of the lld project (support for writing .dll files)
- [LLVMdev] lld fails to build on Visual Studio 2013
- [LLVMdev] lld fails to build on Visual Studio 2013
- [LLVMdev] lld fails to build on Visual Studio 2013