Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

arm-none-eabi/bin/ld: region `flash' overflowed by 27353 bytes #9251

Closed
LLlkaiwen opened this issue Apr 6, 2018 · 7 comments
Closed

arm-none-eabi/bin/ld: region `flash' overflowed by 27353 bytes #9251

LLlkaiwen opened this issue Apr 6, 2018 · 7 comments

Comments

@LLlkaiwen
Copy link

LLlkaiwen commented Apr 6, 2018

i have a problem when i make px4fmu-v2_default with vmware ubuntu&gcc-arm-none-eabi-5_4.
the info is below:
/home/lkw/gcc-arm-none-eabi-5_4-2016q2/bin/../lib/gcc/arm-none-eabi/5.4.1/../../../../arm-none-eabi/bin/ld: nuttx_px4fmu-v2_default.elf section .text' will not fit in region flash'
/home/lkw/gcc-arm-none-eabi-5_4-2016q2/bin/../lib/gcc/arm-none-eabi/5.4.1/../../../../arm-none-eabi/bin/ld: address 0x8105d18 of nuttx_px4fmu-v2_default.elf section __param' is not within region flash'
/home/lkw/gcc-arm-none-eabi-5_4-2016q2/bin/../lib/gcc/arm-none-eabi/5.4.1/../../../../arm-none-eabi/bin/ld: address 0x8105d18 of nuttx_px4fmu-v2_default.elf section __param' is not within region flash'
/home/lkw/gcc-arm-none-eabi-5_4-2016q2/bin/../lib/gcc/arm-none-eabi/5.4.1/../../../../arm-none-eabi/bin/ld: address 0x8105d18 of nuttx_px4fmu-v2_default.elf section __param' is not within region flash'
/home/lkw/gcc-arm-none-eabi-5_4-2016q2/bin/../lib/gcc/arm-none-eabi/5.4.1/../../../../arm-none-eabi/bin/ld: region `flash' overflowed by 27353 bytes
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
Makefile:153: recipe for target 'px4fmu-v2_default' failed
make: *** [px4fmu-v2_default] Error 1

@mhkabir
Copy link
Member

mhkabir commented Apr 6, 2018

Use the supported version of the compiler - https://dev.px4.io/en/setup/dev_env_linux_ubuntu.html#nuttx-based-hardware

@mhkabir mhkabir closed this as completed Apr 6, 2018
@LLlkaiwen
Copy link
Author

i get the supported version but it not work:
/home/lkw/gcc-arm-none-eabi-7-2017-q4-major/bin/../lib/gcc/arm-none-eabi/7.2.1/../../../../arm-none-eabi/bin/ld: nuttx_px4fmu-v2_default.elf section .text' will not fit in region flash'
/home/lkw/gcc-arm-none-eabi-7-2017-q4-major/bin/../lib/gcc/arm-none-eabi/7.2.1/../../../../arm-none-eabi/bin/ld: address 0x81056b0 of nuttx_px4fmu-v2_default.elf section __param' is not within region flash'
/home/lkw/gcc-arm-none-eabi-7-2017-q4-major/bin/../lib/gcc/arm-none-eabi/7.2.1/../../../../arm-none-eabi/bin/ld: address 0x81056b0 of nuttx_px4fmu-v2_default.elf section __param' is not within region flash'
/home/lkw/gcc-arm-none-eabi-7-2017-q4-major/bin/../lib/gcc/arm-none-eabi/7.2.1/../../../../arm-none-eabi/bin/ld: region `flash' overflowed by 25713 bytes
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
Makefile:153: recipe for target 'px4fmu-v2_default' failed
make: *** [px4fmu-v2_default] Error 1

@LLlkaiwen
Copy link
Author

However i successfully make px4fmu-v5_default and make px4fmu-v4_default just now. So what is the problem?

@LLlkaiwen
Copy link
Author

Another problem :make posix_sitl_default jmavsim

com.jogamp.opengl.GLException: J3D-Renderer-1: createImpl ARB n/a but required, profile > GL2 requested (OpenGL >= 3.1). Requested: GLProfile[GL3bc/GL3bc.sw], current: 3.0 (Compat profile, compat[ES2], FBO, software) - 3.0 Mesa 17.2.8

@Alex031544
Copy link

Hi,

I have the same problem after I uncomment modules/uavcan and set(config_uavcan_num_ifaces 2)
in nuttx_px4fmu-v2_default.cmake in order to use UAVCAN on the Pixhawk 2.4.8.

This is the make output:

$ make px4fmu-v2_default
-- PX4 VERSION: v1.8.0-137-ge4be8eccc
-- CONFIG: nuttx_px4fmu-v2_default
-- Build Type: MinSizeRel
CMake Deprecation Warning at /usr/share/cmake-3.10/Modules/CMakeForceCompiler.cmake:69 (message):
  The CMAKE_FORCE_C_COMPILER macro is deprecated.  Instead just set
  CMAKE_C_COMPILER and allow CMake to identify the compiler.
Call Stack (most recent call first):
  cmake/toolchains/Toolchain-arm-none-eabi.cmake:31 (cmake_force_c_compiler)
  /usr/share/cmake-3.10/Modules/CMakeDetermineSystem.cmake:94 (include)
  CMakeLists.txt:176 (project)


CMake Deprecation Warning at /usr/share/cmake-3.10/Modules/CMakeForceCompiler.cmake:83 (message):
  The CMAKE_FORCE_CXX_COMPILER macro is deprecated.  Instead just set
  CMAKE_CXX_COMPILER and allow CMake to identify the compiler.
Call Stack (most recent call first):
  cmake/toolchains/Toolchain-arm-none-eabi.cmake:37 (cmake_force_cxx_compiler)
  /usr/share/cmake-3.10/Modules/CMakeDetermineSystem.cmake:94 (include)
  CMakeLists.txt:176 (project)


CMake Deprecation Warning at /usr/share/cmake-3.10/Modules/CMakeForceCompiler.cmake:69 (message):
  The CMAKE_FORCE_C_COMPILER macro is deprecated.  Instead just set
  CMAKE_C_COMPILER and allow CMake to identify the compiler.
Call Stack (most recent call first):
  cmake/toolchains/Toolchain-arm-none-eabi.cmake:31 (cmake_force_c_compiler)
  build/nuttx_px4fmu-v2_default/CMakeFiles/3.10.2/CMakeSystem.cmake:6 (include)
  CMakeLists.txt:176 (project)


CMake Deprecation Warning at /usr/share/cmake-3.10/Modules/CMakeForceCompiler.cmake:83 (message):
  The CMAKE_FORCE_CXX_COMPILER macro is deprecated.  Instead just set
  CMAKE_CXX_COMPILER and allow CMake to identify the compiler.
Call Stack (most recent call first):
  cmake/toolchains/Toolchain-arm-none-eabi.cmake:37 (cmake_force_cxx_compiler)
  build/nuttx_px4fmu-v2_default/CMakeFiles/3.10.2/CMakeSystem.cmake:6 (include)
  CMakeLists.txt:176 (project)


-- The ASM compiler identification is GNU
-- Found assembler: /home/alex/workspace/px4/toolchain/gcc-arm-none-eabi-7-2017-q4-major/bin/arm-none-eabi-gcc
-- Found PythonInterp: /usr/bin/python (found version "2.7.15") 
-- Found PY_jinja2: /usr/lib/python2.7/dist-packages/jinja2  
-- C compiler: arm-none-eabi-gcc (GNU Tools for Arm Embedded Processors 7-2017-q4-major) 7.2.1 20170904 (release) [ARM/embedded-7-branch revision 255204]
-- C++ compiler: arm-none-eabi-g++ (GNU Tools for Arm Embedded Processors 7-2017-q4-major) 7.2.1 20170904 (release) [ARM/embedded-7-branch revision 255204]
-- PX4 ECL: Very lightweight Estimation & Control Library v0.9.0-561-gb26c2d6
-- Building and including px4io-v2
-- Using C++03
-- Release build type: MinSizeRel
-- Adding UAVCAN STM32 platform driver
-- NuttX: px4fmu-v2 nsh cortex-m4
-- ROMFS: px4fmu_common
-- Configuring done
-- Generating done
-- Build files have been written to: /home/alex/workspace/px4/toolchain/Firmware/build/nuttx_px4fmu-v2_default
ninja: Entering directory `/home/alex/workspace/px4/toolchain/Firmware/build/nuttx_px4fmu-v2_default'
[0/681] Building px4io-v2
ninja: Entering directory `/home/alex/workspace/px4/toolchain/Firmware/build/nuttx_px4io-v2_default'
ninja: no work to do.
[679/681] Linking CXX executable nuttx_px4fmu-v2_default.elf
FAILED: nuttx_px4fmu-v2_default.elf 
: && /home/alex/workspace/px4/toolchain/gcc-arm-none-eabi-7-2017-q4-major/bin/arm-none-eabi-g++  -fno-common -ffunction-sections -fdata-sections -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard -fno-common -ffunction-sections -fdata-sections -g -fno-exceptions -fno-rtti -std=gnu++11 -fno-threadsafe-statics -DCONFIG_WCHAR_BUILTIN -D__CUSTOM_FILE_IO__ -fcheck-new -Wall -Wextra -Werror -Warray-bounds -Wdisabled-optimization -Wdouble-promotion -Wfatal-errors -Wfloat-equal -Wformat-security -Winit-self -Wlogical-op -Wmissing-declarations -Wmissing-field-initializers -Wpointer-arith -Wshadow -Wuninitialized -Wunknown-pragmas -Wunused-variable -Wno-implicit-fallthrough -Wno-missing-include-dirs -Wno-unused-parameter -Wunused-but-set-variable -Wformat=1 -Wno-missing-field-initializers -Wno-overloaded-virtual -Wreorder -Wno-format-truncation -fvisibility=hidden -include visibility.h -fno-strict-aliasing -fomit-frame-pointer -fno-math-errno -funsafe-math-optimizations -ffunction-sections -fdata-sections -fno-strength-reduce -fno-builtin-printf -Os -DNDEBUG  -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard -nodefaultlibs -nostdlib -Wl,--warn-common,--gc-sections platforms/nuttx/CMakeFiles/nuttx_px4fmu-v2_default.elf.dir/__/__/src/platforms/empty.c.obj  -o nuttx_px4fmu-v2_default.elf -L/home/alex/workspace/px4/toolchain/Firmware/build/nuttx_px4fmu-v2_default/external/Install/lib -nodefaultlibs -nostdlib -fno-exceptions -fno-rtti -Wl,--script=/home/alex/workspace/px4/toolchain/Firmware/build/nuttx_px4fmu-v2_default/NuttX/nuttx/configs/px4fmu-v2/scripts/ld.script -Wl,-Map=nuttx_px4fmu-v2_default.map -Wl,--warn-common -Wl,--gc-sections -Wl,--start-group NuttX/apps/libapps.a NuttX/nuttx/arch/arm/src/libarch.a NuttX/nuttx/binfmt/libbinfmt.a NuttX/nuttx/libc/libc.a NuttX/nuttx/configs/libconfigs.a NuttX/nuttx/libxx/libcxx.a NuttX/nuttx/drivers/libdrivers.a NuttX/nuttx/fs/libfs.a NuttX/nuttx/mm/libmm.a NuttX/nuttx/sched/libsched.a -Wl,--end-group -lm src/modules/uORB/libmodules__uORB.a src/drivers/barometer/ms5611/libdrivers__ms5611.a src/drivers/camera_trigger/libdrivers__camera_trigger.a src/drivers/differential_pressure/ms4525/libdrivers__ms4525_airspeed.a src/drivers/differential_pressure/ms5525/libdrivers__ms5525_airspeed.a src/drivers/differential_pressure/sdp3x/libdrivers__sdp3x_airspeed.a src/drivers/distance_sensor/ll40ls/libdrivers__ll40ls.a src/drivers/distance_sensor/sf0x/libdrivers__sf0x.a src/drivers/distance_sensor/sf1xx/libdrivers__sf1xx.a src/drivers/distance_sensor/srf02/libdrivers__srf02.a src/drivers/gps/libdrivers__gps.a src/drivers/imu/l3gd20/libdrivers__l3gd20.a src/drivers/imu/lsm303d/libdrivers__lsm303d.a src/drivers/imu/mpu6000/libdrivers__mpu6000.a src/drivers/imu/mpu9250/libdrivers__mpu9250.a src/drivers/magnetometer/hmc5883/libdrivers__hmc5883.a src/drivers/magnetometer/lis3mdl/libdrivers__lis3mdl.a src/drivers/pwm_input/libdrivers__pwm_input.a src/drivers/px4flow/libdrivers__px4flow.a src/drivers/px4fmu/libdrivers__px4fmu.a src/drivers/px4io/libdrivers__px4io.a src/drivers/rgbled/libdrivers__rgbled.a src/drivers/stm32/adc/libdrivers__adc.a src/drivers/stm32/tone_alarm/libdrivers__tone_alarm.a src/drivers/vmount/libdrivers__vmount.a src/modules/sensors/libmodules__sensors.a src/systemcmds/bl_update/libsystemcmds__bl_update.a src/systemcmds/hardfault_log/libsystemcmds__hardfault_log.a src/systemcmds/mixer/libsystemcmds__mixer.a src/systemcmds/mtd/libsystemcmds__mtd.a src/systemcmds/param/libsystemcmds__param.a src/systemcmds/perf/libsystemcmds__perf.a src/systemcmds/pwm/libsystemcmds__pwm.a src/systemcmds/reboot/libsystemcmds__reboot.a src/systemcmds/top/libsystemcmds__top.a src/systemcmds/tune_control/libsystemcmds__tune_control.a src/systemcmds/ver/libsystemcmds__ver.a src/modules/camera_feedback/libmodules__camera_feedback.a src/modules/commander/libmodules__commander.a src/modules/events/libmodules__events.a src/modules/land_detector/libmodules__land_detector.a src/modules/load_mon/libmodules__load_mon.a src/modules/mavlink/libmodules__mavlink.a src/modules/navigator/libmodules__navigator.a src/modules/uavcan/libmodules__uavcan.a src/modules/ekf2/libmodules__ekf2.a src/modules/fw_att_control/libmodules__fw_att_control.a src/modules/fw_pos_control_l1/libmodules__fw_pos_control_l1.a src/modules/mc_att_control/libmodules__mc_att_control.a src/modules/mc_pos_control/libmodules__mc_pos_control.a src/modules/vtol_att_control/libmodules__vtol_att_control.a src/modules/logger/libmodules__logger.a src/modules/dataman/libmodules__dataman.a src/examples/px4_simple_app2/libexamples__px4_simple_app2.a src/modules/uORB/libmodules__uORB.a ROMFS/libromfs.a src/lib/drivers/airspeed/libdrivers__airspeed.a src/lib/rc/librc.a src/lib/led/libled.a src/lib/battery/libbattery.a src/lib/ecl/validation/libecl_validation.a src/lib/tunes/libtunes.a src/lib/DriverFramework/framework/src/libdf_driver_framework.a src/lib/airspeed/libairspeed.a src/lib/mixer/libmixer.a src/modules/uavcan/libuavcan/libuavcan/libuavcan.a src/modules/uavcan/libuavcan/libuavcan_drivers/stm32/driver/libuavcan_stm32_driver.a src/lib/ecl/EKF/libecl_EKF.a src/lib/ecl/geo_lookup/libecl_geo_lookup.a src/lib/ecl/attitude_fw/libecl_attitude_fw.a src/lib/ecl/l1/libecl_l1.a src/lib/ecl/tecs/libecl_tecs.a src/modules/fw_pos_control_l1/launchdetection/liblaunchdetection.a src/modules/fw_pos_control_l1/runway_takeoff/librunway_takeoff.a src/lib/circuit_breaker/libcircuit_breaker.a src/lib/conversion/libconversion.a src/lib/mathlib/libmathlib.a src/lib/ecl/geo/libecl_geo.a src/lib/controllib/libcontrollib.a src/lib/FlightTasks/libflight_tasks.a src/lib/pwm_limit/libpwm_limit.a src/lib/version/libversion.a src/platforms/common/libplatforms__common.a platforms/nuttx/src/px4_layer/libpx4_layer.a NuttX/nuttx/arch/arm/src/libarch.a src/drivers/boards/px4fmu-v2/libdrivers_board.a src/drivers/stm32/libdrivers_arch.a src/drivers/boards/common/libdrivers_boards_common.a src/drivers/boards/common/stm32/libdrivers_boards_common_arch.a src/modules/systemlib/libsystemlib.a src/lib/drivers/device/libdrivers__device.a src/lib/drivers/led/libdrivers__led.a src/lib/parameters/libparameters.a src/lib/parameters/flashparams/libflashparams.a NuttX/nuttx/arch/arm/src/libarch.a src/drivers/boards/px4fmu-v2/libdrivers_board.a src/drivers/stm32/libdrivers_arch.a src/drivers/boards/common/libdrivers_boards_common.a src/drivers/boards/common/stm32/libdrivers_boards_common_arch.a src/modules/systemlib/libsystemlib.a src/lib/drivers/device/libdrivers__device.a src/lib/drivers/led/libdrivers__led.a src/lib/parameters/libparameters.a src/lib/parameters/flashparams/libflashparams.a NuttX/apps/libapps.a NuttX/nuttx/libxx/libcxx.a NuttX/nuttx/libc/libc.a NuttX/nuttx/drivers/libdrivers.a NuttX/nuttx/fs/libfs.a NuttX/nuttx/mm/libmm.a NuttX/nuttx/sched/libsched.a -lm -lgcc msg/libuorb_msgs.a src/lib/perf/libperf.a src/lib/parameters/tinybson/libtinybson.a && :
/home/alex/workspace/px4/toolchain/gcc-arm-none-eabi-7-2017-q4-major/bin/../lib/gcc/arm-none-eabi/7.2.1/../../../../arm-none-eabi/bin/ld: nuttx_px4fmu-v2_default.elf section `.text' will not fit in region `flash'
/home/alex/workspace/px4/toolchain/gcc-arm-none-eabi-7-2017-q4-major/bin/../lib/gcc/arm-none-eabi/7.2.1/../../../../arm-none-eabi/bin/ld: address 0x8118c14 of nuttx_px4fmu-v2_default.elf section `__param' is not within region `flash'
/home/alex/workspace/px4/toolchain/gcc-arm-none-eabi-7-2017-q4-major/bin/../lib/gcc/arm-none-eabi/7.2.1/../../../../arm-none-eabi/bin/ld: address 0x8118c14 of nuttx_px4fmu-v2_default.elf section `__param' is not within region `flash'
/home/alex/workspace/px4/toolchain/gcc-arm-none-eabi-7-2017-q4-major/bin/../lib/gcc/arm-none-eabi/7.2.1/../../../../arm-none-eabi/bin/ld: region `flash' overflowed by 104888 bytes
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
Makefile:154: recipe for target 'px4fmu-v2_default' failed
make: *** [px4fmu-v2_default] Error 1

How to solve this issue?

@LorenzMeier
Copy link
Member

You have hit the flash limit. You need to use a different configuration to use UAVCAN. Most likely your board does already support the px4fmu-v3_default target. Try it with that. https://dev.px4.io/en/setup/building_px4.html#building_nuttx

@Alex031544
Copy link

If I switch to px4fmu-v3_default this error points out the 1 MB issue:

ERROR: 
The Board uses bootloader revision 4 and can therefore not determine
if flashing more than 1 MB (px4fmu-v3_default) is safe, chances are
high that it is not safe! If unsure, use px4fmu-v2_default.

But reducing the number of modules which shall be loaded to the Pixhawk helps at this point.

Thank for your help :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants