[mosh-users] Mosh-1.2.4 compilation issues on OpenBSD 5.3 (missing pselect)

Jérémie Courrèges-Anglas jca+mosh at wxcvbn.org
Sun Oct 13 05:26:24 EDT 2013


Hi folks,

Keith Winstein <keithw at mit.edu> writes:

> Damon,
>
> Jérémie (cc:ed here) has been very helpful in getting Mosh packaged
> and buildable on OpenBSD. Maybe he can help us understand the
> situation with the "pkg_add mosh" and whether we should clarify the
> Web page. Or perhaps we just need to make another release including
> Jeremie's patches to workaround the lack of pselect() in some versions
> of OpenBSD. (The patches landed in Git in April but we haven't done a
> release since then.)

Well, there were some endianness functions and #includes fixes too, and
I'm all for getting rid of local patches. :)

Damon: in the meantime I would build mosh from git.  If you can't, use
the following port that *might* be ok for OpenBSD 5.3 (you have to
unpack it in /usr/port/mystuff, so that you get
a /usr/ports/mystuff/net/mosh directory).

Also OpenBSD 5.4 is around the corner and will ship with a working mosh
package -- unless you run some ARM flavor, but that's another mail
for mosh-devel.

> Cheers,
> Keith
>
> On Sat, Oct 12, 2013 at 7:59 PM, Keith Winstein <keithw at mit.edu> wrote:
>> Hello Damon,
>>
>> Please try compiling Mosh from the Git repository.
>>
>> Best regards,
>> Keith
>>
>> On Oct 12, 2013 6:48 PM, "Damon Getsman" <damo.gets at gmail.com> wrote:
>>>
>>> Hello, everybody.  I just dug through the archives looking to see if there
>>> might have been any workaround to this, but I haven't seen anything.  The
>>> mosh website says that there is an OpenBSD pre-compiled package available
>>> for mosh, but I guess that must've been a few versions ago, as I haven't
>>> seen anything in the 5.x repositories as far as mosh, nor in the ports
>>> directories.
>>>
>>> So anyway, I took it upon myself to compile things from scratch.
>>> Everything went well up until ::pselect() was undeclared.  Here's the exact
>>> compiler error:
>>>
>>> contract:/usr/src/mosh-1.2.4$ make
>>> make  all-recursive
>>> Making all in src
>>> Making all in protobufs
>>> make  all-am
>>> Making all in util
>>>   CXX    select.o
>>> In file included from select.cc:33:
>>> select.h: In member function 'int Select::select(int)':
>>> select.h:139: error: '::pselect' has not been declared
>>> *** Error 1 in src/util (Makefile:288 'select.o': @echo "  CXX   "
>>> select.o;g++ -DHAVE_CONFIG_H -I. -I../..     -Wall  -fno-strict-overflow
>>> ...)
>>> *** Error 1 in src (Makefile:296 'all-recursive')
>>> *** Error 1 in . (Makefile:337 'all-recursive')
>>> *** Error 1 in /usr/src/mosh-1.2.4 (Makefile:255 'all')
>>>
>>> Anyway, I've found a couple of potential workarounds.  First, there is one
>>> found at
>>> http://openbsd.7691.n7.nabble.com/PATCH-net-mosh-and-pselect-td227394.html ;
>>> unfortunately, this appears to apply to a version of mosh found in an
>>> OpenBSD that has mosh in /usr/ports, which my 5.3 system most certainly does
>>> not.
>>>
>>> Second, I did find raw source code for a pselect() function, but I'm not
>>> really sure if it's going to be compatible with what this particular
>>> application is going to use it for, it's been awhile since I worked with
>>> C/C++.  I found that at
>>> ftp://ftp.fr.openbsd.org/pub/OpenBSD/src/usr.sbin/nsd/compat/pselect.c , but
>>> it was provided as a pselect() for 'nsd', not for any generic package.
>>>
>>> Anyway, any help that you guys could point me to or suggestions you can
>>> offer would very much be appreciated.  Mosh rocks and I really want to have
>>> it on my only externally-facing system (the BSD one).  Thanks in advance!
>>>
>>> -Damon Getsman
>>>
>>> _______________________________________________
>>> mosh-users mailing list
>>> mosh-users at mit.edu
>>> http://mailman.mit.edu/mailman/listinfo/mosh-users
>>>
>>

-- 
jca | PGP : 0x06A11494 / 61DB D9A0 00A4 67CF 2A90  8961 6191 8FBF 06A1 1494



More information about the mosh-users mailing list