QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 771|回复: 4

用c来读bmp文件遇到的问题

[复制链接]
发表于 2004-7-13 23:54:54 | 显示全部楼层 |阅读模式
我用c来读*.bmp文件,只想对它进行简单的操作譬如压缩。在里面找到有一个叫做<pbm.h>的库,里面包含了关于bmp文件的许多读写操作。我先用里面的一个叫做pm_openr()的函数做测试。然后编译不通过,出错为找不到pm_openr()函数。可是明明能够找到这个.h文件,是不是不存在这个库。我是newer,所以不是很明白怎么才能找到这个库或者添加。有劳各位帮忙看看了。
发表于 2004-7-14 14:30:23 | 显示全部楼层
请你把出错信息贴出来看看。
回复

使用道具 举报

 楼主| 发表于 2004-7-14 16:06:13 | 显示全部楼层
The code as fellows:

* read_bmp.c - Read the *.bmp
*/
                                                                                                  
#include <stdio.h>
#include <stdlib.h>
                                                                                                  
                                                                                                  
#include "/usr/include/pbm.h"
#include "/usr/include/pm.h"
#include "/usr/include/pbm.h"
#include "/usr/include/pm_config.h"
                                                                                                  
                                                                                                  
/*
#include<pbm.h>
#include<pm.h>
#include<pm_config.h>
*/
#include <fcntl.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
                                                                                                  
void main(void)
{
                                                                                                  
   FILE * fp;
                                                                                                  
   char path[] = "test.bmp" ;
   fp = pm_openr(path);
                                                                                                  
   if(fp == NULL)
   {
         printf("Can't find the bmp file!\n");
         exit(EXIT_FAILURE);
   }
   else
   {
         printf("Successful in open bmp file!\n");
   }
                                                                                                  
   exit(EXIT_SUCCESS);
}

complie command:
gcc -o read_bmp read_bmp.c

The informations are fellows:
read_bmp.c: In function `main':
read_bmp.c:26: warning: return type of `main' is not `int'
/tmp/ccocbUMk.o(.text+0x3: In function `main':
: undefined reference to `pm_openw'
collect2: ld returned 1 exit status

I hope somebody can help me to solve the problem.
回复

使用道具 举报

发表于 2004-7-14 22:09:56 | 显示全部楼层
除了在程序中包含需要的头文件*.h外,在编译时还需要连接相应的库:
gcc -lpbm yourcode.c -o yourexecname

如果这个库不叫pbm,请自己检查并修改。
回复

使用道具 举报

 楼主| 发表于 2004-7-15 09:05:17 | 显示全部楼层
thank u
i got it
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-7 20:56 , Processed in 0.095917 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表