Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 8 years ago.
Improve this question
Are there any open-source 100% C++11 compatible(*) implementations of standard C++ library?
(*) An implementation which is proven to match the standard completely or an implementation which has no known defects.
There is no certification process, and C++11 is a moving target as defect reports continue to be processed, so I'm not sure your question is entirely meaningful. Or if it is, the answer is and always will be "No".
But (amongst others) the libstdc++ crew are doing a pretty good job of tracking the best known approximation of what the standard library should be.
You can look at libc++ of llvm, http://libcxx.llvm.org/, you can access the SVN repos from their Website and one of their main feature is "Correctness as defined by the C++11 standard"
The libc++ standard library team that is part of the LLVM project claim that they have a full C++1y compliant implementation.
Here you can see the status of the library .
There is one big cons with libc++ and it's the fact that libc++ it's not even nearly as popular as libstdc++v3 for now, for example no GNU/Linux distribution is adopting this standard library yet. It's not a secret the fact that the main focus of this library is on MAC OS X/FreeBSD, at least for now.
Related
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 9 years ago.
Improve this question
Recently I got a grasp of Microsoft's Standard Annotation Language (SAL) for annotating C/C++ source codes. This feature can be very helpful for debugging and during development but unfortunately it is not a portable cross-platform library. Is there any standard or open-source tool for annotating C/C++ codes? Is there a similar feature available in gcc?
The closest that I'm aware is GCC's attributes, but other compilers don't support the syntax. GCC attribute syntax does not support as many annotations as SAL, but you may find some of the annotations useful.
Alternatively, if you're using templates, you may want to check out Boost Static Assert, which most compilers support.
Also note that CLANG supports more annotations than GCC, and using CLANG's static analyzer may be closer to what you're wanting.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 9 years ago.
Improve this question
I'm starting with sockets in C++ but saw 4 different libraries (or includes) that allows one to use sockets, like winsock.h sys/sockets.h, sfml and boost. My question is, what is the library/include that I should use?
It's kind of hilarious, but there's no single widely accepted socket library for C++.
It's not part of the standard library
Boost ASIO sacrifices simplicity for high performance
SFML socket looks pretty nice but it still includes a bunch of other headers
Windows and POSIX OS sockets have annoying small differences
Some experienced network programmer should write a nice, one-header socket class with all the necessary conditional compilation flags to work on multiple OSes.
If you're using a UNIX-like operating system, use sys/socket.h. It's part of the open standard. For Windows, you'll need to use the Winsock library, so you'll have to include winsock2.h instead (here's the docs on how to use that library).
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 9 years ago.
Locked. This question and its answers are locked because the question is off-topic but has historical significance. It is not currently accepting new answers or interactions.
In our project now we using log4cxx, but those library don't develope some years, also we have some problems with it.
Could you advise some library for logging in C++.
Library must support multithreade logging, system-log.
Also it'll be good if it support logging via << operator.
Also lib license must be very democracy - like boost, apache etc
Crossplatform support. Must support linux, windows. Better if it support solaris, aix, hp-ux, but it's not necessary.
boost::log is probably the most versatile and well-written logging library I've seen. It's pretty complicated but really genius at the same time. And it does everything you can think of and then some more.
I use the glog library, by google (because I could not install Boost.Log easily). It is both simple to use and powerfull.
We use log4cplus in our company, it provides a complex hierarchical logging system (based on log4j). It seems to have everything you are asking for. It provides many appenders (I personally choose this library for the rolling files linux/windows and linux Syslog).
The library is quite simple to compile and deploy on both linux & windows And do the job no problem so far (about 4 years in production).
Only drawback, the lack of documentation but the code it quite self-explanatory. Good new is you could go to the log4j documentation page to understand how configurators/patterns/etc works ...
Check out pantheios!
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 9 years ago.
Improve this question
Could you suggest some open source tools that analyze C++ code and checks the following rules:
naming conventions,
file inclusions,
function design,
data types,
flow control,
memory allocation,
file handling,
portable code,
runs under Solaris or SUSE
http://www.google.com/search?q=misra+checker
Of course, if the rules you're trying to enforce don't exactly match someone else's idea of a coding standard, no existing tool is going to work.
It is still in early development (especially for C++) but its improving rapidly and is a really interesting open source project in a vibrant community. So see if the CLang Static Analyzer does what you need.
I have used coverity (http://coverity.com/)in my organization. It does static bug check analysis and I found it to be very useful. It is highly customization and provides a number of checks. I am not entirely sure if it works on solaris or not but I would recommend checking it out.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 9 years ago.
Improve this question
For my small hobby project I need to emit machine code from C++ program in runtime. I have base address 0xDEADBEEF and want to write something like this:
Assembler a((void*)0xDEADBEEF);
a.Emit() <<
Push(Reg::Eax) <<
Push(Reg::Ebx) <<
Jmp(0xFEFEFEFE);
Inline assembler isn't my choice because generated machine code is dependent of the program state.
Does anybody know any existing library for doing this? If no, would it be a good idea to develop one from scratch and make it open source? (I mean, will anybody ever use this library if it existed?)
Check out Asmjit. It seems to be the thing you're looking for.
You could use Nicolas Capen's softwire. Its really not supported any more as he now works on a similar product at Transgaming called SoftAsm. Still it kinda does what you want.
Edit June 2014: - It appears the sourceforge link above has been removed but it appears to be available under an LGPL license here.
This might be a overkill, because it supports many platforms, has its own intermediate language, does optimizations, etc, but the http://llvm.org/ seems to be a god try.