Hi Ray, Yes, I am one of the people working on the build infrastructure, but actually Daniel is the maintainer of that area (see https://qt-project.org/wiki/Maintainers).
There is (at least) one flavors of Qt Creator that support building in a VM (sailfish OS SDK) and ubuntu seems to be working on building in chroots or something (ubuntu touch SDK). Unfortunately the contact to those projects is sporadic at best (at least at this time) and I do not know what these projects are up to in detail. Maybe they even have changed their approach completely in the meantime. There might also be more Qt Creator flavors doing similar things that I do not know about. So while this apparently is possible, we do not have any infrastructure in Qt Creator to help with handling chroots. Adding it would require some involved changes, since we would need to consistently map information from "in chroot paths" to "out-of-chroot paths" in a reliable way. This is necessary for e.g. the code model to find the right headers, etc. Obviously such a change also needs intense testing as the code paths touched are used by all existing platforms we have. Docker might be even more challenging. Don't you need to set the command the container runs in the container configuration? So can you even use the same container to build, debug and run your code? Getting access to files in the container will also be interesting: There are several on disk formats for containers. The filesystem image being set up in layers that overlay each other does not make this any easier. Maybe the easiest approach to support docker would be to require ssh/gdbserver running in the docker image and use the existing remote desktop machinery for the run/debug part. That way we would only need to support "remote build" via SSH in addition to what we already have. But then I admit I have not thought about docker support much yet. If you need chroot support fast, then one hackish approach is to provide wrapper scripts around make/qmake/etc. that do the path name mapping *outside* creator. That can get you some way. I did that for a while, but nowadays I just install Qt Creator into the chroots and build "locally" in those chroots. That works well for me: I work on Qt Creator, so I need all the Qt Creator dependencies inside the chroot anyway. Unfortunately it also requires me to switch Creators whenever I switch chroots, but so far I did not have to switch often: Almost all the bugs that I had to reproduce on Linux have been distribution agnostic:-) This is a feature I would love to work on, but unfortunately I do not expect to find the time for this anytime soon. Best Regards, Tobias -- Tobias Hunger, Senior Software Engineer | The Qt Company Digia Germany GmbH, Rudower Chaussee 13, D-12489 Berlin Geschäftsführer: Mika Pälsi, Juha Varelius, Tuula Haataja Sitz der Gesellschaft: Berlin, Registergericht: Amtsgericht Charlottenburg, HRB 144331 B Email: [email protected] | Phone: +49 30 63 92 3255 www.qt.io | Qt Blog: http://blog.qt.digia.com/ | Twitter: @QtbyDigia, @Qtproject | Facebook: www.facebook.com/qt On Mo, Jan 12, 2015 at 11:36 , Scheufler Ray M <[email protected]> wrote: > I am working on setting up a development environment for cross > compilation and I want to use chroot or docker to isolate my cross > libraries. I have seen mentions of doing this on the qt forums but I > can’t find any documentation on how to do this. I am able to > manage my environments outside of the IDE but I much prefer having an > IDE to aid development. > > It appears that Tobias Hunger is doing this so I was hoping for a > nudge in the correct direction. > > I would like to be able to run QT Creator in the host and delegate > all actions to a docker container. > > http://qt-project.org/forums/viewthread/33751 > http://qt-project.org/forums/viewthread/832 > > > Ray Scheufler > > _______________________________________________ Qt-creator mailing list [email protected] http://lists.qt-project.org/mailman/listinfo/qt-creator
