How to build SRP for Win32 with Visual Studio 2017? - c++

I need to build Secure Remote Password protocol library (SRP/libsrp) for old project from 2010. I can't figure out how to build it for Win32.
I found this link with latest source code:
http://srp.stanford.edu/download.html
Version 2.1.2 was used in project. There is link for Win32-binaries, but it's dead.
So the only way to get binaries is to compile the source code.
In Win32\README was said to put OpenSSL includes and compiled libs in related folder (include, lib, etc.).
I can't figure out what version of OpenSSL should be used. On the web page was said something about patching version 1.0.0.0, but I used the latest version of OpenSSL.
Then it was said to open "srp_openssl.dsw" file (which is VC++ 6 Workspace) and rebuild everything to get binaries.
The result is hundreds of errors related to the obsolete language and related to the OpenSSL. Also need to take into account that OpenSSL changed library names.
So, is the only way - to use OpenSSL 1.0.0.0 and VC++ 6 to build SRP? Also, are there any binaries in the internet?

Related

libgit2 dependency pcre not present in build

I'm building a C++ app which uses the libgit2 library to interact with a git repo. I've installed libgit2 through vcpkg, which also installed the pcre library which libgit2 needs. So far, so good. When I build my project there is no issue, only when I launch the app it throws an error that pcre.dll is not present. This is correct, pcre.dll isn't in my output folder as none of my code has any interaction with it. Libgit2 needs it.
How can I get the dependency of the dependency to be included in my final build?
Pcre is present and accounted for, but none of my code uses it so it doesn't get included in the build of my app. The git2.dll does get included with the build. The paths that need to be added to Visual Studio are there, managed by vcpkg. Everything is setup so that pcre could be included in a build if need be.
I use libgit2 v 1.1.0, Visual Studio 2019 and the latest stable version of vcpkg.
I'm running into the same issue and have opened a PR: https://github.com/microsoft/vcpkg/pull/18289
Based on Neumann-A's feedback in the PR, it looks like there may be a bug preventing the pcre DLL from getting copied to the release/deployment files. For now, you're welcome to use my vcpkg fork which exposes the "builtin" REGEX_BACKEND CMake option, which works around this problem. https://github.com/motevets/vcpkg/tree/fix-libgit2

How do I build Qt 3.X.X on Windows?

I downloaded a project that depends on Qt 3.X.X (legacy version). I downloaded this version from the Qt downloads archive and set the environment variables according to what the documentation tells me. I can't build the program though. The errors I get are all along the lines of
Moc'ing SomeFile.h ...
The system cannot find the path specified.
Looking into the Qt /lib folder, there's just one README file that says
If this directory is empty, you forgot to build the Qt library
I'm assuming this is the reason I can't build my project, so I would like to know how to build this Qt version. The documentation is extremely limited since it's an old version, so I can't get it to work based on that.
Some system info:
Windows 10
x64
Visual Studio 2015 installed
If you need more info, please let me know!

fatal error: GL/gl.h: no such file or directory

So I am trying to get my first c++ app to run but i keep getting this error. The error originates from the freeglut_std.h file.
I have downloaded the freeglut 3.0.0 MinGW Package and placed the files inside their respective directories in my MinGW installation folder but there is no file called gl.h.
I have added the libraries to my project properties
I have checked the question that this should be a duplicate of but the solution given there, install Windows SDK, did not fix my problem.
Normally there's no need to download GL/gl.h; OpenGL is part of the Windows ABI contract, which means that every compiler toolchain that targets the Windows API must provision for compiling the OpenGL version that's specified for the Windows ABI. That would be OpenGL-1.1
If your MinGW installation lacks the GL/gl.h header, something is broken in your particular installation. Note that in some Linux distributions you may have to install the development support files separately. But with MinGW the OpenGL headers should be part of the standard installation.

How do I set up OpenCV for MinGW project?

I regularly use Code::Blocks and MinGW for my C/C++ projects. I would like to be able to use OpenCV, since it has a nice library for computer vision projects. They have dropped support for MinGW. I have heard you can build it on your own somehow, but I have no experience doing this with 3rd party libraries. Can someone explain how to build it in a simple way for MinGW?
There is, or at least there was at least until 2.4.6, precompiled version of opencv that works out of the box with mingw as long as you use the dw2(standard) version of mingw.
since i needed sjlj support i had to build my own version of openCV 2.4.6
I did he following - i am pretty sure it will work for the current openCV version as well
Setup your preferred Mingw Environment - i would strongly recommend to use gcc 4.5 or newer
Intstall Msys
Intall Cmake - you can get a binary package
Start the Cmake GUI
Select the openCV source folder
Click Configure and select MSYS-Makfiles
Errors in the first run of Configure might be resolved if you run Configure again
Click Generate
use MSYS make to run the generated makefile
Copy all desired libraries and include files to your mingw-installation or your project

Error Creating SSL Context - Qt

I tried everything mentioned in this Question
but nothing worked.
The binary works fine on Windows 64-bit, but almost always shows the error
Error Creating SSL Context()
on Windows 32-bit. I tried the demo http client example.
At last, I found the solution. I was downloading dll's from a dll website. You need to take these libraries
- libeay32.dll
- libssl32.dll
- ssleay32.dll
from this website here Win32 OpenSSL v1.0.2 file for 32 bit if you are using MSVC++ compiler
After installation of the above binary, copy the above three dll's in the the directory containing your binary file.
I recommend this source for OpenSSL Windows binaries. These binaries have no external dependencies and tested with 32-bit and 64-bit Qt5.
Update: OpenSSL 1.0 and 1.1 are not binary- and API-compatible. As of Qt 5.12 (certainly 5.12.4) version 1.1 seems the default OpenSSL backend in Qt, although I hear it can be configured to keep using 1.0.
I'm testing this source for Windows OpenSSL 1.1 builds, no problems so far: https://bintray.com/vszakats/generic/openssl