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
Does anyone know zip library of C/C++ in public domain license?
It meets the following requirements.
It operates by the unit like stb_image.c library
Supported cross platform. Windows, Mac, Linux and so on.
Language is C/C++
License is public domain.
I'd recommend ZipLib.
Personal reasons why I love this project:
built around c++11 stl streams (e.g. decompresses into STL streams!)
lightweight (no dependencies other than zlib)
can be used on both windows & linux
It took me a long time to find this project -- hope this helps someone.
It didn't yet exist when the question was asked. But it does now: miniz - public domain, single C file, explicitly inspired by the likes of stb_image.
The most popular open source zip implementation is Info-Zip. Deflate algorithm used in zip file format is implemented by zlib library. Both are released on liberal, BSD-like license, but not public domain.
It's not public domain, but Minizip, which is included with zlib, meets your other three requirements. It also contains miniunz.c, a very easy to follow zip/unzip example.
The closest I can think of would be Xz-utils, which uses the public domain LZMA SDK. It's not zip, per se, nor does it use the deflate algorithm, but it is one of the few compression libraries in the public domain.
Public Domain is the LZMA sdk from 7z
http://www.7-zip.org/sdk.html
Problem: the documentation is "not existing" :-(
http://www.bzip.org/ is pretty common and a requirement of tons of easy_installs in multiple target languages.
Update:
I realize this is wrong, but it's a common misunderstanding, so I'm leaving it up as a sentinel to describe a frequent error.
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 8 years ago.
Improve this question
I wonder, what library you would choose for the following:
I need to be able to combine a bunch of files and folders (a tree of filesystem structure) into one file - archive, thus having one composite file.
the library must be cross-platform: Windows 7 and Linux
it must provide access to the content and ability to extract only one file (e.g. if I have an archive of data folder and if I need only data/subdata/file, only it should be extracted)
it must have C++ (preferably) or C API
I am not particularly keen on archiving, but it would be desirable, since I will be storing mostly text files and they compress well...
Any feedback is highly appreciated!
zlib in combination with Boost Iostreams is a great combination. This does not do file level extraction though.
EDIT:
Some other options I found via another SO question include:
Zipios++
QuaZIP - Requires QT, may not build on Windows
correctly
EDIT2:
Minizip (usually included with zlib) will do the trick too - probably the most lightweight and commonly used solution.
Consider libarchive.
http://gnuwin32.sourceforge.net/packages/libarchive.htm
zlib is probably the safe answer.
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 8 years ago.
Improve this question
I need to put some 3D images into PDF files, and PDF uses Universal 3D (U3D) formats. I don't like the U3D Sourceforge project (basically what Intel released after the ECMA standardization effort).
Does anybody know of good U3D libraries I could use? I'm using C++ on Microsoft Windows, FWIW.
VCGLib is a mesh processing library that has a U3D exporter and a variety of importers (see http://vcg.sourceforge.net/index.php/Tutorial#File_Formats). MeshLab is a tool built on top of it.
Another answer would be Visual Technology Services with PDF3D (PDF link). I've started evaluating it and I like what I see so far.
I agree with your position of not liking the U3D sourceforge project. People at my company is having problems with it when exporting large models: it runs out of memory.
The project has explicitly stated that it has memory issues on its TODO list and is dead since 2007, so I strongly recommend you to go elsewhere.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Closed 8 years ago.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Questions asking us to recommend or find a book, tool, software library, tutorial or other 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.
Improve this question
While raknet seems fairly interesting and really appealing from a feature-point of view, its licensing terms seem to be possibly troublesome for GPL'ed projects that may be leveraged commercially, something which is explicitly forbidden by the terms of the creative commons license.
While there's also opentnl, it doesn't seem to be as actively maintained anymore nowadays, in fact downloading the latest stable tarball even fails during compilation because it doesn't seem to support gcc >= 3.0 (?)
Of course, there's still also enet, but this one cannot be really compared to the abstract features that are supported by raknet/opentnl.
So, apart from any non-trivial dependencies such as ACE, Boost or Poco, are there any viable alternatives for embedding a fairly compact, well-maintained UDP-networking library?
Thanks
The wiki of Ogre3D provides a list of networking libraries and a short description for them.
Though this answer comes late to the party, I'm using OpenTNL for my game, Bitfighter, and I really like it. I use it on OS X, Windows, and Linux without a hitch. True, it's not maintained by its creator, but when I get the time, I'm going to create a new SourceForge project for it so people have a place to post their patches. It's stable and (fairly) well documented, so I would recommend giving it another look.
I have been looking for something very similar, but to no avail. So, I decided to create my own C++ Networking Library, at the time of this writing it isn't complete, but will be very soon. I will keep you up to date if your interested in trying it out. It's features so far are TCP/UDP, IPv4, IPv6 Async/Sync and multicasting. If there are any other features you have in mind that should be implemented, just let me know :)
Unfortunately network programming tends to be non-trivial.
Said that you would be advised to get aquainted with the network programming facilities from either Boost or ACE, as both are mature libraries that have been successfully employed in many applications.
I would also suggest to read C++ Network Programming: Mastering Complexity Using ACE and Patterns and C++ Network Programming: Systematic Reuse with ACE and Frameworks
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 am developing a Win32 application and I would like to use an RSA encryption library. Which library would you recommend?
If you're using Win32, why don't you simply use the built-in win32 crypto-API?
Here's a little example how it works in practice:
http://www.codeproject.com/KB/security/EncryptionCryptoAPI.aspx
Crypto++ - They have NIST FIPS validated dll's for MSVC 6, 7.1, and 8 on top of the normal source code self built packages.
I think OpenSSL is a good choice. It's well-maintained, and the price is right :)
http://www.openssl.org
I use the following library:
http://www.efgh.com/software/rsa.htm
It's public domain, compact, self contained, and does the work well.
Maybe Botan is an alternative? It is a C++ library with a BSD license that supports RSA algorithms.
As an alternative, consider LibTomCrypt (https://github.com/libtom/libtomcrypt)
Another alternative is libbeecrypt. A very mature product with assembler implementations on many platforms.
I have used OpenSSL in past and found it a great library for crypto APIs including AES, RSA, 3DES.
I would recommend Miracl library https://certivox.com/solutions/miracl-crypto-sdk/ but the price is high.