Date: Mon, 30 May 2016 13:06:08 +0900 From: =?UTF-8?B?6rSA7Jqp6rmA?= <ooxxao@gmail.com> To: freebsd-questions@freebsd.org Subject: gdb can't find any source after compile through distcc Message-ID: <CAJuYDdUNFw3ATO%2BiuacFaHYdXM2ctzou=KCWCGM727V9hn6i6g@mail.gmail.com>
next in thread | raw e-mail | index | archive | help
I'm using several FreeBSD machines, and all of them are in same version, 10.3-RELEASE i386. And installed distcc on every machine through ports, /usr/ports/devel/distcc. The distcc version is distcc-3.1. Using ninja build system with Clang 3.4.1 instead of GCC. Any compile was done very successfully. But after, every time I try to make break point in gdb, it cannot catch any source files of the project. I think It may be the result of the temp files named distccd_xxxxxxxx.ii that distcc/distccd give and receive between machines. It located at /tmp/ and it is volatile. Because clang write path and file name like /tmp/distccd_xxxxxxxx.ii and distccd_xxxxxxxx.ii on object file, gdb only knows the 'distccd_XX.ii' file is the real one. I've tried 'directory' command in gdb, and it is not sufficient because my file tree is so complicated and too big. And also, I need to recompile project again when I changed the obj files. gdb is just fine when I compiled locally without distcc. I can't use gcc right now (I can't modify existing compile structure), and pump-mode isn't helpful either. Is there any solutions for my situation?
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJuYDdUNFw3ATO%2BiuacFaHYdXM2ctzou=KCWCGM727V9hn6i6g>