编写makefile文件,最终的目标文件为hello(交叉编译器为arm-linux-gcc),写出程序编译执行的步骤,应用NFS方式进行挂载(宿主机IP地址:192.168.10。2)
时间: 2024-03-24 10:41:19 浏览: 117
好的,以下是一个简单的Makefile文件,可以用来编译名为hello的程序:
```
CC = arm-linux-gcc
CFLAGS = -Wall
all: hello
hello: hello.c
$(CC) $(CFLAGS) -o hello hello.c
clean:
rm -f hello
```
在终端中,进入Makefile所在的目录,执行以下命令:
```
make
```
这将会编译并生成名为hello的可执行文件。
接下来,需要将宿主机上的文件系统(例如Ubuntu)通过NFS方式挂载到目标机(例如树莓派)上。假设宿主机IP地址为192.168.10.2,NFS共享的目录为/home/user/nfs_share,目标机上的挂载点为/mnt/nfs_share。
在宿主机上,需要安装nfs-kernel-server和nfs-common软件包:
```
sudo apt-get install nfs-kernel-server nfs-common
```
然后,编辑/etc/exports文件,加入以下内容:
```
/home/user/nfs_share 192.168.10.0/24(rw,sync,no_subtree_check)
```
这将会允许192.168.10.0/24网段上的主机访问/home/user/nfs_share目录,并且具有读写权限。
接下来,启动NFS服务:
```
sudo /etc/init.d/nfs-kernel-server start
```
在目标机上,创建挂载点并挂载NFS共享目录:
```
sudo mkdir /mnt/nfs_share
sudo mount -t nfs 192.168.10.2:/home/user/nfs_share /mnt/nfs_share
```
现在,可以将编译好的hello可执行文件拷贝到/mnt/nfs_share目录下,然后在目标机上执行:
```
cd /mnt/nfs_share
./hello
```
这将会执行hello程序,并输出相应的结果。
阅读全文