[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kdevelop-bugs
Subject:    [Bug 130916] New: kdevelop debug with "Enable separate terminal for
From:       redrett <redrett () yahoo ! com>
Date:       2006-07-16 13:41:51
Message-ID: 20060716154148.130916.redrett () yahoo ! com
[Download RAW message or body]

------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=130916         
           Summary: kdevelop debug with "Enable separate terminal for
                    application IO" checked on.
           Product: kdevelop
           Version: unspecified
          Platform: FreeBSD Ports
        OS/Version: FreeBSD
            Status: UNCONFIRMED
          Severity: crash
          Priority: NOR
         Component: general
        AssignedTo: kdevelop-bugs kdevelop org
        ReportedBy: redrett yahoo com


Version:            (using KDE KDE 3.5.1)
Installed from:    FreeBSD Ports
OS:                FreeBSD

i found a bug(maybe a bug) of kdevelop on freebsd, pls refer to following steps.
1. start kdevelop.
2. open an existing C++ project.
3. build the project.
4. select menu item "\Project\Project Options" and "Project Options"
dialog pops up.
5. in "Debugger" pane, check on "Enable separate terminal for application IO".
6. click "OK" button to close "Project Options" dialog.
7. select menu item "\Debug\Start" to start debug.
8. can't start debug and the following error message pops up.
--------------------------------------------------------------
GDB cannot use the tty* or pty* devices
Check the settings on /dev/tty* and /dev/pty*
As root you may need to "chmod ug+rw\" tty* and pty* devices
and/or add the user to the tty group using
"usermod -G tty username".
--------------------------------------------------------------

i had some debug and found that there's something wrong in
stty.cpp(cpp/java/ruby folder of kdevelop-3.3.1/languages/) in
kdevelop source.
in function "bool STTY::findExternalTTY(const QString &termApp)",
------------------------------------------------------------
    // create a fifo that will pass in the tty name
#ifdef HAVE_MKFIFO
    if (::mkfifo(fifo, S_IRUSR|S_IWUSR) < 0)
#else
    if (::mknod(fifo, S_IFIFO | S_IRUSR|S_IWUSR, 0) < 0)
#endif
            return false;
------------------------------------------------------------
because macro "HAVE_MKFIFO" isn't defined, ::mknod is executed. but
::mknod failed with errno 22(EINVAL).

it seems that mknod dosen't work for fifo on freebsd. pls refer to
http://lists.freebsd.org/pipermail/freebsd-bugs/2003-November/004281.html

my solution is add "HAVE_MKFIFO" macro when configure(by modify
"configure" script) or manually add "#define HAVE_MKFIFO 1" to
config.h.


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic