I'm trying to build a zynthian synthesizer on a nanoPi m4v2. The principle is to start from a minimal buster image and run a bunch of compilation scripts (see here on github) to create all the needed software. But all that stuff is for Raspberry Pi.
In an initialization script (see here on github) they define compilation flags like this:
if [ "$ZYNTHIAN_FORCE_RBPI_VERSION" ]; then
hw_architecture="armv7l"
rbpi_version=$ZYNTHIAN_FORCE_RBPI_VERSION
else
hw_architecture=`uname -m 2>/dev/null`
if [ -e "/sys/firmware/devicetree/base/model" ]; then
rbpi_version=`tr -d '\0' < /sys/firmware/devicetree/base/model`
else
rbpi_version=""
fi
fi
if [ "$hw_architecture" = "armv7l" ]; then
# default is: RPi3
CPU="-mcpu=cortex-a53 -mtune=cortex-a53"
FPU="-mfpu=neon-fp-armv8 -mneon-for-64bits"
if [[ "$rbpi_version" =~ [2] ]]; then
CPU="-mcpu=cortex-a7 -mtune=cortex-a7"
FPU="-mfpu=neon-vfpv4"
fi
#CPU="${CPU} -Ofast" #Breaks mod-ttymidi build
FPU="${FPU} -mfloat-abi=hard -mlittle-endian -munaligned-access -mvectorize-with-neon-quad -ftree-vectorize"
CFLAGS_UNSAFE="-funsafe-loop-optimizations -funsafe-math-optimizations -ffast-math"
fi
export MACHINE_HW_NAME=$hw_architecture
export RBPI_VERSION=$rbpi_version
export CFLAGS="${CPU} ${FPU}"
export CXXFLAGS=${CFLAGS}
export CFLAGS_UNSAFE=""
export RASPI=true
I'm totally confused with aarch64, arm64, armv7, armv8 ...
Can someone help me to set the right options here.
What I've done so far, was to remove all these FLAGS initialization (because of errors), but this is for sure not the best way to optimize that
Question
le51
Hi,
I'm trying to build a zynthian synthesizer on a nanoPi m4v2. The principle is to start from a minimal buster image and run a bunch of compilation scripts (see here on github) to create all the needed software. But all that stuff is for Raspberry Pi.
In an initialization script (see here on github) they define compilation flags like this:
if [ "$ZYNTHIAN_FORCE_RBPI_VERSION" ]; then hw_architecture="armv7l" rbpi_version=$ZYNTHIAN_FORCE_RBPI_VERSION else hw_architecture=`uname -m 2>/dev/null` if [ -e "/sys/firmware/devicetree/base/model" ]; then rbpi_version=`tr -d '\0' < /sys/firmware/devicetree/base/model` else rbpi_version="" fi fi if [ "$hw_architecture" = "armv7l" ]; then # default is: RPi3 CPU="-mcpu=cortex-a53 -mtune=cortex-a53" FPU="-mfpu=neon-fp-armv8 -mneon-for-64bits" if [[ "$rbpi_version" =~ [2] ]]; then CPU="-mcpu=cortex-a7 -mtune=cortex-a7" FPU="-mfpu=neon-vfpv4" fi #CPU="${CPU} -Ofast" #Breaks mod-ttymidi build FPU="${FPU} -mfloat-abi=hard -mlittle-endian -munaligned-access -mvectorize-with-neon-quad -ftree-vectorize" CFLAGS_UNSAFE="-funsafe-loop-optimizations -funsafe-math-optimizations -ffast-math" fi export MACHINE_HW_NAME=$hw_architecture export RBPI_VERSION=$rbpi_version export CFLAGS="${CPU} ${FPU}" export CXXFLAGS=${CFLAGS} export CFLAGS_UNSAFE="" export RASPI=true
I'm totally confused with aarch64, arm64, armv7, armv8 ...
Can someone help me to set the right options here.
What I've done so far, was to remove all these FLAGS initialization (because of errors), but this is for sure not the best way to optimize that
Thank you for your input!
Link to comment
Share on other sites
3 answers to this question
Recommended Posts