Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

wxMaxima no longer works on OpenBSD. #339

Open
vext01 opened this issue Jul 20, 2014 · 1 comment
Open

wxMaxima no longer works on OpenBSD. #339

vext01 opened this issue Jul 20, 2014 · 1 comment

Comments

@vext01
Copy link

vext01 commented Jul 20, 2014

Not sure if this is a wxWidgets bug or a wxMaxima bug, but here it is. I'm pasting this in from a mailing list post (openbsd ports):
http://marc.info/?l=openbsd-ports&m=140587945502296&w=2

> > Hi
> > 
> > I was trying to use wxMaxima (-current, amd64) and it fails to start
> > (and connect to) maxima. Actually it fails to start it, as no 'maxima'
> > process is created. I also tried starting xmaxima (the only way I could
> > find to start maxima as a server) and then running wxMaxima listening on
> > the same port, but it also won't connect. maxima and xmaxima work
> > perfectly.
> > 
> > Is this a known problem? How can I help further (caveat: all I know
> > about lisp is that apparently it involves a lot of parenthesis)?
> 
> Thanks for the report.I see the same here.
> 
> Investigating...

So it works the opposite way around to what you might expect. wxMaxima
is the server and maxima is the client.

Looks like wxMaxima uses a wx routine to start a server but encounters
an exception:

Breakpoint 1, wxMaxima::InitSession (this=0x87f082e1800) at wxMaxima.cpp:244
244       int defaultPort = 4010;
(gdb) r
The program being debugged has been started already.
Start it from the beginning? (y or n) n
Program not restarted.
(gdb) n
246       wxConfig::Get()->Read(wxT("defaultPort"), &defaultPort);
(gdb) 
247       m_port = defaultPort;
(gdb) 
249       while (!(server = StartServer()))
(gdb) s
wxMaxima::StartServer (this=0x87f082e1800) at wxMaxima.cpp:644
644     bool wxMaxima::StartServer()
(gdb) n
646       SetStatusText(wxString::Format(_("Starting server on port %d"), m_port), 1);
(gdb) 
648       wxIPV4address addr;
(gdb) n
651       addr.LocalHost();
(gdb) 
656       addr.Service(m_port);
(gdb) 
658       m_server = new wxSocketServer(addr);
(gdb) s
operator new (sz=200)
    at /usr/src/gnu/lib/libstdc++-v3/../../gcc/libstdc++-v3/libsupc++/new_op.cc:50
50      operator new (std::size_t sz) throw (std::bad_alloc)

That is with a wxwidgets built with symbols. That is all you get...

Any ideas?

@andrejv
Copy link
Collaborator

andrejv commented Dec 10, 2014

wxWidgets come with test samples. Can you check that the socket sample from wxWidgets works correctly on your OS.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants