[Gambas-devel] How to develop gambas components

Benoît Minisini gambas at ...1...
Thu Jan 28 12:47:51 CET 2010


> >So now I have two problems:
> >
> >1) How to run a program on another computer from the IDE? I suggest using
> > ssh.
> >
> >2) How to communicate? The debugged program should create a socket on a
> >specific port, and the IDE should be able to use it automatically. I think
> > a TCP socket is needed.
> >
> >What do you think?
> 
>  for the number 2:
>  Ok the TCP socket is a good Idea. I can develop an application on ARM
>  System that accept TCP connection ad reroute the debuuger command on the
>  debugger fifo (if i remember well) and viceversa. Same think on the PC
>  side.
> 
>  The IDE use the same FIFO ,  couple of process redirect the fifo on TCP
>  socket from PC to arm and viceversa.
> 
>  for the number 1:
>  yes the SSH it's a good solution , or we can use the ARM task that open an
>  UDP socket and start/stop the process.
> 
>  What do you think ?
> 

I'd like to integrate this feature directly in the IDE, so:
- If you can tell me exactly how you will do that, it would be cool!
- I prefer using ssh to run the process, not to be specific.

The debugged process on ARM needs five channels of communication with the IDE:
- Its standard input, redirected so that the IDE can send data to it.
- Its standard output, redirected so that the IDE gets it.
- Its standard error output, redirected so that the IDE gets it.
- The debugger fifo #1, used by the IDE to control the process.
- The debugger fifo #2, used by the process to send the result of debugger 
commands to the IDE.

By using ssh, I think that standard i/o will be automatically redirected, the 
standard output and standard error output being mixed. Then the IDE would have 
to create one socket to replace the two fifos, and give the debugged process 
which IP and which port number to use.

But you will have to configure in the IDE which port to use to debug.

Do you see another way that would not require any configuration from the IDE?

-- 
Benoît Minisini




More information about the Devel mailing list