#!/bin/bash # env.sh — окружение для сборки под arm-uclinuxfdpiceabi (FDPIC, thumb) TOP=`pwd` PREFIX="${1:-${TOP}/arm-uclinuxfdpiceabi/sysroot/usr}" TARGET=arm-uclinuxfdpiceabi TOOLCHAIN=arm-uclinuxfdpiceabi # Флаги, которые любит именно тулчейн CFLAGS_TOOLSET='-O2' ARFLAGS_TARGET="" CFLAGS_TARGET='-Os -mthumb' CXXFLAGS_TARGET=$CFLAGS_TARGET LDFLAGS_TARGET='-Wl,--fdpic' # Самое важное — сразу указываем компилятор и линковщик CC="${TOOLCHAIN}-gcc ${CFLAGS_TOOLSET} ${CFLAGS_TARGET}" CXX="${TOOLCHAIN}-g++ ${CFLAGS_TOOLSET} ${CXXFLAGS_TARGET}" CPP="${TOOLCHAIN}-cpp" LD="${TOOLCHAIN}-ld" AR="${TOOLCHAIN}-ar ${ARFLAGS_TARGET}" AS="${TOOLCHAIN}-as" NM="${TOOLCHAIN}-nm" RANLIB="${TOOLCHAIN}-ranlib" STRIP="${TOOLCHAIN}-strip" OBJCOPY="${TOOLCHAIN}-objcopy" OBJDUMP="${TOOLCHAIN}-objdump" # Путь к бинарникам тулчейна — в самое начало PATH PATH="${TOP}/${TARGET}/bin:${PATH}" # Экспортируем переменные export PREFIX export TARGET export TOOLCHAIN export CC CXX CPP LD AR AS NM RANLIB STRIP STRIP OBJCOPY OBJDUMP export CFLAGS CXXFLAGS LDFLAGS export CFLAGS_FOR_TARGET CXXFLAGS_FOR_TARGET LDFLAGS_FOR_TARGET export PATH export SUBARCH=armv7-m export SUBMODE=thumb echo "Окружение для ${TARGET} (Thumb/FDPIC/Thumb) активировано" echo " CC = $CC" echo " CXX = $CXX"