基於winbond 950cdg samba for arm9+linux-2.6.17 的 移稙

env.sh_smb-2.2.7a  在文章的底部
將env.sh_smb-2.2.7a 放入到解壓後的  samba-2.2.7a/source/  下
 然後運行 
 ./env.sh_smb-2.2.7a
        在make 時可能會出現錯誤,
 vi nsswitch/winbindd_nss.h
   加入:typedef unsigned int uint32;
 保存
   make

  又出現錯誤.....
   刪除: typedef unsigned int uint32;
    保存
   make
     (我也不清楚爲什麼,不過,通過了!)
        成功
        在 source/bin/下得到編譯後的 程序如下
        nmbd
        smbd
        smbclient   ...
        arm-linux-strip  bin/*  壓縮下
        file smbclient
        :smbclient: ELF 32-bit LSB executable, ARM, version 1 (SYSV), statically linked, stripped
        成功,
        接下來就是要對 文件系統進行配置了
        比如:
--with-configdir=$MB2_SAMBA      smb.conf  放在哪,這個在   configure 的選項中有配置了
--with-logfilebase=$MB2_SAMBA/log         log
--with-lockdir=$MB2_SAMBA/var/locks
--with-piddir=$MB2_SAMBA/var/locks           pid
--with-privatedir=$MB2_SAMBA/private       .....
 

          然後將寫好的smb.conf放到/tmp/smb中  
          可以將  samba-2.2.7a/example/下的 smb.conf.default  改寫成 smb.conf  用於開發板

          nmbd -i -d 3
          smbd -i -d 3  如果配置不正確,這些可以用於DEBUG
          nmbd -D
smbd -D
ps     
969 root       1092 S   /attach/ms0/smb2.7a/nmbd -D
971 root       2048 S   /attach/ms0/smb2.7a/smbd -D

 這個是用靜太編譯的,所以代碼會大些,但是同樣的配置對3.2.0以上的版本可以正常生成bin文件但在
ARM9板子上都不能運行 . 不知道爲什麼 ,請高手指教下!非常感謝!
 file  smbclient
 :bin/smbclient: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), stripped
在arm9板子上:  /attach/ms0/new3.2/smbclient: not found 

########################################################

#!/bin/sh
#export  LIBS=/usr/local/arm_linux_4.2/arm-none-linux-gnueabi/lib
export  CPPFLAGS=-I/usr/local/arm_linux_4.2/arm-linux/include
export  LDFLAGS='-L/usr/local/arm_linux_4.2/arm-linux/lib -L/usr/local/arm_linux_4.2/lib/gcc/arm-linux/4.2.1'
export  CC='/usr/local/arm_linux_4.2/bin/arm-linux-gcc -O2 -static '
export  PATH=$PATH:/usr/local/arm_linux_4.2/bin
export  AR=arm-linux-ar

echo /# > arm-linux.cache
MB2_SAMBA=/tmp/smb

./configure /
 --host=i686 /
 --target=arm-linux /
 --disable-cups  /
 --cache-file=arm-linux.cache /
 --disable-iprint /
 --disable-pie /
 --disable-fam /
    --disable-largefile    /
    --enable-swat=no /
    --enable-cup=no /
    --enable-iprint=no /
    --enable-pie=no /
    --enable-fam=no /
    --enable-static=yes /
    --enable-shared-libs=no /
    --enable-dnssd=no /
    --with-ldap=no /
    --with-ads=no /
    --with-cifsmount=no /
    --with-utmp=no /
    --with-libtalloc=no /
    --with-libtdb=no /
    --with-libnetapi=no /
    --with-libaddns=no /
    --with-libsmbclient=no /
    --with-libsmbsharemodes=no /
    --with-acl-support=no /
    --with-sendfile-support=no /
    --with-winbind=no /
    --with-static-modules=nmbd,smbd,smbclient,smbpasswd /
 --with-logfilebase=$MB2_SAMBA/log /
 --with-lockdir=$MB2_SAMBA/var/locks /
 --with-piddir=$MB2_SAMBA/var/locks /
 --with-privatedir=$MB2_SAMBA/private /
 --with-configdir=$MB2_SAMBA
#    --with-codepagedir=/tmp/codepagedir 

make clean
time make

cd ./bin
arm-linux-strip *
cd ..

########################################################

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章