求一个可以linux虚拟机下可用的纯C语言编写的电子相册,有浏览,预览图片和背景音乐功能

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求一个可以linux虚拟机下可用的纯C语言编写的电子相册,有浏览,预览图片和背景音乐功能相关的知识,希望对你有一定的参考价值。

背景音乐最好是用libmad

参考技术A 1 。linux 虚拟机下?。。。什么意思。需要 引导启动。启动只有这一个功能?。

如果你的意思,是系统上,linu虚拟机和 物理机 对于 你在系统上的 操作 有 区别么?。

2. 找开源代码。在sourcefrog 和 github上 自己 搜。

自己写的话。linxu的系统调用 和标准库是不封装 图像函数的。。必须要 QT 库封装的 图像函数。

3.毕业设计。你要做的话,可以私信。不是百度分的问题了。。价格合理。

Linux虚拟机下makefile的编写应用

目的:

1. 熟悉嵌入式 Linux 开发基本过程及基本命令。

2. 了解嵌入式 Linux 开发中各种工具的基本用途。

3. 搭建好嵌入式 Linux 的开发环境。

4. 通过对包含多文件的 Makefile 的编写,熟悉各种形式的Makefile 编写,加深对 Makefile 中用户自定义变量、自动变量及预定义变量的理解。

实验原理及基本技术路线图

1. Makefile 基本规则

一个简单的 Makefile 语句由目标、依赖条件、指令组成。

smdk6400_config : unconfig

 @mkdir -p $(obj)include $(obj)board/samsung/smdk6400

其中:

smdk6400_config:目标;

unconfig:先决条件;

@mkdir -p $(obj)include $(obj)board/samsung/smdk6400:指令。

这里特别注意,“@”前面是 Tab 键,并且必须是 Tab 键,而不能是空格。

目标和先决条件是依赖关系,目标是依赖于先决条件生成的。

2. Makefile 的变量

为了简化编辑和维护 Makefile,make 允许在 Makefile 中创建和使用变量。变量是在 Makefile 中定义的名字,用来代替一个文本字符串,该文本字符串称为该变量的值。在具体要求下,这些值可以代替目标体、依赖文件、命令以及 makefile 文件中的其它部分。在 Makefile中的变量定义有两种方式:递归展开方式和简单方式。

实验方法、步骤

1.嵌套 Makefile 实验。创建如下的目录结构:

用 vim 编辑各个目录下的相关文件。

用 vim 编辑顶层 Makefile

用 vim 编辑各个目录下 Makefile

 

1、创建目录

首先在用户目录下创建 makefiletest 文件夹;创建好需用到的其它文件夹f1,f2,main,obj,include等5个文件夹。

 

2、在f1文件夹下使用vim创建f1.c文件。


f1.c的代码如下:

#include "../include/myinclude.h"
void print1()

printf("Message from f1.c...\\n");
return;

 

3、在f2文件夹下使用vim创建f2.c文件。

F2.c的代码如下:

#include "../include/myinclude.h"
void print2()

printf("Message from f2.c...\\n");
return;


4、在main文件夹下使用vim创建main.c文件。


Main.c的代码如下:

#include <stdio.h>
int main()

    print1();
    print2();
    return 0;


5、在include文件夹下使用vim创建myinclude.h文件

Myinclude.h下的代码:

#include <stdio.h>

现在的myfiltest文件夹下的情况为:

 

6、在f1文件夹下使用vim创建Makefile文件。

makefile代码如下:

../$(OBJS_DIR)/f1.o: f1.c
$(CC) -c $^ -o $@

 

7、在f2文件夹下创建Makefile文件。

Makefile代码如下:

../$(OBJS_DIR)/f2.o: f2.c
$(CC) -c $^ -o $@

 

8、在main和obj文件夹下进行如上操作
Main中makefile代码:

../$(OBJS_DIR)/main.o: main.c
$(CC) -c $^ -o $@


Obj中makefile代码:

../$(BIN_DIR)/$(BIN) : $(OBJS)
$(CC) -o $@ $^

现在的情况为(使用tree命令):


9、代码如下:然后在makefiltest主文件夹下创建Makefile文件

CC = gcc
SUBDIRS = f1 \\
     f2 \\
     main \\
     obj
OBJS = f1.o f2.o main.o 
BIN = myapp
OBJS_DIR = obj
BIN_DIR = bin
export CC OBJS BIN OBJS_DIR BIN_DIR

all : CHECK_DIR $(SUBDIRS)
    cp bin/myapp /source/rootfs/app
CHECK_DIR :
    mkdir -p $(BIN_DIR)
$(SUBDIRS) : ECHO
    make -C $@
ECHO:
    @echo $(SUBDIRS)
    @echo begin compile
CLEAN :
    @$(RM) $(OBJS_DIR)/*.o
    @rm -rf $(BIN_DIR)

10、输入make去运行makefile文件,发现错误cp无法创建普通文件


然后在makefiltest中创建目录 source/rootfs/app


输入make,将会出现以下结果:


之后输入tree,将会出现myapp

11、在bin目录下使用./myapp,将会将二进制文件运行输出f1.c和f2.c的printf结果

一起学习,一起进步 -.- ,如有错误,可以发评论 

以上是关于求一个可以linux虚拟机下可用的纯C语言编写的电子相册,有浏览,预览图片和背景音乐功能的主要内容,如果未能解决你的问题,请参考以下文章

Linux虚拟机下makefile的编写应用

虚拟机下LINUX安装VMTOOLS之后鼠标不能移动

求高手,两道c语言编写题

虚拟机下Linux网络配置

求一个windows下的纯C语言实现的文件夹遍历程序,要可以遍历子文件夹,不要unix下的和C++的。

linux虚拟机下如何挂载windows分区