Search code examples
c++visual-studio-2010libssh

How to use libssh in VS10


How can I implement libssh as a library my compiler will recognize? I'm using Visual Studio 2010 C++, and I've included the Boost library with no problems, but the process I did with Boost is strange, I can tell libssh will be different.

I really don't want to do a DLL file, I want one executable, however I know that DLL files can be embedded inside of executables through .rc scripting. (Then extract and load)

I've never had to include a library except for Boost into any of my projects, I feel like I should really know how to do this. Please note this is libssh not libssh2. Thanks.


Solution

  • Even if the post is old i have an answer, maybe it can be helpful for someone dropping here.

    To implement libssh into Visual Studio 2010.

    You will need more than just one library you will need 3 to be sure everything will compile well. First download the last version of libssh After this you will need 2 more dll, to be allow to compile without issue:

    • libeay32.dll
    • zlib1.dll

    For the first one it wasn't recognize very well for me, so i just took the full library of openssl openssl-0.9.8k_WIN32.zip

    After you have dowloaded those files place them into the rigth place in Visual studio.

    go to

    • C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC

    To open the visual studio for the language C -> VC Then :

    • Copy the folder with the include in C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include paste the folder libssh\include (containing all .h file)
    • Copy the file ssh.lib into C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\lib
    • Copy ssh.dll C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin

    Copy libeay32.dll and zlib1.dll into the bin folder. Or if you downloaded openssl which I recommend then you just do the same proces ass for lib ssh just dont forget to copy also the .exe file into the bin folder with the dll.

    It is not finished yet after that you'll have to link the libraries into the compiler of your project.

    Project -> projectName properties a windows open with properties then go -> Configuration Properties -> Linker -> input -> Additional Dependencies.

    Now add the following libraries into the dependencies

    ;ssh.lib;ssleay32.lib;libeay32.lib;

    And then it was working very well

    I hope that it can help someone dropping by here :)