[OpenIndiana-discuss] Compiling Mosh for OI 151

Jonathan Adams t12nslookup at gmail.com
Tue May 1 18:27:08 UTC 2012


got the server compiled with a combination of creating "forkpty" from
http://bugs.mysql.com/bug.php?id=22429, //ing out the stdin/out/err
declarations and removing -lutil from the Makefile ...

The server runs and sits in memory, it forced me to set my locale to
something  UTF-8, however something doesn't work. when I try to
connect with the client it fails.

since I don't have a mosh server readily available for testing I
cannot tell if it is the client or the server that I've borked getting
it to compile :)

Jon

On 1 May 2012 17:27, Jonathan Adams <t12nslookup at gmail.com> wrote:
> ./src/statesync/completeterminal.cc and ./src/network/transportsender.cc
>
> #ifndef INT_MAX
> #define INT_MAX         2147483647      /* max value of an "int" */
> #endif
>
> ./src/util/fatal_assert.h and ./src/util/dos_assert.h
>
> #ifndef __STRING
> #define __STRING(x) #x
> #endif
>
> ./src/network/network.h and ./src/network/network.cc have a problem
> with "s_addr" in the arguments to "try_bind"
>
>    static bool try_bind( int socket, uint32_t my_s_addr, int port );
>
> ./src/frontend/stmclient.cc has "cfmakeraw" which has no direct
> solaris equivalent ... I commented it out and hoped for the best.
>
> I compiled with: ./configure --prefix=/opt/tools CFLAGS=-m64
> CXXFLAGS=-m64 LDFLAGS="-R/usr/gnu/lib/amd64 -L/usr/gnu/lib/amd64"
> LIBS="-lsocket -lnsl"
>
> it's compiled the client, but not the server ... completely untested
> ... might look later.
>
> Jon
>
> On 1 May 2012 14:26, Bryan N Iotti <ironsides.medvet at gmail.com> wrote:
>> I also tried to compile it, but couldn't get it to succeed...
>>
>> I had to compile protobuf and ncurses first, then symlink libncursestw.so to
>> libncurses.so otherwise it wouldn't find it, then it appeared to work away
>> for a while, only to crash miserably on a missing "," or "." in network.h.
>> Undeclared __STRING was the last error.
>>
>> I'll look into it again in a couple of days, might be an easy fix.
>>
>> Bryan
>>
>>
>> On 05/ 1/12 11:24 AM, Sriram Narayanan wrote:
>>>
>>> You'll also need to get protocol-buffers to work.
>>>
>>> -- Sriram
>>> Belenix: www.belenix.org
>>>
>>> On Tue, May 1, 2012 at 2:50 PM, Bryan N Iotti
>>> <ironsides.medvet at gmail.com>  wrote:
>>>>
>>>> Also, you might want to use the version of GCC that you find on SFE.
>>>>
>>>> The OI one in /usr/bin/gcc is version 3.4.3, while the one in SFE is
>>>> 4.6.2.
>>>> I have had better luck compiling with the latter as opposed to the
>>>> former.
>>>>
>>>> When you have multiple compilers installed, you can set the one you want
>>>> to
>>>> use for the project by providing the CC flag to the configure script or
>>>> as
>>>> an environment variable:
>>>>
>>>> ./configure CC="/usr/gcc/4.6/bin/gcc" will set you up to use the SFE
>>>> version
>>>> of gcc
>>>>
>>>> Otherwise, go to the Oracle website and download the Solaris Studio
>>>> compiler
>>>> tarfile. It works well, but some software won't compile cleanly on it
>>>> since
>>>> the source code uses "gcc-isms". When it works it's a painless process.
>>>> Also, the license states that it can be used for free for both personal
>>>> and
>>>> commercial uses. It also ships with its own IDE, a version of NetBeans.
>>>>
>>>> ./configure CC="/opt/solarisstudio12.3/bin/cc" will set you up with the
>>>> Oracle compiler.
>>>>
>>>> Again, I hope this helps.
>>>>
>>>>   Bryan
>>>>
>>>> On 05/ 1/12 01:24 AM, James C. McPherson wrote:
>>>>>
>>>>> On  1/05/12 09:08 AM, Robbie Crash wrote:
>>>>>>
>>>>>> Honestly, I think including this, I'm still on single digits with what
>>>>>> I've
>>>>>> had to compile from source, and definitely the only thing that I've
>>>>>> ever
>>>>>> had to figure out, so you not being a professional is still leaps and
>>>>>> bounds ahead of me.
>>>>>>
>>>>>> I'm using gcc installed via "pkg install gcc", which I assume means I'm
>>>>>> getting it from OI.
>>>>>>
>>>>>> I set the two variables as you recommended, with my paths, (export
>>>>>>
>>>>>>
>>>>>> PKG_CONFIG_PATH="/usr/lib/amd64/pkgconfig/:/usr/lib/pkgconfig/:/usr/share/p
>>>>>> kgconfig/" and export
>>>>>> LD_LIBRARY_PATH="/usr/lib/:/usr/lib/:/usr/lib/amd64/") and still
>>>>>> receive
>>>>>> the same error.
>>>>>
>>>>>
>>>>> ... more below
>>>>>
>>>>>>>> No package 'ncurses' found
>>>>>>>>
>>>>>>>> I have no idea what TINFO is, but from googling around, I find it has
>>>>>>>> something to do with ncurses as an independent provider for something
>>>>>>>
>>>>>>> (I'm
>>>>>>>>
>>>>>>>> terribly helpful, I know). I know ncurses is installed and that other
>>>>>>>> programs that are dependent on it work, and there are libs  in
>>>>>>>
>>>>>>> /usr/gnu/lib
>>>>>>>>
>>>>>>>> and /usr/gnu/lib/amd64.
>>>>>
>>>>>
>>>>> ...
>>>>>
>>>>>>>> But setting either doesn't fix anything. However, this is the first
>>>>>>>> time
>>>>>>>> I've run into issues with a configure script not working, so this is
>>>>>>>> probably me not actually doing things properly. Specifying my libdir
>>>>>>>> to
>>>>>>>> either /usr/gnu/lib or /usr/gnu/lib/amd64 doesn't help either.
>>>>>>>>
>>>>>>>> Does anyone have any ideas for where to go from here?
>>>>>
>>>>>
>>>>> You need to verify that the ncurses package is correctly installed,
>>>>> and then when running mosh's configure script, ensure that you have
>>>>> /usr/gnu/lib (assuming that's where your ncurses libs are) in your
>>>>> CFLAGS/CXXFLAGS via something like this:
>>>>>
>>>>> CFLAGS="-L/usr/gnu/lib" CXXFLAGS="-L/usr/gnu/lib" ; export CFLAGS
>>>>> CXXFLAGS
>>>>>
>>>>> It's preferable to get gcc to use an rpath rather than forcing
>>>>> LD_LIBRARY_PATH to include /usr/gnu/lib, but if that's what it
>>>>> takes, that's what it takes.
>>>>>
>>>>>
>>>>> James C. McPherson
>>>>> --
>>>>> Solaris kernel software engineer, system admin and troubleshooter
>>>>>              http://www.jmcp.homeunix.com/blog
>>>>> Find me on LinkedIn @ http://www.linkedin.com/in/jamescmcpherson
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> OpenIndiana-discuss mailing list
>>>>> OpenIndiana-discuss at openindiana.org
>>>>> http://openindiana.org/mailman/listinfo/openindiana-discuss
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> OpenIndiana-discuss mailing list
>>>> OpenIndiana-discuss at openindiana.org
>>>> http://openindiana.org/mailman/listinfo/openindiana-discuss
>>>
>>> _______________________________________________
>>> OpenIndiana-discuss mailing list
>>> OpenIndiana-discuss at openindiana.org
>>> http://openindiana.org/mailman/listinfo/openindiana-discuss
>>
>>
>>
>> _______________________________________________
>> OpenIndiana-discuss mailing list
>> OpenIndiana-discuss at openindiana.org
>> http://openindiana.org/mailman/listinfo/openindiana-discuss



More information about the OpenIndiana-discuss mailing list