Hello All, This mail was initially posted in the Qt Development mailing list <http://lists.qt-project.org/pipermail/development/2018-March/032301.html>, but I am reposting here, with minor edits, as the audience here are more appropriate.
I am a Masters Student in Computer Engineering Program at Arizona State University. I am interested in participating in Google Summer of Code(GSoC) 2018 with Qt as my mentor organization. Link - https://blog.qt.io/blog/2018/02/22/google-summer-of-code-2018/ In this mail, I would like to propose a new feature for Qt Creator as my GSoC project, based on my experience at my previous company. Issue faced in previous company - In my previous company, we had our development environment in Windows and target platform as arm-linux machine. For that, we would develop code on Windows systems and then sync the project/workspace to the remote linux server and then compile with the cross-compilation tool-chain there and then deploy on the target machine elsewhere. In the above setup we faced the following problems - 1. Unavailability of code completion frameworks on the development machine as not all the platform headers were available locally 2. Frequently syncing the workspace was a wasteful of time In order to solve the above problem, I would like to propose a "Remote System Development Plug-in" for editing, compiling, executing & debugging files on a remote system on the lines on Emacs Tramp package (https://www.emacswiki.org/emacs/TrampMode). High Level Features - 1. Public key registration of development machine on remote machine (and vice-versa) for seamless syncing of files between the two machines 2. Setting up a toolkit (Compiler, Debugger, Qt Tool-chain, cmake, qmake, qbs, sysroot) of a remote machine on the Development machine's Qt Creator IDE 3. Opening projects of remote machine in development machine (using the same interface used for opening project on development machine) 4. Automatic syncing of workspace between development machine and remote machine(on every save & periodically) - could be done using rsync 5. Compilation of code on the remote machine with the tool-chain setup there 6. Execution & debugging code on Remote machine 7. Supporting Clang based code completion, got-definition & refactoring - Might need to run a clang-daemon/Language Server on the remote machine and send the responses to development machine. Kindly let me know your thoughts about my above idea. Best Regards, Gowtham (Sree Gowtham Josyula) _______________________________________________ Qt-creator mailing list Qt-creator@qt-project.org http://lists.qt-project.org/mailman/listinfo/qt-creator