C++ Windows GUI/Linux Command Line Interface Submodule
Latest Version: 1.0.2
This is a (no longer so) simple password manager that runs on SQLAlchemy.
This is the C++ interface submodule.
Download scrypt-jane and move it to scrypt-jane/. Build it using gcc scrypt-jane.c -O3 -DSCRYPT_SALSA -DSCRYPT_SHA256 -c
.
Copy linux_cli/config_example.h to linux_cli/config.h.
Change the serverURL variable in linux_cli/config.h to your server URL.
Run linux_cli/build.sh. This should generate a binary called cli.
Building is split into 2 parts - MinGW for C++ building of Backend (a DLL) and Visual C# for GUI wrapper (an executable).
Download cryptopp 5.6.5 to cryptopp/.
Apply patch.
Apply patch.
Download scrypt-jane and move it to scrypt-jane/.
Note: Remove x86_64-w64-mingw32 if on Windows.
Build dependencies, then project:
cd cryptopp
make CXX=x86_64-w64-mingw32-g++ CC=x86_64-w64-mingw32-gcc AR=x86_64-w64-mingw32-ar RANLIB=x86_64-w64-mingw32-ranlib
cd ../scrypt-jane
x86_64-w64-mingw32-gcc scrypt-jane.c -O3 -DSCRYPT_SALSA -DSCRYPT_SHA256 -c
cd ../main
x86_64-w64-mingw32-g++ -static windows.cpp ../scrypt-jane/scrypt-jane.o -I.. -L../cryptopp -lcryptopp -O2 -shared -o windows.dll
Finish building Backend
Open C# project in windows_gui/ in Visual Studio
Build
Copy windows.dll to output directory where the final, built exe is
Run
- CryptoPP
- Scrypt-jane
- OpenSSL+libcURL
- (For building Windows GUI only) Visual Studio
Note: Dependencies are only required at runtime on Linux if not statically linked. On Windows, the binary should be statically linked and therefore no dependencies should be required.