免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1560 | 回复: 5
打印 上一主题 下一主题

[SCO UNIX] 请教大侠一个ncurses编程的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-01-08 11:54 |只看该作者 |倒序浏览
程序代码如下:
#include<ncurses.h>
#include<panel.h>

int main()
{
        WINDOW *my_wins[3];
        PANEL *my_panels[3];
        int lines=10,cols=40,y=2,x=4,i;
       
        initscr();
        cbreak();
        noecho();
       
        my_wins[0]=newwin(lines,cols,y,x);
        my_wins[1]=newwin(lines,cols,y+1,x+5);
        my_wins[2]=newwin(lines,cols,y+2,x+10);
       
        for(i=0;i<3;++i)
                box(my_wins[i],0,0);
       
        my_panels[0]=new_panel(my_wins[0]);
        my_panels[1]=new_panel(my_wins[1]);
        my_panels[2]=new_panel(my_wins[2]);
       
        update_panels();
        doupdate();
        getch();
        endwin();
        return 0;
}

编译命令如下:
gcc -o panel panel.c -lncurses -lpanel

报错如下:
Undefined                       first referenced
symbol                             in file
getbegx                             /usr/ccs/lib/libpanel.a(new.o)
getbegy                             /usr/ccs/lib/libpanel.a(new.o)
getmaxx                             /usr/ccs/lib/libpanel.a(new.o)
getmaxy                             /usr/ccs/lib/libpanel.a(new.o)
touchwin                            /usr/ccs/lib/libpanel.a(new.o)
touchline                           /usr/ccs/lib/libpanel.a(update.o)

请大侠指点一下该如何解决.
多谢,多谢.

论坛徽章:
0
2 [报告]
发表于 2006-01-08 13:10 |只看该作者
编译命令次序改一下:
gcc -o panel panel.c  -lpanel -lncurses

论坛徽章:
0
3 [报告]
发表于 2006-01-08 14:51 |只看该作者

回复 2楼 sunlan 的帖子

你好,
我用gcc -o panel panel.c  -lpanel -lncurses 编译仍报错如下:

Undefined                       first referenced
symbol                             in file
getbegx                             /usr/ccs/lib/libpanel.a(new.o)
getbegy                             /usr/ccs/lib/libpanel.a(new.o)
getmaxx                             /usr/ccs/lib/libpanel.a(new.o)
getmaxy                             /usr/ccs/lib/libpanel.a(new.o)

不知老兄是否遇到过类似问题.

论坛徽章:
0
4 [报告]
发表于 2006-01-08 15:41 |只看该作者
原帖由 kinematic 于 2006-1-8 14:51 发表
你好,
我用gcc -o panel panel.c  -lpanel -lncurses 编译仍报错如下:

Undefined                       first referenced
symbol                             in file
getbegx                          ...



gcc -o panel panel.c  -Lxxxx -lpanel -lncurses
用-L指明ncurses库的存放路径。你的panel库用的是sco自带的、而ncurses则不是sco的,两个库不配对

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
5 [报告]
发表于 2006-01-08 19:02 |只看该作者
原帖由 kinematic 于 2006-1-8 14:51 发表
你好,
我用gcc -o panel panel.c  -lpanel -lncurses 编译仍报错如下:

Undefined                       first referenced
symbol                             in file
getbegx                          ...


在 shell 的 .profile 文件中增加如下语句.

LD_LIBRARY_PATH=/usr/gnu/lib
export LD_LIBRARY_PATH

然后再编译看看。

我才开始用 gnu development tools ,不一定正确。

论坛徽章:
0
6 [报告]
发表于 2006-01-08 19:26 |只看该作者
原帖由 snow888 于 2006-1-8 19:02 发表


在 shell 的 .profile 文件中增加如下语句.

LD_LIBRARY_PATH=/usr/gnu/lib
export LD_LIBRARY_PATH

然后再编译看看。

我才开始用 gnu development tools ,不一定正确。


这只和程序执行相关,与编译无关
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP