Hello,
I am having nRF9160 with modem FW = 1.3.6 and nrf sdk version 2.7.0
I am using MBEDTLS library for generating self-signed & CSR certificates with EC-Key and RSA key. I am adding following configs in my prj.conf file
Hello,
I am having nRF9160 with modem FW = 1.3.6 and nrf sdk version 2.7.0
I am using MBEDTLS library for generating self-signed & CSR certificates with EC-Key and RSA key. I am adding following configs in my prj.conf file
Attaching my compilation logs for your reference
[268/399] Building CXX object CMakeFiles/app.dir/src/CertStoreMgnr/CertStoreMgnr.cpp.obj FAILED: CMakeFiles/app.dir/src/CertStoreMgnr/CertStoreMgnr.cpp.obj ccache zephyr-sdk-0.16.5-1/arm-zephyr-eabi/bin/arm-zephyr-eabi-g++ -DAPP_VERSION=v2.7.0 -DKERNEL -DK_HEAP_MEM_POOL_SIZE=16384 -DMBEDTLS_CONFIG_FILE=\"nrf-config.h\" -DMBEDTLS_PSA_CRYPTO_CONFIG -DMBEDTLS_PSA_CRYPTO_CONFIG_FILE=\"nrf-psa-crypto-want-config.h\" -DMBEDTLS_PSA_CRYPTO_USER_CONFIG_FILE=\"nrf-psa-crypto-config.h\" -DNRF9160_XXAA -DNRF_SKIP_FICR_NS_COPY_TO_RAM -DNRF_TRUSTZONE_NONSECURE -DTFM_PSA_API -DUSE_PARTITION_MANAGER=1 -DZCBOR_ASSERTS -D_ANSI_SOURCE -D__LINUX_ERRNO_EXTENSIONS__ -D__PROGRAM_START -D__ZEPHYR__=1 -I_dev//src/Sockets/. -I_dev//src/Common/ATJSON/. -I_dev//src/Common/BuildInfo/. -I_dev//src/Common/UART/. -I_dev//src/Common/Version/. -I_dev//src/Common/CertMgmt/. -I_dev//src/Common/. -I_dev//src/ExtFlash/. -I_dev//src/CertStoreMgnr/. -I_dev//src/. -I_dev/zephyr/include -I_dev//build/zephyr/include/generated -I_dev/modules/soc-hwmv1/soc/arm/nordic_nrf/nrf91 -I_dev/zephyr/lib/libc/newlib/include -I_dev/zephyr/include/zephyr/posix -I_dev/modules/soc-hwmv1/soc/arm/nordic_nrf/common/. -I_dev/nrf/include -I_dev/nrf/lib/at_cmd_parser/include -I_dev//build/tfm/api_ns/interface/include -I_dev/nrf/modules/trusted-firmware-m/. -I_dev/nrf/include/tfm -I_dev/nrf/tests/include -I_dev/modules/hal/cmsis/CMSIS/Core/Include -I_dev/zephyr/modules/cmsis/. -I_dev/modules/hal/nordic/nrfx -I_dev/modules/hal/nordic/nrfx/drivers/include -I_dev/modules/hal/nordic/nrfx/mdk -I_dev/zephyr/modules/hal_nordic/nrfx/. -I_dev/modules/debug/segger/SEGGER -I_dev/modules/debug/segger/Config -I_dev/modules/lib/zcbor/include -I_dev/nrfxlib/nrf_modem/include -I_dev//build/modules/nrf/subsys/nrf_security/src/include/generated -I_dev/nrf/subsys/nrf_security/include -I_dev/modules/crypto/oberon-psa-crypto/include -I_dev/modules/crypto/oberon-psa-crypto/library -I_dev/modules/crypto/mbedtls/library -I_dev/modules/crypto/mbedtls/include -I_dev/modules/crypto/mbedtls/include/library -I_dev/nrfxlib/crypto/nrf_oberon/include/mbedtls -I_dev/nrfxlib/crypto/nrf_oberon/include -isystem _dev/zephyr/lib/libc/common/include -fno-strict-aliasing -Og -fcheck-new -std=c++11 -fno-rtti -imacros _dev//build/zephyr/include/generated/autoconf.h -fno-common -g -gdwarf-4 -fdiagnostics-color=always -mcpu=cortex-m33 -mthumb -mabi=aapcs -mfp16-format=ieee --sysroot=zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi -imacros _dev/zephyr/include/zephyr/toolchain/zephyr_stdint.h -Wall -Wformat -Wformat-security -Wno-format-zero-length -Wdouble-promotion -Wpointer-arith -Wexpansion-to-defined -Wno-unused-but-set-variable -fno-pic -fno-pie -fno-asynchronous-unwind-tables -fno-reorder-functions --param=min-pagesize=0 -fno-defer-pop -fmacro-prefix-map=_dev/=CMAKE_SOURCE_DIR -fmacro-prefix-map=_dev/zephyr=ZEPHYR_BASE -fmacro-prefix-map=_dev=WEST_TOPDIR -ffunction-sections -fdata-sections -D_POSIX_THREADS -MD -MT CMakeFiles/app.dir/src/CertStoreMgnr/CertStoreMgnr.cpp.obj -MF CMakeFiles/app.dir/src/CertStoreMgnr/CertStoreMgnr.cpp.obj.d -o CMakeFiles/app.dir/src/CertStoreMgnr/CertStoreMgnr.cpp.obj -c _dev//src/CertStoreMgnr/CertStoreMgnr.cpp _dev//src/CertStoreMgnr/CertStoreMgnr.cpp: In static member function 'static bool CertStoreMgnr::GenerateSelfSignedCertificate(certificateGenerationInfo_t*, mbedtls_pk_context*, mbedtls_ctr_drbg_context*, mbedtls_entropy_context*, CertData_t*)': _dev//src/CertStoreMgnr/CertStoreMgnr.cpp:1027:5: error: 'mbedtls_x509write_crt_init' was not declared in this scope; did you mean 'mbedtls_x509write_csr_init'? 1027 | mbedtls_x509write_crt_init(&crt); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ | mbedtls_x509write_csr_init _dev//src/CertStoreMgnr/CertStoreMgnr.cpp:1038:13: error: 'mbedtls_x509write_crt_set_serial' was not declared in this scope; did you mean 'mbedtls_x509write_csr_set_md_alg'? 1038 | if (mbedtls_x509write_crt_set_serial(&crt, &serial) != 0) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | mbedtls_x509write_csr_set_md_alg _dev//src/CertStoreMgnr/CertStoreMgnr.cpp:1046:13: error: 'mbedtls_x509write_crt_set_version' was not declared in this scope; did you mean 'mbedtls_x509write_csr_set_extension'? 1046 | mbedtls_x509write_crt_set_version(&crt, MBEDTLS_X509_CRT_VERSION_3); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | mbedtls_x509write_csr_set_extension _dev//src/CertStoreMgnr/CertStoreMgnr.cpp:1047:13: error: 'mbedtls_x509write_crt_set_md_alg' was not declared in this scope; did you mean 'mbedtls_x509write_csr_set_md_alg'? 1047 | mbedtls_x509write_crt_set_md_alg(&crt, MBEDTLS_MD_SHA256); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | mbedtls_x509write_csr_set_md_alg _dev//src/CertStoreMgnr/CertStoreMgnr.cpp:1048:13: error: 'mbedtls_x509write_crt_set_subject_key' was not declared in this scope; did you mean 'mbedtls_x509write_csr_set_subject_name'? 1048 | mbedtls_x509write_crt_set_subject_key(&crt, key); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | mbedtls_x509write_csr_set_subject_name _dev//src/CertStoreMgnr/CertStoreMgnr.cpp:1049:13: error: 'mbedtls_x509write_crt_set_issuer_key' was not declared in this scope; did you mean 'mbedtls_x509write_csr_set_key'? 1049 | mbedtls_x509write_crt_set_issuer_key(&crt, key); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | mbedtls_x509write_csr_set_key _dev//src/CertStoreMgnr/CertStoreMgnr.cpp:1054:17: error: 'mbedtls_x509write_crt_set_validity' was not declared in this scope; did you mean 'mbedtls_x509write_csr_set_key'? 1054 | if (mbedtls_x509write_crt_set_validity(&crt, validFrom.c_str(), validTo.c_str()) != 0) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | mbedtls_x509write_csr_set_key _dev//src/CertStoreMgnr/CertStoreMgnr.cpp:1067:21: error: 'mbedtls_x509write_crt_set_subject_name' was not declared in this scope; did you mean 'mbedtls_x509write_csr_set_subject_name'? 1067 | if (mbedtls_x509write_crt_set_subject_name(&crt, subjectName.c_str()) != 0) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | mbedtls_x509write_csr_set_subject_name _dev//src/CertStoreMgnr/CertStoreMgnr.cpp:1074:25: error: 'mbedtls_x509write_crt_set_issuer_name' was not declared in this scope; did you mean 'mbedtls_x509write_csr_set_subject_name'? 1074 | if (mbedtls_x509write_crt_set_issuer_name(&crt, subjectName.c_str()) != 0) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | mbedtls_x509write_csr_set_subject_name _dev//src/CertStoreMgnr/CertStoreMgnr.cpp:1087:27: error: 'mbedtls_x509write_crt_pem' was not declared in this scope; did you mean 'mbedtls_x509write_csr_pem'? 1087 | int ret = mbedtls_x509write_crt_pem(&crt, (unsigned char *)(pCertData->certData), sizeof(pCertData->certData), mbedtls_ctr_drbg_random, ctr_drbg); | ^~~~~~~~~~~~~~~~~~~~~~~~~ | mbedtls_x509write_csr_pem _dev//src/CertStoreMgnr/CertStoreMgnr.cpp:1105:5: error: 'mbedtls_x509write_crt_free' was not declared in this scope; did you mean 'mbedtls_x509write_csr_free'? 1105 | mbedtls_x509write_crt_free(&crt); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ | mbedtls_x509write_csr_free [289/397] Building CXX object CMakeFiles/app.dir/src/Common/ATJSON/AtJsonCommander.cpp.obj In file included from zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_algobase.h:67, from zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/vector:60, from _dev//src/Sockets/./listenSockets.h:19, from _dev//src/Common/ATJSON/AtJsonCommander.cpp:14: zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_iterator.h: In function '_Iterator std::__niter_base(__gnu_cxx::__normal_iterator<_Iterator, _Container>) [with _Iterator = const nlohmann::json_abi_v3_11_2::basic_json<>*; _Container = vector<nlohmann::json_abi_v3_11_2::basic_json<>, allocator<nlohmann::json_abi_v3_11_2::basic_json<> > >]': zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_iterator.h:1353:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const nlohmann::json_abi_v3_11_2::basic_json<>*, std::vector<nlohmann::json_abi_v3_11_2::basic_json<>, std::allocator<nlohmann::json_abi_v3_11_2::basic_json<> > > >' changed in GCC 7.1 1353 | __niter_base(__gnu_cxx::__normal_iterator<_Iterator, _Container> __it) | ^~~~~~~~~~~~ In file included from zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/map:60, from _dev//src/Common/ATJSON/./json.hpp:164, from _dev//src/Common/ATJSON/./AtJson.h:21, from _dev//src/Sockets/./listenSockets.h:20: zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_tree.h: In member function 'std::pair<std::_Rb_tree_node_base*, std::_Rb_tree_node_base*> std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_get_insert_hint_unique_pos(const_iterator, const key_type&) [with _Key = std::__cxx11::basic_string<char>; _Val = std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> >; _KeyOfValue = std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >; _Compare = std::less<std::__cxx11::basic_string<char> >; _Alloc = std::allocator<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >]': zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_tree.h:2209:5: note: parameter passing for argument of type 'std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> >, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >, std::less<std::__cxx11::basic_string<char> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > > >::const_iterator' changed in GCC 7.1 2209 | _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>:: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_tree.h: In member function 'void std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_erase_aux(const_iterator) [with _Key = std::__cxx11::basic_string<char>; _Val = std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> >; _KeyOfValue = std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >; _Compare = std::less<std::__cxx11::basic_string<char> >; _Alloc = std::allocator<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >]': zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_tree.h:2488:5: note: parameter passing for argument of type 'std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> >, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >, std::less<std::__cxx11::basic_string<char> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > > >::const_iterator' changed in GCC 7.1 2488 | _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>:: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_tree.h: In member function 'std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::erase(iterator) [with _Key = std::__cxx11::basic_string<char>; _Val = std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> >; _KeyOfValue = std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >; _Compare = std::less<std::__cxx11::basic_string<char> >; _Alloc = std::allocator<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >]': zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_tree.h:1209:21: note: parameter passing for argument of type 'std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> >, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >, std::less<std::__cxx11::basic_string<char> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > > >::const_iterator' changed in GCC 7.1 1209 | _M_erase_aux(__position); | ~~~~~~~~~~~~^~~~~~~~~~~~ zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_algobase.h: In function 'bool std::__equal_aux(_II1, _II1, _II2) [with _II1 = __gnu_cxx::__normal_iterator<const nlohmann::json_abi_v3_11_2::basic_json<>*, vector<nlohmann::json_abi_v3_11_2::basic_json<>, allocator<nlohmann::json_abi_v3_11_2::basic_json<> > > >; _II2 = __gnu_cxx::__normal_iterator<const nlohmann::json_abi_v3_11_2::basic_json<>*, vector<nlohmann::json_abi_v3_11_2::basic_json<>, allocator<nlohmann::json_abi_v3_11_2::basic_json<> > > >]': zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_algobase.h:1216:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const nlohmann::json_abi_v3_11_2::basic_json<>*, std::vector<nlohmann::json_abi_v3_11_2::basic_json<>, std::allocator<nlohmann::json_abi_v3_11_2::basic_json<> > > >' changed in GCC 7.1 1216 | __equal_aux(_II1 __first1, _II1 __last1, _II2 __first2) | ^~~~~~~~~~~ zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_algobase.h:1216:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const nlohmann::json_abi_v3_11_2::basic_json<>*, std::vector<nlohmann::json_abi_v3_11_2::basic_json<>, std::allocator<nlohmann::json_abi_v3_11_2::basic_json<> > > >' changed in GCC 7.1 zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_algobase.h:1216:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const nlohmann::json_abi_v3_11_2::basic_json<>*, std::vector<nlohmann::json_abi_v3_11_2::basic_json<>, std::allocator<nlohmann::json_abi_v3_11_2::basic_json<> > > >' changed in GCC 7.1 In function 'bool std::equal(_II1, _II1, _II2) [with _II1 = __gnu_cxx::__normal_iterator<const nlohmann::json_abi_v3_11_2::basic_json<>*, vector<nlohmann::json_abi_v3_11_2::basic_json<>, allocator<nlohmann::json_abi_v3_11_2::basic_json<> > > >; _II2 = __gnu_cxx::__normal_iterator<const nlohmann::json_abi_v3_11_2::basic_json<>*, vector<nlohmann::json_abi_v3_11_2::basic_json<>, allocator<nlohmann::json_abi_v3_11_2::basic_json<> > > >]', inlined from 'bool std::operator==(const vector<_Tp, _Alloc>&, const vector<_Tp, _Alloc>&) [with _Tp = nlohmann::json_abi_v3_11_2::basic_json<>; _Alloc = allocator<nlohmann::json_abi_v3_11_2::basic_json<> >]' at zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_vector.h:2037:21: zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_algobase.h:1555:30: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const nlohmann::json_abi_v3_11_2::basic_json<>*, std::vector<nlohmann::json_abi_v3_11_2::basic_json<>, std::allocator<nlohmann::json_abi_v3_11_2::basic_json<> > > >' changed in GCC 7.1 1555 | return std::__equal_aux(__first1, __last1, __first2); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_algobase.h: In static member function 'static bool std::__equal<_BoolType>::equal(_II1, _II1, _II2) [with _II1 = std::_Rb_tree_const_iterator<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >; _II2 = std::_Rb_tree_const_iterator<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >; bool _BoolType = false]': zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_algobase.h:1158:9: note: parameter passing for argument of type 'std::_Rb_tree_const_iterator<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >' changed in GCC 7.1 1158 | equal(_II1 __first1, _II1 __last1, _II2 __first2) | ^~~~~ zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_algobase.h:1158:9: note: parameter passing for argument of type 'std::_Rb_tree_const_iterator<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >' changed in GCC 7.1 zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_algobase.h:1158:9: note: parameter passing for argument of type 'std::_Rb_tree_const_iterator<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >' changed in GCC 7.1 zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_algobase.h: In function 'bool std::__equal_aux(_II1, _II1, _II2) [with _II1 = _Rb_tree_const_iterator<pair<const __cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >; _II2 = _Rb_tree_const_iterator<pair<const __cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >]': zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_algobase.h:1216:5: note: parameter passing for argument of type 'std::_Rb_tree_const_iterator<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >' changed in GCC 7.1 1216 | __equal_aux(_II1 __first1, _II1 __last1, _II2 __first2) | ^~~~~~~~~~~ zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_algobase.h:1216:5: note: parameter passing for argument of type 'std::_Rb_tree_const_iterator<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >' changed in GCC 7.1 zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_algobase.h:1216:5: note: parameter passing for argument of type 'std::_Rb_tree_const_iterator<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >' changed in GCC 7.1 In function 'bool std::__equal_aux1(_II1, _II1, _II2) [with _II1 = _Rb_tree_const_iterator<pair<const __cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >; _II2 = _Rb_tree_const_iterator<pair<const __cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >]', inlined from 'bool std::__equal_aux(_II1, _II1, _II2) [with _II1 = _Rb_tree_const_iterator<pair<const __cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >; _II2 = _Rb_tree_const_iterator<pair<const __cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >]' at zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_algobase.h:1218:31: zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_algobase.h:1210:43: note: parameter passing for argument of type 'std::_Rb_tree_const_iterator<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >' changed in GCC 7.1 1210 | return std::__equal<__simple>::equal(__first1, __last1, __first2); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In function 'bool std::equal(_II1, _II1, _II2) [with _II1 = _Rb_tree_const_iterator<pair<const __cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >; _II2 = _Rb_tree_const_iterator<pair<const __cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >]', inlined from 'bool std::operator==(const _Rb_tree<__cxx11::basic_string<char>, pair<const __cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> >, _Select1st<pair<const __cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >, less<__cxx11::basic_string<char> >, allocator<pair<const __cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > > >&, const _Rb_tree<__cxx11::basic_string<char>, pair<const __cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> >, _Select1st<pair<const __cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >, less<__cxx11::basic_string<char> >, allocator<pair<const __cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > > >&)' at zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_tree.h:1607:17: zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_algobase.h:1555:30: note: parameter passing for argument of type 'std::_Rb_tree_const_iterator<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >' changed in GCC 7.1 1555 | return std::__equal_aux(__first1, __last1, __first2); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_tree.h: In member function 'std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_emplace_hint_unique(const_iterator, _Args&& ...) [with _Args = {const std::piecewise_construct_t&, std::tuple<const std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&>, std::tuple<>}; _Key = std::__cxx11::basic_string<char>; _Val = std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> >; _KeyOfValue = std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >; _Compare = std::less<std::__cxx11::basic_string<char> >; _Alloc = std::allocator<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >]': zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_tree.h:2457:7: note: parameter passing for argument of type 'std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> >, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >, std::less<std::__cxx11::basic_string<char> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > > >::const_iterator' changed in GCC 7.1 2457 | _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>:: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/map:61: zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_map.h: In member function 'std::map<_Key, _Tp, _Compare, _Alloc>::mapped_type& std::map<_Key, _Tp, _Compare, _Alloc>::operator[](const key_type&) [with _Key = std::__cxx11::basic_string<char>; _Tp = nlohmann::json_abi_v3_11_2::basic_json<>; _Compare = std::less<std::__cxx11::basic_string<char> >; _Alloc = std::allocator<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >]': zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_map.h:511:44: note: parameter passing for argument of type 'std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> >, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > >, std::less<std::__cxx11::basic_string<char> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, nlohmann::json_abi_v3_11_2::basic_json<> > > >::const_iterator' changed in GCC 7.1 511 | __i = _M_t._M_emplace_hint_unique(__i, std::piecewise_construct, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 512 | std::tuple<const key_type&>(__k), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 513 | std::tuple<>()); | ~~~~~~~~~~~~~~~ In file included from zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/vector:64: zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_vector.h: In member function 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::erase(const_iterator) [with _Tp = nlohmann::json_abi_v3_11_2::basic_json<>; _Alloc = std::allocator<nlohmann::json_abi_v3_11_2::basic_json<> >]': zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_vector.h:1529:7: note: parameter passing for argument of type 'std::vector<nlohmann::json_abi_v3_11_2::basic_json<>, std::allocator<nlohmann::json_abi_v3_11_2::basic_json<> > >::const_iterator' changed in GCC 7.1 1529 | erase(const_iterator __position) | ^~~~~ _dev//src/Common/ATJSON/./json.hpp: In member function 'IteratorType nlohmann::json_abi_v3_11_2::basic_json<ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer, BinaryType, CustomBaseClass>::erase(IteratorType) [with IteratorType = nlohmann::json_abi_v3_11_2::detail::iter_impl<nlohmann::json_abi_v3_11_2::basic_json<> >; typename std::enable_if<(std::is_same<InputIT, nlohmann::json_abi_v3_11_2::detail::iter_impl<nlohmann::json_abi_v3_11_2::basic_json<ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer, BinaryType, CustomBaseClass> > >::value || std::is_same<InputIT, nlohmann::json_abi_v3_11_2::detail::iter_impl<const nlohmann::json_abi_v3_11_2::basic_json<ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer, BinaryType, CustomBaseClass> > >::value), int>::type <anonymous> = 0; ObjectType = std::map; ArrayType = std::vector; StringType = std::__cxx11::basic_string<char>; BooleanType = bool; NumberIntegerType = long long int; NumberUnsignedType = long long unsigned int; NumberFloatType = double; AllocatorType = std::allocator; JSONSerializer = nlohmann::json_abi_v3_11_2::adl_serializer; BinaryType = std::vector<unsigned char>; CustomBaseClass = void]': _dev//src/Common/ATJSON/./json.hpp:21691:66: note: parameter passing for argument of type 'std::vector<nlohmann::json_abi_v3_11_2::basic_json<>, std::allocator<nlohmann::json_abi_v3_11_2::basic_json<> > >::const_iterator' changed in GCC 7.1 21691 | result.m_it.array_iterator = m_value.array->erase(pos.m_it.array_iterator); | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ In file included from zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/vector:63: zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_uninitialized.h: In function '_ForwardIterator std::__do_uninit_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<const nlohmann::json_abi_v3_11_2::basic_json<>*, vector<nlohmann::json_abi_v3_11_2::basic_json<>, allocator<nlohmann::json_abi_v3_11_2::basic_json<> > > >; _ForwardIterator = nlohmann::json_abi_v3_11_2::basic_json<>*]': zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_uninitialized.h:113:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const nlohmann::json_abi_v3_11_2::basic_json<>*, std::vector<nlohmann::json_abi_v3_11_2::basic_json<>, std::allocator<nlohmann::json_abi_v3_11_2::basic_json<> > > >' changed in GCC 7.1 113 | __do_uninit_copy(_InputIterator __first, _InputIterator __last, | ^~~~~~~~~~~~~~~~ zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_uninitialized.h:113:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const nlohmann::json_abi_v3_11_2::basic_json<>*, std::vector<nlohmann::json_abi_v3_11_2::basic_json<>, std::allocator<nlohmann::json_abi_v3_11_2::basic_json<> > > >' changed in GCC 7.1 zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_uninitialized.h: In function '_ForwardIterator std::uninitialized_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<const nlohmann::json_abi_v3_11_2::basic_json<>*, vector<nlohmann::json_abi_v3_11_2::basic_json<>, allocator<nlohmann::json_abi_v3_11_2::basic_json<> > > >; _ForwardIterator = nlohmann::json_abi_v3_11_2::basic_json<>*]': zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_uninitialized.h:163:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const nlohmann::json_abi_v3_11_2::basic_json<>*, std::vector<nlohmann::json_abi_v3_11_2::basic_json<>, std::allocator<nlohmann::json_abi_v3_11_2::basic_json<> > > >' changed in GCC 7.1 163 | uninitialized_copy(_InputIterator __first, _InputIterator __last, | ^~~~~~~~~~~~~~~~~~ zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_uninitialized.h:163:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const nlohmann::json_abi_v3_11_2::basic_json<>*, std::vector<nlohmann::json_abi_v3_11_2::basic_json<>, std::allocator<nlohmann::json_abi_v3_11_2::basic_json<> > > >' changed in GCC 7.1 In static member function 'static _ForwardIterator std::__uninitialized_copy<_TrivialValueTypes>::__uninit_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<const nlohmann::json_abi_v3_11_2::basic_json<>*, std::vector<nlohmann::json_abi_v3_11_2::basic_json<>, std::allocator<nlohmann::json_abi_v3_11_2::basic_json<> > > >; _ForwardIterator = nlohmann::json_abi_v3_11_2::basic_json<>*; bool _TrivialValueTypes = false]', inlined from '_ForwardIterator std::uninitialized_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<const nlohmann::json_abi_v3_11_2::basic_json<>*, vector<nlohmann::json_abi_v3_11_2::basic_json<>, allocator<nlohmann::json_abi_v3_11_2::basic_json<> > > >; _ForwardIterator = nlohmann::json_abi_v3_11_2::basic_json<>*]' at zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_uninitialized.h:185:15: zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_uninitialized.h:137:39: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const nlohmann::json_abi_v3_11_2::basic_json<>*, std::vector<nlohmann::json_abi_v3_11_2::basic_json<>, std::allocator<nlohmann::json_abi_v3_11_2::basic_json<> > > >' changed in GCC 7.1 137 | { return std::__do_uninit_copy(__first, __last, __result); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ In function '_ForwardIterator std::__uninitialized_copy_a(_InputIterator, _InputIterator, _ForwardIterator, allocator<_Tp>&) [with _InputIterator = __gnu_cxx::__normal_iterator<const nlohmann::json_abi_v3_11_2::basic_json<>*, vector<nlohmann::json_abi_v3_11_2::basic_json<>, allocator<nlohmann::json_abi_v3_11_2::basic_json<> > > >; _ForwardIterator = nlohmann::json_abi_v3_11_2::basic_json<>*; _Tp = nlohmann::json_abi_v3_11_2::basic_json<>]', inlined from 'std::vector<_Tp, _Alloc>::vector(const std::vector<_Tp, _Alloc>&) [with _Tp = nlohmann::json_abi_v3_11_2::basic_json<>; _Alloc = std::allocator<nlohmann::json_abi_v3_11_2::basic_json<> >]' at zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_vector.h:601:31: zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/include/c++/12.2.0/bits/stl_uninitialized.h:372:37: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const nlohmann::json_abi_v3_11_2::basic_json<>*, std::vector<nlohmann::json_abi_v3_11_2::basic_json<>, std::allocator<nlohmann::json_abi_v3_11_2::basic_json<> > > >' changed in GCC 7.1 372 | return std::uninitialized_copy(__first, __last, __result); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ ninja: build stopped: subcommand failed. FATAL ERROR: command exited with status 1: /usr/bin/cmake --build _dev//build * The terminal process "/bin/bash '-c', 'sh -c 'BUILD_ARGS=$(python3 _dev//imageMetadataUtil.py -type local) && west build --board --pristine=auto --no-sysbuild -- -DNCS_TOOLCHAIN_VERSION:STRING=NONE -DBOARD_ROOT:STRING=_dev/ -DCONFIG_DEBUG_OPTIMIZATIONS:STRING=y -DCONFIG_DEBUG_THREAD_INFO:STRING=y -DCONF_FILE:STRING=_dev//prj.conf -DDTC_OVERLAY_FILE:STRING=_dev//app.overlay $BUILD_ARGS && echo Build flags = $BUILD_ARGS''" terminated with exit code: 1.
Hi,
Do you use PSA? Can you check what happens when you add Kconfig options shown below?
CONFIG_MBEDTLS_USE_PSA_CRYPTO=y CONFIG_MBEDTLS_PK_PARSE_C=y CONFIG_MBEDTLS_LEGACY_CRYPTO_C=y
dejans Thanks for your reply.
I revisited the Kconfigs to see if I have missed anything, but it does not seem like I have missed anything.
Hi,
MBEDTLS_X509_CRT_WRITE_C is not auto-enabled.
https://github.com/nrfconnect/sdk-nrf/blob/27bd6be1ccdbf4b434f450ef8eaf6e2e3a0bfe4d/subsys/nrf_security/Kconfig.tls#L66
Possibly you need MBEDTLS_X509_CRT_PARSE_C as well.
https://github.com/nrfconnect/sdk-nrf/blob/27bd6be1ccdbf4b434f450ef8eaf6e2e3a0bfe4d/subsys/nrf_security/Kconfig.tls#L54
Best regards,
Dejan
Thanks for the info dejans ,
I tried the above-mentioned configs. When I explicitly enable the
Hi,
What is the result if you add "default y" to MBEDTLS_X509_CRT_WRITE_C in Kconfig.tls?
If you have build folder, can you try to find nrf-prefixed configuration (find | grep nrf-) and post it here.
If you do not have build folder yet, please upload your complete project configuration.
Best regards,
Dejan
Hi,
What is the result if you add "default y" to MBEDTLS_X509_CRT_WRITE_C in Kconfig.tls?
If you have build folder, can you try to find nrf-prefixed configuration (find | grep nrf-) and post it here.
If you do not have build folder yet, please upload your complete project configuration.
Best regards,
Dejan
Hello Dejan,
I went over to try the change you suggest but surprisingly found that in I am not seeing MBEDTLS_X509_CRT_WRITE_C config in kconfig.tls file.
The nrf version we are using is v2.7.0.
Can you please suggest the link you shared refers to which nrf version
- Below is the nrf-prefixed config from build directory:
./modules/nrf/subsys/nrf_security/src/include/generated/nrf-psa-crypto-want-config.h
./modules/nrf/subsys/nrf_security/src/include/generated/nrf-config.h
./modules/nrf/subsys/nrf_security/src/include/generated/nrf-psa-crypto-config.h
./tfm/secure_fw/partitions/crypto/mbedcrypto/nrf_security_src/include/generated/nrf-psa-crypto-want-config.h
./tfm/secure_fw/partitions/crypto/mbedcrypto/nrf_security_src/include/generated/nrf-config.h
./tfm/secure_fw/partitions/crypto/mbedcrypto/nrf_security_src/include/generated/nrf-psa-crypto-config.h
./tfm/api_ns/platform/common/core/common/nrf-pinctrl.h
Thanks,
Akshay