At the moment i have set up cygwin using its llvm package to learn with and, as i prefer developing in that unix style environment and using the command line i will stick with that for a bit. Since you say a 32bit llvm can generate 64bit binaries i also assume that they shouldnt require the cygwin runtime (cygwin1.dll) but if it does i could at that point switch to mingw with cygwin hopefully or if all else fails msvc. Just so long as i can output the binaries i want, standalone 64bit binaries, i dont mind what compiler toolchain or environment i use. However i do prefer cygwin for now cause its easy and unix like unless it shoots me in the foot with cygwin1.dll requirements. Not sure if i will be able to make a compiler that will be able to have a winmain to run the resulting binaries of my language without a console if asked. But that is way way ahead of me haha, sorry. I digress. Thanks Krysztof, it is very good to know finally so i can start working in my little project. -- View this message in context: http://llvm.1065342.n5.nabble.com/llvm-32bit-with-64bit-output-tp52769p52771.html Sent from the LLVM - Dev mailing list archive at Nabble.com.
On 12/20/2012 7:18 PM, Flexicat01 wrote:> At the moment i have set up cygwin using its llvm package to learn with and, > as i prefer developing in that unix style environment and using the command > line i will stick with that for a bit. Since you say a 32bit llvm can > generate 64bit binaries i also assume that they shouldnt require the cygwin > runtime (cygwin1.dll) but if it does i could at that point switch to mingw > with cygwin hopefully or if all else fails msvc.LLVM will only generate object files. You will need to link them to get the final executable. This will determine whether (and if) you need any special DLLs. If your language allows the programmer to call functions provided by the OS, or some emulation of Unix's libc, then you will need to have some sort of a runtime library. In the simplest scenario, the runtime will simply be the standard Windows DLLs (kernel32.dll, etc.). -Krzysztof -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation
On 12/20/2012 7:48 PM, Krzysztof Parzyszek wrote:> > LLVM will only generate object files. You will need to link them to get > the final executable. This will determine whether (and if) you need any > special DLLs.Correction: linking will associate your executable with specific libraries. Whether you need them or not will depend on the features that your language provides. -Krzysztof -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation