shift- add / shift or

本文详细介绍了文本搜索中的Shift-And与Shift-Or算法原理及实现过程。这两种算法利用位运算来高效地查找模式串在文本中的位置,尤其适用于小字符集和短模式串情况。
 Shift-And算法思想较之KMP算法很简单,设模式字符串为P,它主要通过保存一个集合D(D中记录了P中所有与当前已读text的某个后缀相匹配的前缀),每当text有新的字符读入,算法利用位并行机制来更新这个集合D。
  设P长度为m,则集合D可表示为D = dm…d1 而用D[j]代表dj
  D[j]=1当且仅当p1…pj 是 t1…ti 的某个后缀,当D[m]=1时,就认为P已经于text匹配。
  当读入下一个字符 ti+1, 需要计算新的集合 D′. 当且仅当D[j]=1并且  ti+1 等于 pj+1时D'[j+1]=1. 这是因为D[j]=1时有 p1…pj 是 t1…ti 的一个后缀,而当ti+1 等于 pj+1可推出p1…pj +1是 t1…ti+1 的一个后缀.这个集合可通过位运算来更新.
  算法首先建立一个数组B, 数组长度为text串所属字符集长度(例如A-Z的话数组B的长度为26.)  如果P的第j为等于c则将B[c] 中第j位置为1.
因为要预处理计算B,如果字符集很大的话,并不划算。如果m很长的话(大于机器字长),也很不方便。所以这种算法适用于字符集较小,模式串小于机器字长的情况。当然对于模式串较长的情况,也是比brute force要快的,只是逻辑上要复杂些。



  Shift-And的代码如下,这里假设字符集的大小为128




int shift_and(char * s, int len_s, char * p, int len_p)
{
     int B[128];
     memset(B, 0, sizeof(B));

     int i;
     for (i=0; i<len_p; i++)
        B[p[i]] |= 1<<i;

     int D = 0;
     for (i=0; i<len_s; i++)
     {
        D = ((D<<1) | 1) & B[s[i]];  //D<<1与1位或操作,是可以让匹配随时从当前字符开始,使用位运算实现了并行
        if (D & (1<<(len_p-1)))
         return i - len_p+1;
     }
     return -1;
}

Shift-Or算法跟Shift-And算法思想是一样的,只是在通过取补,减少了位运算的次数,提高了速度。Shift-Or作的修改是,用零表示一个数在集合里,1表示不在,所以

D = ((D<<1) | 1) & B[s[i]];

修改为D=D<<1 | B[s[i]]; 省了一次位运算,当然B和D的初始化的时候,也要作相应的修改。



====================================================================

My Code:

Shift-And



int size = 128; // 此处默认字符集规模为128

//预处理,
void preShiftAnd(const char *p, int m, unsigned int *s){
    for(int i=0; i<size; i++)
        s[i] = 0;
    for(int i=0; i<m; i++){
        s[p[i]] |= 1<<i;
    }
}

//Shift—And
int ShiftAnd(const char *t, const char *p){
    int tLen = strlen(t);
    int pLen = strlen(p);
    unsigned int state = 0;            //即D数组
    unsigned int s[size];

    if(tLen < pLen) return -1;

    preShiftAnd(p, pLen, s);     //预处理

    for(int i=0; i<tLen; i++){
        state = ((state<<1)|1) & s[t[i]];
        if(state & 1<<(pLen-1))            //最高位出现零
            return i - pLen + 1;
    }
    return -1;

}



Shift-Or


#define WORDSIZE sizeof(int)*8 
#define ASIZE 256                                    // 只考虑ASCII码字符集

int preSo(const char *x, int m, unsigned int S[]) { 
    unsigned int j, lim; 
    int i; 
    for (i = 0; i < ASIZE; ++i) 
        S[i] = ~0;                                    // 初值都是全1的二进制数
    for (lim = i = 0, j = 1; i < m; ++i, j <<= 1) { 
        S[x[i]] &= ~j;                                // 当第 J 位为 I 的时候, S[I][J] = 0;
        lim |= j; 
    } 
    /*
    for (i = 0; i < m; i++) { 
        cout << x[i] << " Feature " << bitset<sizeof(int)*8>( S[x[i]]) << endl;
    } 
    */
    lim = ~(lim>>1); 
    return(lim); 
} 

int SO(const char *x, int m, const char *y, int n) { 
    unsigned int lim, state; 
    unsigned int S[ASIZE]; 
    int j; 
    if (m > WORDSIZE) { 
        cout << "SO: Use pattern size <= word size"; 
        return -1;
    }

     /* Preprocessing */ 
     lim = preSo(x, m, S); 

     /* Searching */ 
     for (state = ~0, j = 0; j < n; ++j) { 
         state = (state<<1) | S[y[j]]; 
             if (state < lim) 
                 return j - m + 1; 
         } 
     return -1;
} 

报错点在哪里 make[5]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/linux-nvt9856x_generic/linux-4.19.91' make[4]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/k_vigi_log' touch /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/.built make V=ss -j1 clean-staging make[4]: Entering directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libvigilog' rm -f /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/stamp/.libvigilog_installed /home/sunhaoming/ipc_platform/platform/nvmp/include/package.mk:279: recipe for target 'clean-staging' failed make[4]: [clean-staging] Error 123 (ignored) make[4]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libvigilog' rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libvigilog mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libvigilog/host /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/packages /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/host/packages install -d -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libvigilog/usr/include cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/vigi_log.h /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libvigilog/usr/include install -d -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libvigilog/usr/include/k_vigi_log install -d -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libvigilog/usr/lib/nvmp/libs cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/libvigilog.a /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libvigilog/usr/lib/nvmp/libs/ find /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libvigilog -name '*.la' | xargs -r rm -f; if [ -d /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libvigilog ]; then (cd /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libvigilog; find ./ > /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libvigilog.files); SHELL= /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/host/bin/flock /home/sunhaoming/ipc_platform/platform/nvmp/tmp/.staging-dir.flock -c ' mv /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libvigilog.files /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/packages/libvigilog.list && cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libvigilog/* /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/; '; fi rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libvigilog touch /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/stamp/.libvigilog_installed mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/bin/nvt9856x-s345-4G/packages /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log/CONTROL /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/pkginfo . /home/sunhaoming/ipc_platform/platform/nvmp/include/shell.sh; export modules=; add_module() { priority="$1"; mods="$2"; boot="$3"; shift 3; for mod in $mods; do if [ -e /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log/lib/modules/4.19.91/$mod.ko ]; then mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log/etc/modules.d; echo "$mod" >> /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log/etc/modules.d/$priority-k_vigi_log; fi; done; if [ -e /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log/etc/modules.d/$priority-k_vigi_log ]; then if [ "$boot" = "1" ]; then mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log/etc/modules-boot.d; ln -s ../modules.d/$priority-k_vigi_log /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log/etc/modules-boot.d/; fi; modules="${modules:+$modules }$priority-k_vigi_log"; fi; }; add_module "10" "k_vigi_log" ""; if [ -n "$modules" ]; then mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log/etc/modules.d; mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log/CONTROL; echo "#!/bin/sh" > /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log/CONTROL/postinst; echo "[ -z \"\$IPKG_INSTROOT\" ] || exit 0" >> /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log/CONTROL/postinst; echo ". /etc/functions.sh" >> /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log/CONTROL/postinst; echo "load_modules $modules" >> /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log/CONTROL/postinst; chmod 0755 /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log/CONTROL/postinst; fi find /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log -name 'CVS' -o -name '.svn' -o -name '.#*' -o -name '*~'| xargs -r rm -rf export CROSS="arm-ca9-linux-uclibcgnueabihf-" ; NM="arm-ca9-linux-uclibcgnueabihf-nm" STRIP="arm-ca9-linux-uclibcgnueabihf-strip --strip-all" STRIP_KMOD="/home/sunhaoming/ipc_platform/platform/nvmp/scripts/strip-kmod.sh" /home/sunhaoming/ipc_platform/platform/nvmp/scripts/rstrip.sh /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log rstrip.sh: /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log/lib/modules/4.19.91/k_vigi_log.ko:relocatable ( echo "Package: kmod-k_vigi_log"; echo "Version: 4.19.91-1"; DEPENDS='kernel (=4.19.91-1-unknown)'; for depend in ; do DEPENDS=${DEPENDS:+$DEPENDS, }${depend##+}; done; echo "Depends: $DEPENDS"; echo "Provides: "; echo "Source: tp_package/lib/libvigilog"; echo "Section: ko util"; echo "Status: unknown ok not-installed"; echo "Essential: no"; echo "Priority: optional"; echo "Maintainer: OpenWrt Developers Team <openwrt-devel@openwrt.org>"; echo "Architecture: novatek"; echo "Installed-Size: 0"; echo -n "Description: "; . /home/sunhaoming/ipc_platform/platform/nvmp/include/shell.sh; getvar V_Package_kmod_k_vigi_log_description | sed -e 's,^[[:space:]]*, ,g'; ) > /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log/CONTROL/control chmod 644 /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log/CONTROL/control . /home/sunhaoming/ipc_platform/platform/nvmp/include/shell.sh; (cd /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log/CONTROL; ) ipkg-build -c -o 0 -g 0 /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log /home/sunhaoming/ipc_platform/platform/nvmp/bin/nvt9856x-s345-4G/packages Packaged contents of /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libvigilog/ipkg-novatek/kmod-k_vigi_log into /home/sunhaoming/ipc_platform/platform/nvmp/bin/nvt9856x-s345-4G/packages/kmod-k_vigi_log_4.19.91-1_novatek.ipk rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-k_vigi_log mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/stamp /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-k_vigi_log . /home/sunhaoming/ipc_platform/platform/nvmp/include/shell.sh; export modules=; add_module() { priority="$1"; mods="$2"; boot="$3"; shift 3; for mod in $mods; do if [ -e /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-k_vigi_log/lib/modules/4.19.91/$mod.ko ]; then mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-k_vigi_log/etc/modules.d; echo "$mod" >> /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-k_vigi_log/etc/modules.d/$priority-k_vigi_log; fi; done; if [ -e /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-k_vigi_log/etc/modules.d/$priority-k_vigi_log ]; then if [ "$boot" = "1" ]; then mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-k_vigi_log/etc/modules-boot.d; ln -s ../modules.d/$priority-k_vigi_log /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-k_vigi_log/etc/modules-boot.d/; fi; modules="${modules:+$modules }$priority-k_vigi_log"; fi; }; add_module "10" "k_vigi_log" ""; if [ -n "$modules" ]; then mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-k_vigi_log/etc/modules.d; mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-k_vigi_log/CONTROL; echo "#!/bin/sh" > /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-k_vigi_log/CONTROL/postinst; echo "[ -z \"\$IPKG_INSTROOT\" ] || exit 0" >> /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-k_vigi_log/CONTROL/postinst; echo ". /etc/functions.sh" >> /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-k_vigi_log/CONTROL/postinst; echo "load_modules $modules" >> /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-k_vigi_log/CONTROL/postinst; chmod 0755 /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-k_vigi_log/CONTROL/postinst; fi SHELL= /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/host/bin/flock /home/sunhaoming/ipc_platform/platform/nvmp/tmp/.root-copy.flock -c 'cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-k_vigi_log/. /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/' rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-k_vigi_log touch /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/stamp/.kmod-k_vigi_log_installed make[3]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libvigilog' make[3]: Entering directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libdms' CFLAGS="-O2 -pipe -fgnu89-inline -march=armv7-a -mtune=cortex-a9 -mfpu=neon -mfloat-abi=hard -ftree-vectorize -fno-builtin -fno-common -g -Wno-stringop-truncation -Wno-format-truncation -Wno-sizeof-pointer-div -Wno-stringop-overflow -Wno-format-overflow -Wno-sizeof-pointer-memaccess -g -ffunction-sections -fdata-sections -Wall -Werror -I/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/usr/include -DSENSOR_SEPERATE_BOARD -DTELEMETRY_SUPPORT -DVIGI_ENABLE_USER_LOG -DLOCAL_STORAGE_ENABLE -I/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/usr/include -I/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/include -I/home/sunhaoming/ipc_platform/platform/nvmp/../sdk/soc/nvt9856x/uclibc-toolchain-1.0.32/arm-ca9-linux-uclibcgnueabihf-8.4.01/arm-ca9-linux-uclibcgnueabihf/sysroot/usr/include " CXXFLAGS="-O2 -pipe -march=armv7-a -mtune=cortex-a9 -mfpu=neon -mfloat-abi=hard -ftree-vectorize -fno-builtin -fno-common -g -Wno-stringop-truncation -Wno-format-truncation -Wno-sizeof-pointer-div -Wno-stringop-overflow -Wno-format-overflow -Wno-sizeof-pointer-memaccess -g -I/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/usr/include -I/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/include -I/home/sunhaoming/ipc_platform/platform/nvmp/../sdk/soc/nvt9856x/uclibc-toolchain-1.0.32/arm-ca9-linux-uclibcgnueabihf-8.4.01/arm-ca9-linux-uclibcgnueabihf/sysroot/usr/include " LDFLAGS="-L/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/usr/lib -L/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/lib -L/home/sunhaoming/ipc_platform/platform/nvmp/../sdk/soc/nvt9856x/uclibc-toolchain-1.0.32/arm-ca9-linux-uclibcgnueabihf-8.4.01/arm-ca9-linux-uclibcgnueabihf/sysroot/usr/lib -L/home/sunhaoming/ipc_platform/platform/nvmp/../sdk/soc/nvt9856x/uclibc-toolchain-1.0.32/arm-ca9-linux-uclibcgnueabihf-8.4.01/arm-ca9-linux-uclibcgnueabihf/sysroot/lib -Wl,--gc-sections -L/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/usr/lib/nvmp/libs/ -lvigilog " make -C /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms -f user.mk AR=arm-ca9-linux-uclibcgnueabihf-ar AS="arm-ca9-linux-uclibcgnueabihf-gcc -c -O2 -pipe -fgnu89-inline -march=armv7-a -mtune=cortex-a9 -mfpu=neon -mfloat-abi=hard -ftree-vectorize -fno-builtin -fno-common -g -Wno-stringop-truncation -Wno-format-truncation -Wno-sizeof-pointer-div -Wno-stringop-overflow -Wno-format-overflow -Wno-sizeof-pointer-memaccess -g -ffunction-sections -fdata-sections -Wall -Werror -I/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/usr/include -DSENSOR_SEPERATE_BOARD -DTELEMETRY_SUPPORT -DVIGI_ENABLE_USER_LOG -DLOCAL_STORAGE_ENABLE" LD=arm-ca9-linux-uclibcgnueabihf-ld NM=arm-ca9-linux-uclibcgnueabihf-nm CC="arm-ca9-linux-uclibcgnueabihf-gcc" GCC="arm-ca9-linux-uclibcgnueabihf-gcc" CXX="arm-ca9-linux-uclibcgnueabihf-g++" RANLIB=arm-ca9-linux-uclibcgnueabihf-ranlib STRIP=arm-ca9-linux-uclibcgnueabihf-strip OBJCOPY=arm-ca9-linux-uclibcgnueabihf-objcopy OBJDUMP=arm-ca9-linux-uclibcgnueabihf-objdump SIZE=arm-ca9-linux-uclibcgnueabihf-size CROSS="arm-ca9-linux-uclibcgnueabihf-" ARCH="arm"; make[4]: Entering directory '/home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms' make[4]: Nothing to be done for 'all'. make[4]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms' CFLAGS="-O2 -pipe -fgnu89-inline -march=armv7-a -mtune=cortex-a9 -mfpu=neon -mfloat-abi=hard -ftree-vectorize -fno-builtin -fno-common -g -Wno-stringop-truncation -Wno-format-truncation -Wno-sizeof-pointer-div -Wno-stringop-overflow -Wno-format-overflow -Wno-sizeof-pointer-memaccess -g -ffunction-sections -fdata-sections -Wall -Werror -I/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/usr/include -DSENSOR_SEPERATE_BOARD -DTELEMETRY_SUPPORT -DVIGI_ENABLE_USER_LOG -DLOCAL_STORAGE_ENABLE -I/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/usr/include -I/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/include -I/home/sunhaoming/ipc_platform/platform/nvmp/../sdk/soc/nvt9856x/uclibc-toolchain-1.0.32/arm-ca9-linux-uclibcgnueabihf-8.4.01/arm-ca9-linux-uclibcgnueabihf/sysroot/usr/include " CXXFLAGS="-O2 -pipe -march=armv7-a -mtune=cortex-a9 -mfpu=neon -mfloat-abi=hard -ftree-vectorize -fno-builtin -fno-common -g -Wno-stringop-truncation -Wno-format-truncation -Wno-sizeof-pointer-div -Wno-stringop-overflow -Wno-format-overflow -Wno-sizeof-pointer-memaccess -g -I/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/usr/include -I/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/include -I/home/sunhaoming/ipc_platform/platform/nvmp/../sdk/soc/nvt9856x/uclibc-toolchain-1.0.32/arm-ca9-linux-uclibcgnueabihf-8.4.01/arm-ca9-linux-uclibcgnueabihf/sysroot/usr/include " LDFLAGS="-L/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/usr/lib -L/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/lib -L/home/sunhaoming/ipc_platform/platform/nvmp/../sdk/soc/nvt9856x/uclibc-toolchain-1.0.32/arm-ca9-linux-uclibcgnueabihf-8.4.01/arm-ca9-linux-uclibcgnueabihf/sysroot/usr/lib -L/home/sunhaoming/ipc_platform/platform/nvmp/../sdk/soc/nvt9856x/uclibc-toolchain-1.0.32/arm-ca9-linux-uclibcgnueabihf-8.4.01/arm-ca9-linux-uclibcgnueabihf/sysroot/lib -Wl,--gc-sections -L/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/usr/lib/nvmp/libs/ -lvigilog " make -C /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/tool -f lib.mk AR=arm-ca9-linux-uclibcgnueabihf-ar AS="arm-ca9-linux-uclibcgnueabihf-gcc -c -O2 -pipe -fgnu89-inline -march=armv7-a -mtune=cortex-a9 -mfpu=neon -mfloat-abi=hard -ftree-vectorize -fno-builtin -fno-common -g -Wno-stringop-truncation -Wno-format-truncation -Wno-sizeof-pointer-div -Wno-stringop-overflow -Wno-format-overflow -Wno-sizeof-pointer-memaccess -g -ffunction-sections -fdata-sections -Wall -Werror -I/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/usr/include -DSENSOR_SEPERATE_BOARD -DTELEMETRY_SUPPORT -DVIGI_ENABLE_USER_LOG -DLOCAL_STORAGE_ENABLE" LD=arm-ca9-linux-uclibcgnueabihf-ld NM=arm-ca9-linux-uclibcgnueabihf-nm CC="arm-ca9-linux-uclibcgnueabihf-gcc" GCC="arm-ca9-linux-uclibcgnueabihf-gcc" CXX="arm-ca9-linux-uclibcgnueabihf-g++" RANLIB=arm-ca9-linux-uclibcgnueabihf-ranlib STRIP=arm-ca9-linux-uclibcgnueabihf-strip OBJCOPY=arm-ca9-linux-uclibcgnueabihf-objcopy OBJDUMP=arm-ca9-linux-uclibcgnueabihf-objdump SIZE=arm-ca9-linux-uclibcgnueabihf-size CROSS="arm-ca9-linux-uclibcgnueabihf-" ARCH="arm"; make[4]: Entering directory '/home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/tool' make[4]: Nothing to be done for 'all'. make[4]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/tool' CFLAGS="-O2 -pipe -fgnu89-inline -march=armv7-a -mtune=cortex-a9 -mfpu=neon -mfloat-abi=hard -ftree-vectorize -fno-builtin -fno-common -g -Wno-stringop-truncation -Wno-format-truncation -Wno-sizeof-pointer-div -Wno-stringop-overflow -Wno-format-overflow -Wno-sizeof-pointer-memaccess -g -ffunction-sections -fdata-sections -Wall -Werror -I/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/usr/include -DSENSOR_SEPERATE_BOARD -DTELEMETRY_SUPPORT -DVIGI_ENABLE_USER_LOG -DLOCAL_STORAGE_ENABLE -I/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/usr/include -I/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/include -I/home/sunhaoming/ipc_platform/platform/nvmp/../sdk/soc/nvt9856x/uclibc-toolchain-1.0.32/arm-ca9-linux-uclibcgnueabihf-8.4.01/arm-ca9-linux-uclibcgnueabihf/sysroot/usr/include " CXXFLAGS="-O2 -pipe -march=armv7-a -mtune=cortex-a9 -mfpu=neon -mfloat-abi=hard -ftree-vectorize -fno-builtin -fno-common -g -Wno-stringop-truncation -Wno-format-truncation -Wno-sizeof-pointer-div -Wno-stringop-overflow -Wno-format-overflow -Wno-sizeof-pointer-memaccess -g -I/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/usr/include -I/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/include -I/home/sunhaoming/ipc_platform/platform/nvmp/../sdk/soc/nvt9856x/uclibc-toolchain-1.0.32/arm-ca9-linux-uclibcgnueabihf-8.4.01/arm-ca9-linux-uclibcgnueabihf/sysroot/usr/include " LDFLAGS="-L/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/usr/lib -L/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/lib -L/home/sunhaoming/ipc_platform/platform/nvmp/../sdk/soc/nvt9856x/uclibc-toolchain-1.0.32/arm-ca9-linux-uclibcgnueabihf-8.4.01/arm-ca9-linux-uclibcgnueabihf/sysroot/usr/lib -L/home/sunhaoming/ipc_platform/platform/nvmp/../sdk/soc/nvt9856x/uclibc-toolchain-1.0.32/arm-ca9-linux-uclibcgnueabihf-8.4.01/arm-ca9-linux-uclibcgnueabihf/sysroot/lib -Wl,--gc-sections -L/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/usr/lib/nvmp/libs/ -lvigilog " make -C /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/tool -f user.mk AR=arm-ca9-linux-uclibcgnueabihf-ar AS="arm-ca9-linux-uclibcgnueabihf-gcc -c -O2 -pipe -fgnu89-inline -march=armv7-a -mtune=cortex-a9 -mfpu=neon -mfloat-abi=hard -ftree-vectorize -fno-builtin -fno-common -g -Wno-stringop-truncation -Wno-format-truncation -Wno-sizeof-pointer-div -Wno-stringop-overflow -Wno-format-overflow -Wno-sizeof-pointer-memaccess -g -ffunction-sections -fdata-sections -Wall -Werror -I/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/usr/include -DSENSOR_SEPERATE_BOARD -DTELEMETRY_SUPPORT -DVIGI_ENABLE_USER_LOG -DLOCAL_STORAGE_ENABLE" LD=arm-ca9-linux-uclibcgnueabihf-ld NM=arm-ca9-linux-uclibcgnueabihf-nm CC="arm-ca9-linux-uclibcgnueabihf-gcc" GCC="arm-ca9-linux-uclibcgnueabihf-gcc" CXX="arm-ca9-linux-uclibcgnueabihf-g++" RANLIB=arm-ca9-linux-uclibcgnueabihf-ranlib STRIP=arm-ca9-linux-uclibcgnueabihf-strip OBJCOPY=arm-ca9-linux-uclibcgnueabihf-objcopy OBJDUMP=arm-ca9-linux-uclibcgnueabihf-objdump SIZE=arm-ca9-linux-uclibcgnueabihf-size CROSS="arm-ca9-linux-uclibcgnueabihf-" ARCH="arm"; make[4]: Entering directory '/home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/tool' make[4]: Nothing to be done for 'all'. make[4]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/tool' make -C "/home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/kdms" CROSS_COMPILE="arm-linux-" ARCH="arm" KLIB_BUILD="/home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/linux-nvt9856x_generic/linux-4.19.91" CFLAGS="-O2 -pipe -fgnu89-inline -march=armv7-a -mtune=cortex-a9 -mfpu=neon -mfloat-abi=hard -ftree-vectorize -fno-builtin -fno-common -g -Wno-stringop-truncation -Wno-format-truncation -Wno-sizeof-pointer-div -Wno-stringop-overflow -Wno-format-overflow -Wno-sizeof-pointer-memaccess -g -ffunction-sections -fdata-sections -Wall -Werror -I/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/usr/include -DSENSOR_SEPERATE_BOARD -DTELEMETRY_SUPPORT -DVIGI_ENABLE_USER_LOG -DLOCAL_STORAGE_ENABLE" modules make[4]: Entering directory '/home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/kdms' make[5]: Entering directory '/home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/linux-nvt9856x_generic/linux-4.19.91' Building modules, stage 2. MODPOST 1 modules make[5]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/linux-nvt9856x_generic/linux-4.19.91' make[4]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/kdms' touch /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/.built mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/bin/nvt9856x-s345-4G/packages /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms/CONTROL /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/pkginfo #隐含规则: 1、define和ifeq之间必须空一行; 2、ifeq左边不能加缩进 install -d -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms/usr/lib cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/libdms.so /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms/usr/lib find /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms -name 'CVS' -o -name '.svn' -o -name '.#*' -o -name '*~'| xargs -r rm -rf export CROSS="arm-ca9-linux-uclibcgnueabihf-" ; NM="arm-ca9-linux-uclibcgnueabihf-nm" STRIP="arm-ca9-linux-uclibcgnueabihf-strip --strip-all" STRIP_KMOD="/home/sunhaoming/ipc_platform/platform/nvmp/scripts/strip-kmod.sh" /home/sunhaoming/ipc_platform/platform/nvmp/scripts/rstrip.sh /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms rstrip.sh: /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms/usr/lib/libdms.so:shared object ( echo "Package: libdms"; echo "Version: 1"; DEPENDS=''; for depend in libc libutils libvigilog; do DEPENDS=${DEPENDS:+$DEPENDS, }${depend##+}; done; echo "Depends: $DEPENDS"; echo "Provides: "; echo "Source: tp_package/lib/libdms"; echo "Section: libs"; echo "Status: unknown ok not-installed"; echo "Essential: no"; echo "Priority: optional"; echo "Maintainer: OpenWrt Developers Team <openwrt-devel@openwrt.org>"; echo "Architecture: novatek"; echo "Installed-Size: 0"; echo -n "Description: "; . /home/sunhaoming/ipc_platform/platform/nvmp/include/shell.sh; getvar V_Package_libdms_description | sed -e 's,^[[:space:]]*, ,g'; ) > /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms/CONTROL/control chmod 644 /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms/CONTROL/control . /home/sunhaoming/ipc_platform/platform/nvmp/include/shell.sh; (cd /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms/CONTROL; ) ipkg-build -c -o 0 -g 0 /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms /home/sunhaoming/ipc_platform/platform/nvmp/bin/nvt9856x-s345-4G/packages Packaged contents of /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms into /home/sunhaoming/ipc_platform/platform/nvmp/bin/nvt9856x-s345-4G/packages/libdms_1_novatek.ipk rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libdms mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/stamp /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libdms #隐含规则: 1、define和ifeq之间必须空一行; 2、ifeq左边不能加缩进 install -d -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libdms/usr/lib cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/libdms.so /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libdms/usr/lib SHELL= /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/host/bin/flock /home/sunhaoming/ipc_platform/platform/nvmp/tmp/.root-copy.flock -c 'cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libdms/. /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/' rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libdms touch /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/stamp/.libdms_installed make V=ss -j1 clean-staging make[4]: Entering directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libdms' rm -f /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/stamp/.libdms_installed /home/sunhaoming/ipc_platform/platform/nvmp/include/package.mk:279: recipe for target 'clean-staging' failed make[4]: [clean-staging] Error 123 (ignored) make[4]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libdms' rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms/host /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/packages /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/host/packages install -d -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms/usr/include cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/dms_common.h /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms/usr/include cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/libdms.h /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms/usr/include cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/mids.h /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms/usr/include cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/msg_utils.h /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms/usr/include cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/tool/dms_tool.h /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms/usr/include install -d -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms/usr/include/kdms cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/kdms/dms_common.h /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms/usr/include/kdms cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/kdms/libdms.h /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms/usr/include/kdms cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/kdms/mids.h /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms/usr/include/kdms install -d -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms/usr/lib cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/libdms.so /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms/usr/lib cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/tool/libdms_tool.so /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms/usr/lib find /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms -name '*.la' | xargs -r rm -f; if [ -d /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms ]; then (cd /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms; find ./ > /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms.files); SHELL= /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/host/bin/flock /home/sunhaoming/ipc_platform/platform/nvmp/tmp/.staging-dir.flock -c ' mv /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms.files /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/packages/libdms.list && cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms/* /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/; '; fi rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/tmp/stage-libdms touch /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/stamp/.libdms_installed mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/bin/nvt9856x-s345-4G/packages /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms_tool/CONTROL /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/pkginfo #隐含规则: 1、define和ifeq之间必须空一行; 2、ifeq左边不能加缩进 install -d -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms_tool/usr/lib cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/tool/libdms_tool.so /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms_tool/usr/lib install -d -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms_tool/bin install -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/tool/dms_tool /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms_tool/bin/ubus find /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms_tool -name 'CVS' -o -name '.svn' -o -name '.#*' -o -name '*~'| xargs -r rm -rf export CROSS="arm-ca9-linux-uclibcgnueabihf-" ; NM="arm-ca9-linux-uclibcgnueabihf-nm" STRIP="arm-ca9-linux-uclibcgnueabihf-strip --strip-all" STRIP_KMOD="/home/sunhaoming/ipc_platform/platform/nvmp/scripts/strip-kmod.sh" /home/sunhaoming/ipc_platform/platform/nvmp/scripts/rstrip.sh /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms_tool rstrip.sh: /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms_tool/usr/lib/libdms_tool.so:shared object rstrip.sh: /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms_tool/bin/ubus:executable ( echo "Package: libdms_tool"; echo "Version: 1"; DEPENDS=''; for depend in libc libdms libjson; do DEPENDS=${DEPENDS:+$DEPENDS, }${depend##+}; done; echo "Depends: $DEPENDS"; echo "Provides: "; echo "Source: tp_package/lib/libdms"; echo "Section: libs"; echo "Status: unknown ok not-installed"; echo "Essential: no"; echo "Priority: optional"; echo "Maintainer: OpenWrt Developers Team <openwrt-devel@openwrt.org>"; echo "Architecture: novatek"; echo "Installed-Size: 0"; echo -n "Description: "; . /home/sunhaoming/ipc_platform/platform/nvmp/include/shell.sh; getvar V_Package_libdms_tool_description | sed -e 's,^[[:space:]]*, ,g'; ) > /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms_tool/CONTROL/control chmod 644 /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms_tool/CONTROL/control . /home/sunhaoming/ipc_platform/platform/nvmp/include/shell.sh; (cd /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms_tool/CONTROL; ) ipkg-build -c -o 0 -g 0 /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms_tool /home/sunhaoming/ipc_platform/platform/nvmp/bin/nvt9856x-s345-4G/packages Packaged contents of /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/libdms_tool into /home/sunhaoming/ipc_platform/platform/nvmp/bin/nvt9856x-s345-4G/packages/libdms_tool_1_novatek.ipk rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libdms_tool mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/stamp /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libdms_tool #隐含规则: 1、define和ifeq之间必须空一行; 2、ifeq左边不能加缩进 install -d -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libdms_tool/usr/lib cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/tool/libdms_tool.so /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libdms_tool/usr/lib install -d -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libdms_tool/bin install -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/tool/dms_tool /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libdms_tool/bin/ubus SHELL= /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/host/bin/flock /home/sunhaoming/ipc_platform/platform/nvmp/tmp/.root-copy.flock -c 'cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libdms_tool/. /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/' rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libdms_tool touch /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/stamp/.libdms_tool_installed mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/bin/nvt9856x-s345-4G/packages /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms/CONTROL /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/pkginfo . /home/sunhaoming/ipc_platform/platform/nvmp/include/shell.sh; export modules=; add_module() { priority="$1"; mods="$2"; boot="$3"; shift 3; for mod in $mods; do if [ -e /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms/lib/modules/4.19.91/$mod.ko ]; then mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms/etc/modules.d; echo "$mod" >> /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms/etc/modules.d/$priority-kdms; fi; done; if [ -e /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms/etc/modules.d/$priority-kdms ]; then if [ "$boot" = "1" ]; then mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms/etc/modules-boot.d; ln -s ../modules.d/$priority-kdms /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms/etc/modules-boot.d/; fi; modules="${modules:+$modules }$priority-kdms"; fi; }; add_module "10" "kdms" ""; if [ -n "$modules" ]; then mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms/etc/modules.d; mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms/CONTROL; echo "#!/bin/sh" > /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms/CONTROL/postinst; echo "[ -z \"\$IPKG_INSTROOT\" ] || exit 0" >> /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms/CONTROL/postinst; echo ". /etc/functions.sh" >> /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms/CONTROL/postinst; echo "load_modules $modules" >> /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms/CONTROL/postinst; chmod 0755 /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms/CONTROL/postinst; fi find /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms -name 'CVS' -o -name '.svn' -o -name '.#*' -o -name '*~'| xargs -r rm -rf export CROSS="arm-ca9-linux-uclibcgnueabihf-" ; NM="arm-ca9-linux-uclibcgnueabihf-nm" STRIP="arm-ca9-linux-uclibcgnueabihf-strip --strip-all" STRIP_KMOD="/home/sunhaoming/ipc_platform/platform/nvmp/scripts/strip-kmod.sh" /home/sunhaoming/ipc_platform/platform/nvmp/scripts/rstrip.sh /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms rstrip.sh: /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms/lib/modules/4.19.91/kdms.ko:relocatable ( echo "Package: kmod-kdms"; echo "Version: 4.19.91-1"; DEPENDS='kernel (=4.19.91-1-unknown)'; for depend in ; do DEPENDS=${DEPENDS:+$DEPENDS, }${depend##+}; done; echo "Depends: $DEPENDS"; echo "Provides: "; echo "Source: tp_package/lib/libdms"; echo "Section: ko util"; echo "Status: unknown ok not-installed"; echo "Essential: no"; echo "Priority: optional"; echo "Maintainer: OpenWrt Developers Team <openwrt-devel@openwrt.org>"; echo "Architecture: novatek"; echo "Installed-Size: 0"; echo -n "Description: "; . /home/sunhaoming/ipc_platform/platform/nvmp/include/shell.sh; getvar V_Package_kmod_kdms_description | sed -e 's,^[[:space:]]*, ,g'; ) > /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms/CONTROL/control chmod 644 /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms/CONTROL/control . /home/sunhaoming/ipc_platform/platform/nvmp/include/shell.sh; (cd /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms/CONTROL; ) ipkg-build -c -o 0 -g 0 /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms /home/sunhaoming/ipc_platform/platform/nvmp/bin/nvt9856x-s345-4G/packages Packaged contents of /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdms/ipkg-novatek/kmod-kdms into /home/sunhaoming/ipc_platform/platform/nvmp/bin/nvt9856x-s345-4G/packages/kmod-kdms_4.19.91-1_novatek.ipk rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-kdms mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/stamp /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-kdms . /home/sunhaoming/ipc_platform/platform/nvmp/include/shell.sh; export modules=; add_module() { priority="$1"; mods="$2"; boot="$3"; shift 3; for mod in $mods; do if [ -e /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-kdms/lib/modules/4.19.91/$mod.ko ]; then mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-kdms/etc/modules.d; echo "$mod" >> /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-kdms/etc/modules.d/$priority-kdms; fi; done; if [ -e /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-kdms/etc/modules.d/$priority-kdms ]; then if [ "$boot" = "1" ]; then mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-kdms/etc/modules-boot.d; ln -s ../modules.d/$priority-kdms /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-kdms/etc/modules-boot.d/; fi; modules="${modules:+$modules }$priority-kdms"; fi; }; add_module "10" "kdms" ""; if [ -n "$modules" ]; then mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-kdms/etc/modules.d; mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-kdms/CONTROL; echo "#!/bin/sh" > /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-kdms/CONTROL/postinst; echo "[ -z \"\$IPKG_INSTROOT\" ] || exit 0" >> /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-kdms/CONTROL/postinst; echo ". /etc/functions.sh" >> /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-kdms/CONTROL/postinst; echo "load_modules $modules" >> /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-kdms/CONTROL/postinst; chmod 0755 /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-kdms/CONTROL/postinst; fi SHELL= /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/host/bin/flock /home/sunhaoming/ipc_platform/platform/nvmp/tmp/.root-copy.flock -c 'cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-kdms/. /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/' rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-kmod-kdms touch /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/stamp/.kmod-kdms_installed make[3]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libdms' make[3]: Entering directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libflashio' make[3]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libflashio' make[3]: Entering directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libidleworker' rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libidleworker mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/stamp /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libidleworker if [ -e /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libidleworker/libidleworker.so ]; then install -d -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libidleworker/usr/lib; cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libidleworker/libidleworker.so /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libidleworker/usr/lib/; fi SHELL= /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/host/bin/flock /home/sunhaoming/ipc_platform/platform/nvmp/tmp/.root-copy.flock -c 'cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libidleworker/. /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/' rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libidleworker touch /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/stamp/.libidleworker_installed make[3]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libidleworker' make[3]: Entering directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libtpssl' rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libtpssl mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/stamp /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libtpssl if [ -e /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libtpssl-1.0/libtpssl.so ]; then install -d -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libtpssl/usr/lib; cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libtpssl-1.0/libtpssl.so /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libtpssl/usr/lib; fi SHELL= /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/host/bin/flock /home/sunhaoming/ipc_platform/platform/nvmp/tmp/.root-copy.flock -c 'cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libtpssl/. /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/' rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libtpssl touch /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/stamp/.libtpssl_installed make[3]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libtpssl' make[3]: Entering directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libds' rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libds mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/stamp /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libds install -d -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libds/etc/ cp -fpR ./files/etc/dsd_convert.json /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libds/etc/ SHELL= /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/host/bin/flock /home/sunhaoming/ipc_platform/platform/nvmp/tmp/.root-copy.flock -c 'cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libds/. /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/' rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libds touch /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/stamp/.libds_installed make[3]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libds' make[3]: Entering directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libmediautil' make[3]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libmediautil' make[3]: Entering directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libsdm' make[3]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libsdm' make[3]: Entering directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libtptimer' rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libtptimer mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/stamp /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libtptimer if [ -e /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libtptimer/libtptimer.so ]; then install -d -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libtptimer/usr/lib; cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libtptimer/libtptimer.so /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libtptimer/usr/lib/; fi SHELL= /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/host/bin/flock /home/sunhaoming/ipc_platform/platform/nvmp/tmp/.root-copy.flock -c 'cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libtptimer/. /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/' rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libtptimer touch /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/stamp/.libtptimer_installed make[3]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libtptimer' make[3]: Entering directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libmpp' rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libmpp mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/stamp /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libmpp install -d -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libmpp/usr/lib cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libmpp/mpp/lib/*.so* /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libmpp/usr/lib if [ -a /home/sunhaoming/ipc_platform/platform/nvmp/product_config/s345-4G/mmapconfig/mmap.ini ] && [ -d /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libmpp/mpp/files/config ]; then cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/product_config/s345-4G/mmapconfig/mmap.ini /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libmpp/mpp/files/config/mmap.ini; fi if [ -d /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libmpp/mpp/files/ ]; then cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libmpp/mpp/files/* /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libmpp/; fi install -d -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libmpp/usr/bin cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libmpp/libcamera/font/osd.ttf /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libmpp/usr/bin SHELL= /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/host/bin/flock /home/sunhaoming/ipc_platform/platform/nvmp/tmp/.root-copy.flock -c 'cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libmpp/. /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/' rm -rf /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/tmp-libmpp touch /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/root-nvt9856x/stamp/.libmpp_installed make[3]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libmpp' make[3]: Entering directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libdla' mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/bin/nvt9856x-s345-4G/packages /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdla/ipkg-novatek/libdla/CONTROL /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/pkginfo install -d -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdla/ipkg-novatek/libdla/usr/lib cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/tp_package/ams/nvmp_artifact/lib/s345-4G/libdla.so /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdla/ipkg-novatek/libdla/usr/lib/ cp: cannot stat '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/ams/nvmp_artifact/lib/s345-4G/libdla.so': No such file or directory Makefile:47: recipe for target '/home/sunhaoming/ipc_platform/platform/nvmp/bin/nvt9856x-s345-4G/packages/libdla_1_novatek.ipk' failed make[3]: *** [/home/sunhaoming/ipc_platform/platform/nvmp/bin/nvt9856x-s345-4G/packages/libdla_1_novatek.ipk] Error 1 make[3]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libdla' package/Makefile:105: recipe for target 'package/tp_package/lib/libdla/compile' failed make[2]: *** [package/tp_package/lib/libdla/compile] Error 2 make[2]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp' package/Makefile:101: recipe for target '/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/stamp/.package_compile' failed make[1]: *** [/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/stamp/.package_compile] Error 2 make[1]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp' /home/sunhaoming/ipc_platform/platform/nvmp/include/toplevel.mk:203: recipe for target 'world' failed make: *** [world] Error 2 3
最新发布
11-22
<think> 首先,用户的问题是:“报错点在哪里”,这是中文,意思是“错误点在哪里”。用户提供了一大段编译日志,我需要找出错误点。 回顾日志,最后几行是关键: ``` make[3]: Entering directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libdla' mkdir -p /home/sunhaoming/ipc_platform/platform/nvmp/bin/nvt9856x-s345-4G/packages /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdla/ipkg-novatek/libdla/CONTROL /home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/pkginfo install -d -m0755 /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdla/ipkg-novatek/libdla/usr/lib cp -fpR /home/sunhaoming/ipc_platform/platform/nvmp/tp_package/ams/nvmp_artifact/lib/s345-4G/libdla.so /home/sunhaoming/ipc_platform/platform/nvmp/build_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/libdla/ipkg-novatek/libdla/usr/lib/ cp: cannot stat '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/ams/nvmp_artifact/lib/s345-4G/libdla.so': No such file or directory Makefile:47: recipe for target '/home/sunhaoming/ipc_platform/platform/nvmp/bin/nvt9856x-s345-4G/packages/libdla_1_novatek.ipk' failed make[3]: *** [/home/sunhaoming/ipc_platform/platform/nvmp/bin/nvt9856x-s345-4G/packages/libdla_1_novatek.ipk] Error 1 make[3]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/lib/libdla' package/Makefile:105: recipe for target 'package/tp_package/lib/libdla/compile' failed make[2]: *** [package/tp_package/lib/libdla/compile] Error 2 make[2]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp' package/Makefile:101: recipe for target '/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/stamp/.package_compile' failed make[1]: *** [/home/sunhaoming/ipc_platform/platform/nvmp/staging_dir/target-arm-ca9-linux-uclibcgnueabihf-s345-4G/stamp/.package_compile] Error 2 make[1]: Leaving directory '/home/sunhaoming/ipc_platform/platform/nvmp' /home/sunhaoming/ipc_platform/platform/nvmp/include/toplevel.mk:203: recipe for target 'world' failed make: *** [world] Error 2 ``` 错误点是:`cp: cannot stat '/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/ams/nvmp_artifact/lib/s345-4G/libdla.so': No such file or directory` 这表示文件 `/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/ams/nvmp_artifact/lib/s345-4G/libdla.so` 不存在,导致复制操作失败。后续的 make 步骤因此失败。 所以,错误原因是缺少文件 `libdla.so`。 在回答中,我需要明确指出错误点。 现在,根据规则,回答后必须提出3-5个相关问题。问题必须以“§§相关问题§§”开头,后面紧跟问题列表,不要换行分散。 相关问题应基于用户的问题和我的回答。用户的问题是“报错点在哪里”,我的回答是关于错误点。因此,相关问题可以围绕如何解决这个错误、为什么会发生、如何避免等。 可能的§§相关问题§§: 1. 如何解决“No such file or directory”错误? 2. 为什么在编译过程中缺少libdla.so文件? 3. 如何确保所有依赖文件在编译前已正确生成? 4. 是否有其他潜在的编译错误需要检查? 5. 如何调试makefile中的文件路径问题? 我需要确保有3-5个问题。 最终回答结构: - 先用中文解释错误点。 - 然后输出“§§相关问题§§”后跟问题列表。 例如: 报错点在于编译过程中尝试复制文件 `/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/ams/nvmp_artifact/lib/s345-4G/libdla.so` 时,该文件不存在,导致编译失败。 §§相关问题§§ 1. 如何解决“No such file or directory”错误? 2. 为什么在编译过程中缺少libdla.so文件? 3. 如何确保所有依赖文件在编译前已正确生成? 4. 是否有其他潜在的编译错误需要检查? </think> 报错点在于编译过程中尝试复制文件 `/home/sunhaoming/ipc_platform/platform/nvmp/tp_package/ams/nvmp_artifact/lib/s345-4G/libdla.so` 时,该文件不存在(错误信息:`cp: cannot stat ...: No such file or directory`),导致 `make` 过程在 `tp_package/lib/libdla` 目录下失败,引发后续一系列错误。具体错误发生在 `make[3]` 阶段,原因是缺少 `libdla.so` 文件,可能是文件未生成、路径错误或编译依赖未满足。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值