Copyright (C) 2000-2012 |
GNU Info (ada-mode)Working RemotelyWorking Remotely **************** When you work on project that involve a lot of programmers, it is generally the case that you will edit the files on your own machine, but you want to compile, run and debug your application in another buffer. Fortunately, here too Emacs provides a very convenient way to do this. Remote editing ============== First of all, the files do not need to be on your machine. Emacs can edit any remote file, by doing transparent FTP sessions between your machine and the remote machine that stores your files. This is a special Emacs mode, called `ange-ftp'. To use it, you just have to use a slightly different syntax when you open a file. For instance, if you want to open the file `/work/foo.adb' on the machine aleph.gnu.org, where you log in as qwe, you would simply do this: C-x C-f /qwe@aleph.gnu.org:/work/foo.adb <RET> i.e., use your name, the name of the machine and the name of the file. The first time, Emacs will ask you for a password that it will remember until you close the current Emacs. Even if the ftp session times out, you won't need to reenter your password. Every time you save the file, Emacs will upload it to the remote machine transparently. No file is modified on the local machine. Remote compiling ================ If the machine you want to compile on is not the one your Emacs is running on, you can set the variable `remote_machine' in the project file for your application. This will force Emacs to issue a `rsh' command for the compilation, instead of running it on the local machine. Unfortunately, this won't work on Windows workstations, since this protocol is not supported. If your `remote_machine' is aleph.gnu.org and the standard compilation command is `cd /work/ && gnatmake foo', then Emacs will actually issue the command `rsh aleph.gnu.org 'cd /work/ && gnatmake foo''. The advantage of using the `remote_machine' variable is that it is easier to change that machine without having to modify the compilation command. Note that if you need to set up some environment variables before the compilation, you need to insert a call to the appropriate initialization script in the compilation command, for instance: build_cmd= initialization_script; cd /work/ && gnatmake foo Remote running and debugging ============================ This feature is not completely implemented yet. However, most of the time, you will be able to run your application remotely simply by replacing it with a `rsh' call. For instance, if your command was `${main}', you could replace it with `rsh aleph.gnu.org ${main}'. However, this would not work on vxworks, for instance, where `rsh' is not supported. automatically generated by info2www version 1.2.2.9 |