解决Selected processor does not support ARM mode `dmb st‘的问题

问题

在树莓派上,使用arm-linux-gcc编译时出现Error:

/tmp/ccodAqNV.s:1831: Error: selected processor does not support dmb st' in Selected processor does not support ARM mode dmb st’

I came accoss this problem when doing a lava test on lava-lng-arndale03:

  • git clone git://git.linaro.org/lng/odp.git
    Cloning into ‘odp’…
  • cd odp
  • make
    make -C /lava-lng-arndale03/tests/0_odp-generator-server/odp/platform/linux-generic libs
    make[1]: Entering directory ‘/lava-lng-arndale03/tests/0_odp-generator-server/odp/platform/linux-generic’
    mkdir -p ./obj
    mkdir -p ./lib
    Compiling source/odp_barrier.c
    cc -c -MD -I…/…/include -I./include -I./include/api -DODP_DEBUG_PRINT=1 -O3 -pthread -W -Wall -Werror -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wold-style-definition -Wpointer-arith -Wcast-align -Wnested-externs -Wcast-qual -Wformat-nonliteral -Wformat-security -Wundef -Wwrite-strings -o obj/odp_barrier.o source/odp_barrier.c
    /tmp/cc50qrUa.s: Assembler messages:
    /tmp/cc50qrUa.s:28: Error: selected processor does not support ARM mode dmb st' /tmp/cc50qrUa.s:43: Error: selected processor does not support ARM mode dmb st’
    Makefile:97: recipe for target ‘obj/odp_barrier.o’ failed
    make[1]: *** [obj/odp_barrier.o] Error 1
    make[1]: Leaving directory ‘/lava-lng-arndale03/tests/0_odp-generator-server/odp/platform/linux-generic’
    Makefile:37: recipe for target ‘lib’ failed
    make: *** [lib] Error 2

The test link is:

解决

默认情况下,编译器似乎未配置为armv7a

-march=armv7-a传递给编译器即可——更改makefile的g++编译参数

你可能感兴趣的:(c++开发,linux,arm,dmb,st,processor)