一、编译
1:下载源文件
https://download.samba.org/pub/samba/
2:解压
3:进入source目录
4:执行配置
./configure --target=arm-linux-gnueabi --host=i686 samba_cv_CC_NEGATIVE_ENUM_VALUES=yes
会出现下面的错误:
checking for prctl... yes
configure: error: cannot run test program while cross compiling
See `config.log' for more details.
解决办法:
在11497行修改 if test "$cross_compiling" = yes; then 为 if test "$test_cross_compiling" = yes; then
这样在交叉编译的时候就不会有这个错误了
二、安装到嵌入式平台
1、 拷贝/source/bin目录下smbpasswd、smbd、nmb到目标路径:/usr/sbin
2:新建文件夹
mkdir /usr/local/samba /usr/local/samba/bin /usr/local/samba/lib /usr/local/samba/private /usr/local/samba/var
3:在/usr/local/samba/lib创建配置文件:smb.conf
[global]
workgroup = myworkgroup
server string = samba
netbios name =myarm
guest account=root
security =share
interfaces = eth0
[share]
path = /opt/
guest ok=yes
browseable=yes
4:拷贝 /source/bin/smbd 到 开发板的 /usr/local/samba/bin 目录下面;
在 /usr/local/samba/bin 目录下面执行 ./smbd -D