【发布时间】:2015-01-03 21:21:19
【问题描述】:
我刚开始研究 RPi。我正在编写一个程序,其中涉及制作照片(bmp 文件)和分析一些像素。我正在使用 allegro 5 库,我遇到了函数 al_load_bitmap 的“基本”问题。我无法加载位图。第一行代码:
#include <stdlib.h>
#include <stdio.h>
#include <iostream>
#include "allegro-5.1.8/build/lib/Headers/allegro5/allegro.h"
#include "allegro-5.1.8/build/lib/Headers/allegro5/allegro_image.h"
using namespace std;
int main ()
{
unsigned char r, g, b;
ALLEGRO_BITMAP *tape_image ;
al_init();
al_init_image_addon();
al_init_iio_addon();
system("raspistill -o /home/pi/Praca/photo.bmp -t 1");
tape_image = al_load_bitmap("/home/pi/Praca/photo.bmp ");
if(!tape_image) {
cout << "Error! Couldn't load bitmap." <<endl;
getchar();
return 0;
}
...
如您所见,程序正在制作位图,然后我想使用它。但程序无法加载位图。 IDE 是 Geany 1.22 编译器 g++ -L/usr/local.lib -lallegro_main -lallegro_image -lallegro 而且我还必须添加这个 $(pkg-config --libs allegro-5 allegro_main-5 allegro_image-5
【问题讨论】:
-
那么,tape_image 是 NULL 吗?我们看不到您的屏幕,您必须告诉我们。你真的在“/home/pi/Prca/photo.bmp”有位图吗?为什么文件名末尾有空格?
-
好吧,位图是用以下行创建的:system("raspistill -o /home/pi/Prca/photo.bmp -t 1");它出现在 RPi 上。这个空间重要吗?由于此消息“错误!无法加载位图”,因此为 NULL。弹出。
标签: bitmap debian raspberry-pi allegro5