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
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:261: error:
>> 'EADDRINUSE' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:262: error:
>> 'EADDRNOTAVAIL' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:263: error:
>> 'EISCONN' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:268: error:
>> 'EBADMSG' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:270: error:
>> 'ECONNABORTED' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:271: error:
>> 'EALREADY' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:272: error:
>> 'ECONNREFUSED' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:273: error:
>> 'ECONNRESET' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:275: error:
>> 'EDESTADDRREQ' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:283: error:
>> 'EHOSTUNREACH' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:284: error:
>> 'EIDRM' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:292: error:
>> 'EMSGSIZE' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:293: error:
>> 'ENETDOWN' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:294: error:
>> 'ENETRESET' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:295: error:
>> 'ENETUNREACH' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:296: error:
>> 'ENOBUFS' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:298: error:
>> 'ENOLINK' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:303: error:
>> 'ENOMSG' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:305: error:
>> 'ENOMSG' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:306: error:
>> 'ENOPROTOOPT' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:318: error:
>> 'ENOTSOCK' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:324: error:
>> 'ENOTCONN' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:326: error:
>> 'ENOTSUP' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:327: error:
>> 'ECANCELED' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:328: error:
>> 'EINPROGRESS' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:330: error:
>> 'EOPNOTSUPP' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:331: error:
>> 'EWOULDBLOCK' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:332: error:
>> 'EOWNERDEAD' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:334: error:
>> 'EPROTO' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:335: error:
>> 'EPROTONOSUPPORT' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:340: error:
>> 'ENOTRECOVERABLE' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:344: error:
>> 'ETIMEDOUT' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:346: error:
>> 'ETXTBSY' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:347: error:
>> 'ETIMEDOUT' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:351: error:
>> 'ELOOP' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:352: error:
>> 'EOVERFLOW' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:353: error:
>> 'EPROTOTYPE' was not declared in this scope
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h: In
>> function 'bool llvm::operator<(const llvm::error_condition&, const
>> llvm::error_condition&)':
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:458:
>> warning: suggest parentheses around '&&' within '||'
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h: In
>> function 'bool llvm::operator<(const llvm::error_code&, const
>> llvm::error_code&)':
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:517:
>> warning: suggest parentheses around '&&' within '||'
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h: At global
>> scope:
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\/system_error.h:555: error:
>> expected class-name before '{' token
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\KillTheDoctor.cpp:218:
>> warning: 'std::string QuoteProgramPathIfNeeded(llvm::StringRef)' defined but
>> not used
>>
>> M:\Development\Source\LLVM\utils\KillTheDoctor\KillTheDoctor.cpp:276:
>> warning: 'llvm::error_code EnableDebugPrivileges()' defined but not used
>
> 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
>
> ------------------------------------------------------------------------------
> 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
>
>

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.

Regards,
Kai

-- 
|  (\_/) This is Bunny. Copy and paste
| (='.'=) Bunny into your signature to help
| (")_(") him gain world domination

------------------------------------------------------------------------------
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

Reply via email to