Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

openssh build with Strawberry Perl provided gcc

by nmork (Novice)
on Feb 15, 2013 at 19:58 UTC ( [id://1018955]=perlquestion: print w/replies, xml ) Need Help??

nmork has asked for the wisdom of the Perl Monks concerning the following question:

Any monks ever build openssh (the whole enchilada) using Strawberry Perl's provided mingw gcc compiler? Is it possible? Where can I go to find out this info? (Strawberry Perl's website forwards questions to PerlMonks among others.)

If anyone has attempted this, please lend me some guidance.

Replies are listed 'Best First'.
Re: openssh build with Strawberry Perl provided gcc
by VinsWorldcom (Prior) on Feb 15, 2013 at 20:13 UTC

    I haven't built openssh with the Strawberry provided MinGW gcc compiler, but I have built many other Win32 C / C++ projects with it.

    It does build standalone Win32 executables, i.e., they don't rely on Cygwin. So your project will need to have the appropriate Windows headers / libraries. Stuff like this:

    #ifndef WIN32 #include <sys/socket.h> #include <netinet/in.h> #include <netdb.h> #include <arpa/inet.h> #else #include <winsock2.h> #include <ws2tcpip.h> #endif

    And then link to Windows libraries like libws2_32.a (-lws2_32) ...

Re: openssh build with Strawberry Perl provided gcc
by dasgar (Priest) on Feb 15, 2013 at 20:36 UTC

    I'm not going to be much help on figuring how to build openssh with Strawberry Perl's tool set.

    However, I did want to point out that Strawberry Perl does come with the libssh2 library and the Net::SSH2 module. I'm not sure what your intended goal is, but would it be possible to leverage the included libssh2 library for what you're trying to accomplish?

      I'm not sure what your intended goal is,

      :) obviously it is to install the latest libssh2 with all the latest bug/security fixes, like libssh2 1.4.3 from November 27th 2012 instead of libssh2-1.4.2

        Might regret this, but I'll go ahead in case I might learn something in the process.

        From the OP: Any monks ever build openssh (the whole enchilada)...

        From your post: obviously it is to install the latest libssh2...

        Aren't libssh2 and openssh two different things that can be used to accomplish similar tasks? Also, if a person has one of the two properly built/installed, would it be a reasonable assumption that he/she can use that for most SSH related tasks without "needing" the other?

        Not being very familiar with libssh2 and openssh, the biggest difference that jumps out at me is that libssh2 only supports SSH version 2 protocol and it looks like openssh supports SSH versions 1 & 2 protocols.

        In any case, unless you are nmork and didn't log in before responding, I don't think the OP gave us enough info to say for sure why he/she is trying to build openssh on Windows. Is it to see if they can get it to build and work? Are they needing SSH version 1 protocol support? Are they wanting/needing modules the use openssh (such as Net::OpenSSH)? Other reasons? Can't speak for anyone else, but my mind-reading skills are non-existent.

        Anyways, my intent was to point out a possible alternative that might work for the OP.

Re: openssh build with Strawberry Perl provided gcc
by Anonymous Monk on Feb 15, 2013 at 20:23 UTC

    Any monks ever build openssh (the whole enchilada) using Strawberry Perl's provided mingw gcc compiler? Is it possible?

    No, it is not possible

    strawberryperl doesn't provide sh.exe (msys), so you can't run  ./configure, the standard installation dance

    Shortest distance to compilation is to install msys from citrusperl, fixup ..\msys\etc\fstab ..\msys\etc\profile as documented (there is no installer that does it yet),

    then startup msys.bat, cd to openssh directory, and follow standard autotools dance (  sh ./configure ... make install dance )

      strawberryperl doesn't provide sh.exe (msys), so you can't run ./configure , the standard installation dance

      Yes, but you could use Strawberry's gcc from within the msys shell. All it takes is:
      export PATH=/c/strawberry/c/bin:$PATH
      As I understand it, that's essentially how the Strawberry developers build many of the libs (eg libssh2, gmp, mpfr) that ship with Strawberry Perl.

      Cheers,
      Rob

        Yes, but you could use Strawberry's gcc from within the msys shell...

        No you couldn't

        As I understand it, that's essentially how the Strawberry developers build many of the libs (eg libssh2, gmp, mpfr) that ship with Strawberry Perl.

        I don't think so (sounds insane)

        You need sh to run autotools, otherwise you're poking in the dark, writing your own makefile -- and nobody does that, that is pointless busywork

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://1018955]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others taking refuge in the Monastery: (7)
As of 2024-03-29 00:07 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found