Hi Kai - A minor question about error numbers...
On Sat, Oct 16, 2010 at 4:11 AM, Kai Tietz <[email protected]> wrote: > 2010/10/16 Ruben Van Boxem <[email protected]>: >> Hi, >> I have started trying to build Clang with mingw-w64 tools. The x64 build >> fails because an LLVM tool called tblgen is miscompiled, so I tried a x86 >> build instead for now. This works until the utterly final step, and some >> error types are undeclared: >>> >>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:260: error: >>> 'EAFNOSUPPORT' was not declared in this scope >>> ... >> I found most (if not all) of them >> in include\c++\4.4.5\x86_64-w64-mingw32\bits\error_constants.h, but they are >> cmmented out... How should I proceed? >> Thanks, >> Ruben >> ... > > Well, those symbols you are seeing are in fact POSIX error numbers, > which aren't present for native win32. So you have two chances here. > First define those error-numbers (see here errno.h). The other variant > is to modify Clang/LLVM in a way not to use those error-numbers. The > latter is the correct way to solve it, the first is more a hack and > can lead to other issues. I had one instance of a similar issuer with std::thread. mutex (the mutex header file) uses the value operation_not_permitted. Because this has a definition in error_constants.h that is commented out: // operation_not_permitted = EPERM, I assumed that it was perfectly appropriate and safe to fix the problem by uncommenting the line in question, thus defining operation_not_permitted. (Note, my problem is not fully analogous to Ruben's: for me, EPERM is defined, just not operation_not_permitted.) I hadn't realized that defining these error constants could cause issues. Is my current solution good and safe, or should I do something else? (In my case, it's just two lines in mutex that use just one constant, so just about any solution could be easily implemented.) Thanks. > Regards, > Kai > -- > | (\_/) This is Bunny. (Ho, Bunny! World domination ist nicht gestattet!) K. Frank ------------------------------------------------------------------------------ Download new Adobe(R) Flash(R) Builder(TM) 4 The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly Flex(R) Builder(TM)) enable the development of rich applications that run across multiple browsers and platforms. Download your free trials today! http://p.sf.net/sfu/adobe-dev2dev _______________________________________________ Mingw-w64-public mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
