我按照此处说明的步骤安装所需的包并构建示例之一。但是我遇到了一个问题,无法获得十六进制输出。当我运行第一个命令时:
cmake -G Ninja -DMOVESENSE_CORE_LIBRARY=../MovesenseCoreLib/ -DCMAKE_TOOLCHAIN_FILE=../MovesenseCoreLib/toolchain/gcc-nrf52.cmake ../samples/blinky_app
我得到以下输出:
> -- The C compiler identification is GNU 4.9.3
> -- The CXX compiler identification is GNU 4.9.3
> -- Check for working C compiler: C:/Program Files (x86)/GNU Tools ARM Embedded/4.9 2015q3/bin/arm-none-eabi-gcc.exe
> -- Check for working C compiler: C:/Program Files (x86)/GNU Tools ARM Embedded/4.9 2015q3/bin/arm-none-eabi-gcc.exe -- works
> -- Detecting C compiler ABI info
> -- Detecting C compiler ABI info - done
> -- Detecting C compile features
> -- Detecting C compile features - done
> -- Check for working CXX compiler: C:/Program Files (x86)/GNU Tools ARM Embedded/4.9 2015q3/bin/arm-none-eabi-gcc.exe
> -- Check for working CXX compiler: C:/Program Files (x86)/GNU Tools ARM Embedded/4.9 2015q3/bin/arm-none-eabi-gcc.exe -- works
> -- Detecting CXX compiler ABI info
> -- Detecting CXX compiler ABI info - done
> -- Detecting CXX compile features
> -- Detecting CXX compile features - done
> -- The ASM compiler identification is GNU
> -- Found assembler: C:/Program Files (x86)/GNU Tools ARM Embedded/4.9 2015q3/bin/arm-none-eabi-gcc.exe CMake Warning at CMakeLists.txt:12
> (message): Defaulting build type to 'Debug'
>
>
> -- PATH_TOOL_PYTHON set to portable-python (win32 only)
> -- Configuring done
> -- Generating done
> -- Build files have been written to: D:/suunto-movesense-device-lib/myBuild
我认为这是预期的输出。在这个阶段,在 myBuild 文件夹中创建了一些文件。然后我运行ninja
并得到以下输出:
[1/8] Generating SBEM serialization code
Skipped argument since not a valid yaml glob: D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//generated/
processing following yaml-files:
Processing total 23 .yaml-files
Found 45 resources and 65 datatype definitions.
Scanning 41 WB-resources
Creating SBEM-Groups
Generating C++ code. 20 groups, 45 items
skipping unsupported resource: /Net
Skipping MEAS_IMU6_SAMPLERATE_ size()==5 because data too long.
Skipping MEAS_IMU6_SAMPLERATE_ size()==6 because data too long.
Skipping MEAS_IMU6_SAMPLERATE_ size()==7 because data too long.
Skipping MEAS_IMU6_SAMPLERATE_ size()==8 because data too long.
Skipping MEAS_IMU6M_SAMPLERATE_ size()==5 because data too long.
Skipping MEAS_IMU6M_SAMPLERATE_ size()==6 because data too long.
Skipping MEAS_IMU6M_SAMPLERATE_ size()==7 because data too long.
Skipping MEAS_IMU6M_SAMPLERATE_ size()==8 because data too long.
Skipping MEAS_IMU9_SAMPLERATE_ size()==3 because data too long.
Skipping MEAS_IMU9_SAMPLERATE_ size()==4 because data too long.
Skipping MEAS_IMU9_SAMPLERATE_ size()==5 because data too long.
Skipping MEAS_IMU9_SAMPLERATE_ size()==6 because data too long.
Skipping MEAS_IMU9_SAMPLERATE_ size()==7 because data too long.
Skipping MEAS_IMU9_SAMPLERATE_ size()==8 because data too long.
[2/8] Generating generated/app_execution_contexts/resources.c.h, generated/app_execution_contexts/resources.h, generated/app_execution_contexts/resources.cpp, app_execution_contexts.wbo
WBRES run with parameters:
--cheaderFile
D:/suunto-movesense-device-lib/myBuild/generated/app_execution_contexts/resources.c.h
--headerFile
D:/suunto-movesense-device-lib/myBuild/generated/app_execution_contexts/resources.h
--sourceFile
D:/suunto-movesense-device-lib/myBuild/generated/app_execution_contexts/resources.cpp
--libFile
D:/suunto-movesense-device-lib/myBuild/app_execution_contexts.wbo
--cppDepends
../wb-resources/resources.h
D:/suunto-movesense-device-lib/samples/blinky_app/app_root.yaml
[3/8] Generating app-metadata/metadata.cpp
WBRES run with parameters:
--metadataSourceFile
D:/suunto-movesense-device-lib/myBuild/app-metadata/metadata.cpp
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/comm_ble.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/component_ds24l65.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/component_eeprom.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/component_led.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/component_lsm6ds3.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/component_max3000x.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/component_nrf52.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/dev_system.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/device_system_debug.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/device_system_shutdown.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/device_systemevent.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/meas_acc.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/meas_ecg.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/meas_gyro.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/meas_hr.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/meas_imu.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/meas_magn.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/meas_temp.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/mem_datalogger.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/mem_logbook.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/misc_calibration.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/misc_gear.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/misc_manufacturing.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/movesense_info.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/movesense_time.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/movesense_types.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/system_energy.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/system_mode.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/system_settings.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/system_states.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/ui_ind.wbo
D:/suunto-movesense-device-lib/myBuild/../MovesenseCoreLib//resources/wb-resources.d.wbo
D:/suunto-movesense-device-lib/myBuild/app_execution_contexts.wbo
Metadata:
Strings: 521 (5802B)
Execution contexts: 2 (24B)
Security tags: 6 (12B)
Properties: 214 (1284B)
Property list entries: 356 (712B)
Sequential enum list entries: 84 (168B)
Non-sequential enum list entries: 17 (136B)
Data types: 300 (1800B)
Data type list entries: 72 (144B)
Parameters: 84 (504B)
Parameter list entries: 159 (318B)
Responses: 113 (452B)
Response list entries: 364 (728B)
Operations: 154 (1848B)
Operation lists: 118 (1416B)
Resource tree nodes: 180 (2520B)
Resource tree node list entries: 72 (144B)
[8/8] Linking CXX executable Movesense
FAILED: Movesense
cmd.exe /C "cd . && C:\PROGRA~2\GNUTOO~1\4195F~1.920\bin\AR19DD~1.EXE -W -Wall -Werror -Wfatal-errors -Wshadow -Wpointer-arith -Wcast-qual -Wwrite-strings -Wunreachable-code -Wsign-compare -Wno-aggregate-return -Wno-unused-parameter -Wno-unused-function -Wno-cast-align -Wno-strict-aliasing -Wno-maybe-uninitialized -mthumb -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -fno-common -ffreestanding -fno-builtin -mapcs -gdwarf-3 -std=gnu++11 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fno-unwind-tables -fno-use-cxa-atexit -fno-threadsafe-statics -Wno-old-style-declaration -Wno-discarded-qualifiers -Wp,-w -Wno-write-strings -U__INT32_TYPE__ -D__INT32_TYPE__=int -U__UINT32_TYPE__ -D__UINT32_TYPE__="unsigned int" -Os -g -DWB_UNITTEST_BUILD -Wl,--wrap -Wl,_malloc_r -Wl,--wrap -Wl,_calloc_r -Wl,--wrap -Wl,_free_r -Wl,--wrap -Wl,_realloc_r --specs=nano.specs --specs=nosys.specs -Wl,-Map -Wl,target.map -Wl,--gc-sections -Wl,-static -LD:/suunto-movesense-device-lib/samples/_build/compiler/../platform/nRF5x/linker/gcc -TD:/suunto-movesense-device-lib/samples/_build/compiler/../platform/nRF5x/linker/gcc/appflash.ld CMakeFiles/Movesense.dir/App.cpp.obj CMakeFiles/Movesense.dir/BlinkyClient.cpp.obj CMakeFiles/Movesense.dir/generated/sbem-code/sbem_definitions.cpp.obj CMakeFiles/Movesense.dir/app-metadata/metadata.cpp.obj -o Movesense D:/suunto-movesense-device-lib/MovesenseCoreLib/lib/GCCARM/libmovesense-coreD.a -lm -lstdc++ && cmd.exe /C "cd /D D:\suunto-movesense-device-lib\myBuild && "C:\Program Files (x86)\GNU Tools ARM Embedded\4.9 2015q3\bin\arm-none-eabi-objcopy.exe" -O ihex Movesense Movesense.hex""
c:/progra~2/gnutoo~1/4195f~1.920/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/bin/ld.exe: Movesense section `.text' will not fit in region `FLASH'
c:/progra~2/gnutoo~1/4195f~1.920/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/bin/ld.exe: region `FLASH' overflowed by 4764 bytes
D:/suunto-movesense-device-lib/MovesenseCoreLib/lib/GCCARM/libmovesense-coreD.a(nrf_log_backend_serial.c.obj): In function `nrf_log_backend_serial_hexdump_handler':
E:/BuildAgent/work/c8c3ad700cc7e132/vendor/nRF5_SDK/components/libraries/log/src/nrf_log_backend_serial.c:418: undefined reference to `__locale_ctype_ptr'
D:/suunto-movesense-device-lib/MovesenseCoreLib/lib/GCCARM/libmovesense-coreD.a(manufacturingdata.c.obj): In function `store_pcba_string':
E:/BuildAgent/work/c8c3ad700cc7e132/nea/hal/manufacturingdata/manufacturingdata.c:895: undefined reference to `__locale_ctype_ptr'
collect2.exe: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
表示链接失败。有没有人遇到过同样的问题?我应该从哪里开始发现问题?