Failed to define MBEDTLS_X509_CRT_WRITE_C even after adding appropriate configs in 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

    MBEDTLS_X509_CSR_WRITE_C
    MBEDTLS_X509_CREATE_C
    MBEDTLS_ENTROPY_C
    MBEDTLS_CTR_DRBG_C
    MBEDTLS_PK_WRITE_C
    MBEDTLS_ZEPHYR_ENTROPY
    MBEDTLS
    MBEDTLS_ENABLE_HEAP
    MBEDTLS_TLS_LIBRARY
    MBEDTLS_X509_LIBRARY
    NRF_SECURITY_ADVANCED
    NORDIC_SECURITY_BACKEND
    MBEDTLS_DHM_C
    MBEDTLS_ECDH_C
    MBEDTLS_ECDSA_C
    MBEDTLS_ECP_C
    MBEDTLS_ECJPAKE_C
    MBEDTLS_GCM_C
    MBEDTLS_CIPHER_C
    MBEDTLS_RSA_C
    PSA_WANT_RSA_KEY_SIZE_2048
Even after enabling this configs MBEDTLS_X509_CRT_WRITE_C is not getting enabled in autoconf.h file. Because of this I am not able to compile the code and go ahead.
Can you please suggest probable reason or steps to get this resolved.
Parents
  • 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
    


    Best regards,
    Dejan

  • Yes, I tried the given options, but this is getting failed in configurations in some dependencies. 

  • Hi,

    dejans said:
    Do you use PSA?

    Do you use PSA in your project?

    Can you share your prj.conf file?

    Can you show your build command and upload your complete build log (by clicking on Insert->Image/video/file->Upload)?

    Best regards,
    Dejan

Reply Children
No Data
Related