您的位置:首页 > 编程语言 > Qt开发

解决Kdevelop 编译 QT和ncurses库程序

2009-04-23 10:45 459 查看

解决Kdevelop 编译 QT和ncurses库程序

Kdevelop debug的解决方法,之前怎么都不能调试,发现一个比较衰的事情,原来QT要debug必须编译的时候选择debug才可以,还是要研究帮助阿。

./configure –help

./configure -debug -plugin-sql-mysql -v

make

sudo make inxtall

就可以调试了。

不过kdevelop最大问题是是不是会发神经,代码自动补全好的时候很好,不好的时候怎么都不出来,不知道这个debug是不是也是这样,神经刀似的。

用了我将近三个小时的时间才解决:

sudo apt-get install apt-file

sudo apt-file search ncurses.h //搜索包含ncurses.h的文件,反正我的ubuntu 8.10 server 一开始是没有找到这个文件

libncurses5-dev: /usr/include/ncurses.h

libncursesw5-dev: /usr/include/ncursesw/ncurses.h

我把两个都安装了

sudo apt-get install libncurses5-dev libncursesw5-dev

修改src/makefile:

添加 -lncurses 后build就不报错了。

但是重启kdevelop后要重新输入,还是要在设置里面加进去。

最终的解决方法:在src.pro文件内 添加 LIBS += -L/usr/include -lncurses

源码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43

/***************************************************************************
*   Copyright (C) 2008 by Hato Yu, 1615.cn, Macacus CRM                   *
*   hatoyu@gmail.com                                                      *
*                                                                         *
***************************************************************************/

#include <QCoreApplication>
#include <QtDebug>
#include <QString>
#include </usr/include/ncurses.h>

int main ( int argc, char *argv[] )
{
QCoreApplication macacus ( argc, argv );
int i;
for (i = 1; i < argc; i++ ) {
if (argv[i][0] == '-') {
QString opt = argv[i]+1;
if (opt == "s") {
initscr();
move(5,15);
attron(A_BOLD);
printw("%s","Macacus Server is starting ...");
attroff(A_BOLD);
refresh();
sleep(2);
endwin();
return macacus.exec();
} else {
if (opt == "v") {
qDebug() << "Macacus CRM 0.30 Alpha";
} else {
qDebug() << "The option :/nOptions: -v version  -s start ";
}
}

} else {
qDebug() << "The option :/nOptions: -v version -s start ";
}
}
return 0;
}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐