Edward Diener wrote: On 3/3/2014 5:05 PM, Peter Dimov wrote:
Which of the many download options on the MingW-x64 site ( http://mingw-w64.sourceforge.net ) did you use.
I downloaded the mingw-builds setup, mingw-builds-install.exe, then chose, somewhat arbitrarily, the default x32 option, x32-4.8.1-posix-dwarf-rev5. Using x64 with SEH could have been a better idea. If you don't have another MinGW in C:\mingw, I'd recommend actually unpacking the mingw-builds installation there instead of using the installer which installs into a x32-4.8.1-posix-dwarf-rev5 subdirectory of whatever you tell it (C:\Program Files (x86)\mingw-builds by default). Clang looks into C:\mingw for the header files and that's apparently hardcoded, so it's best for the MinGW installation to live there.
What instructions did you follow to build the latest clang with MingW-x64 ? Was it also "cmake -G "MinGW Makefiles" ..\llvm" mentioned in your bug report ?
Yes, cmake -G "MinGW Makefiles" ..\llvm. I had to install cmake and Python first. Python isn't actually used during the build, but cmake complained when it couldn't find it. I also used -DCMAKE_BUILD_TYPE=Release in addition to -G, to make a release build.
How did you substitute -mthreads with -pthread for clang-linux.jam ?
I actually didn't, so the two smart_ptr tests that were marked as multithreaded failed. But I did compile them manually using clang++ -pthread to verify that they worked, and they did. I don't know much of boost-build so I had no idea how to make it pass -pthread. Now if only one of the MinGW teams could decide to bundle Clang so that we could skip all this :-)