This project is a (criminal) database management system, originally written in C++98/11. The project was submitted by me for the partial fulfilment of AISSCE 2019 practical exam. Since submission, I have worked on this project to improve it alongwith my skills in C++. The project is now using C++17. The code is still not much appreciable though, but indeed better than earlier version, and now involves many new things.
Under Development - open for code reviews and bug reports
Microsoft Windows (10, recommended)
mingw-w64 (i686-7.3.0-posix-dwarf-rt_v5-rev0, recommended)
crypto++ (8.2, recommended)
https://github.com/weidai11/cryptopp/archive/CRYPTOPP_8_2_0.zip
-
Extract the downloaded .7z file to
C:\mingw-w64\i686-7.3.0-posix-dwarf-rt_v5-rev0\
-
Open
cmd
with admin privileges and run:setx /m PATH "C:\mingw-w64\i686-7.3.0-posix-dwarf-rt_v5-rev0\mingw32\bin;%PATH% set PATH=C:\mingw-w64\i686-7.3.0-posix-dwarf-rt_v5-rev0\mingw32\bin;%PATH%"
-
Extract the downloaded .zip file to
C:\
-
Now run on
cmd
:cd "C:\cryptopp-CRYPTOPP_8_2_0" mingw32-make md "C:\mingw-w64\i686-7.3.0-posix-dwarf-rt_v5-rev0\mingw32\lib\gcc\i686-w64-mingw32\7.3.0\include\c++\cryptopp" copy *.h "C:\mingw-w64\i686-7.3.0-posix-dwarf-rt_v5-rev0\mingw32\lib\gcc\i686-w64-mingw32\7.3.0\include\c++\cryptopp" copy /b *.a "C:\mingw-w64\i686-7.3.0-posix-dwarf-rt_v5-rev0\mingw32\lib\gcc\i686-w64-mingw32\7.3.0"
-
You're now ready to go!
Open CMD on the cloned directory and run make
Ensure that g++
is added to system PATH
variable;
you can check this by running g++ --version
on a freshly opened CMD shell.
The software will not compile on g++ 8.x
because of a bug in the compiler which prevents the use of filesystem
library.
If you are compiling this on g++ 9.x
or above, you first need to change line 23-27
of constants.h
with this:
#ifndef _GCC_VERSION_MORE_THAN_8_
#define _GCC_VERSION_MORE_THAN_8_
#endif
and also line 5 of generator.cpp
with
#define _GCC_VERSION_MORE_THAN_8_
The settings for C++ IntelliSense Extension for Visual Studio Code (ms-vscode.cpptools
) are present under .vscode > c_cpp_properties.json
. You just need to change the compilerPath
and includePath
settings there.
- Crypto++ by Wei Dai (@github/weidai11) used under the Boost Software License, Version 1.0, August 17th, 2003 ((c) 2019).
- CSPRNG by Michael Thomas Greer (@github/Duthomhas) used under the Boost Software License, Version 1.0, August 17th, 2003 ((c) 2017).
- rlutil.h by Tapio Vierros (@github/tapio) used under the WTFPL, Version 2, December 2004 ((c) 2010).