Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
Home » Developing U++ » UppHub » Upp package binding for LLVM/Clang library (libclang)
Re: Upp package binding for LLVM/Clang library (libclang) [message #43018 is a reply to message #43016] Wed, 23 April 2014 14:56 Go to previous message
Sender Ghost is currently offline  Sender Ghost
Messages: 301
Registered: November 2008
Senior Member
Hello Mirek.
mirek wrote on Wed, 23 April 2014 13:18
How good is clang on windows nowadays?

In my experience, it depends from particular LLVM/Clang version. Latest 3.3 and 3.4 release versions have some exception errors for started applications, while some development versions runs without errors.

For example, LLVM/Clang v3.5 devel from 43006 message is able to build U++ "Simple address book application" (download), TheIDE (download) in single-threaded optimal mode.
But TheIDE in multi-threaded optimal mode fails with following error(s):
Toggle error(s)

So, without further investigation, it's not quite possible to build multi-threaded applications on Windows operating system.

There are other issues, like compile/runtime speed, executable sizes, etc.

There is a possibility to build Clang by Clang compiler, may be even MinGW libraries by Clang compiler (but not sure, because of some unsupported GCC extensions on Clang). There are LLVM linker and "libc++" C++ Standard Library in development. I didn't test them on Windows to say about results.

Personally, I have successful experience on FreeBSD with LLVM/Clang. It's more mature here, than on Windows. But from development point of view, this all was required to adapt/patch many FreeBSD ports by developers/maintainers.

mirek wrote on Wed, 23 April 2014 13:18
Would that be viable?

The idea is interesting, but realisation is complicated, in current development stage.
You could try it out, may be even with Visual C++ compiler, as Uno said. Then it will be possible to get more affirmative answer.

Edit:
I tried clang-cl.exe with MSC9 builder with following application:
Toggle source code

And got following errors:
Toggle errors

To be able change compiler name for TheIDE to "clang-cl", I changed MSC builder with following source code:
Toggle changes

This changes are not needed if you copy clang-cl.exe to cl.exe or use cl.exe from llvm\msbuild-bin path. They are the same executables, but with different names, which activates Visual C++ or GCC (in case of clang++.exe) driver mode (as shown on tools/driver/driver.cpp 218, 224 and 227 lines).

[Updated on: Fri, 25 April 2014 10:44]

Report message to a moderator

 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: PieChart: Title disable
Next Topic: LedLabel new package
Goto Forum:
  


Current Time: Sun May 05 13:55:34 CEST 2024

Total time taken to generate the page: 0.01606 seconds