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

  • -- west build: generating a build system
    Loading Zephyr default modules (Zephyr base).
    -- Application: nrf9160
    -- CMake version: 3.22.1
    -- Found Python3: /usr/bin/python3 (found suitable version "3.10.12", minimum required is "3.8") found components: Interpreter 
    -- Cache files will be written to: .cache/zephyr
    -- Zephyr version: 3.6.99 (-9160_dev/zephyr)
    -- Found west (found suitable version "1.2.0", minimum required is "0.14.0")
    -- Board: nrf9160_Proto3_ns
    -- ZEPHYR_TOOLCHAIN_VARIANT not set, trying to locate Zephyr SDK
    -- Found host-tools: zephyr 0.16.5 (zephyr-sdk-0.16.5-1)
    -- Found toolchain: zephyr 0.16.5 (zephyr-sdk-0.16.5-1)
    -- Found Dtc: zephyr-sdk-0.16.5-1/sysroots/x86_64-pokysdk-linux/usr/bin/dtc (found suitable version "1.6.0", minimum required is "1.4.6") 
    -- Found BOARD.dts: nrf9160/boards/arm/nrf9160_Proto3/nrf9160_Proto3_ns.dts
    -- Found devicetree overlay: nrf9160/app.overlay
    -- Generated zephyr.dts: nrf9160/build/zephyr/zephyr.dts
    -- Generated devicetree_generated.h: nrf9160/build/zephyr/include/generated/devicetree_generated.h
    -- Including generated dts.cmake file: nrf9160/build/zephyr/dts.cmake
    nrf9160/build/zephyr/zephyr.dts:54.45-99.6: Warning (unique_unit_address_if_enabled): /soc/peripheral@40000000/flash-controller@39000: duplicate unit-address (also used in node /soc/peripheral@40000000/kmu@39000)
    nrf9160/build/zephyr/zephyr.dts:371.22-376.6: Warning (unique_unit_address_if_enabled): /soc/peripheral@40000000/clock@5000: duplicate unit-address (also used in node /soc/peripheral@40000000/power@5000)
    
    warning: MBEDTLS_PEM_CERTIFICATE_FORMAT (defined at modules/mbedtls/Kconfig.tls-generic:401,
    modules/mbedtls/Kconfig.tls-generic:401) was assigned the value 'y' but got the value 'n'. Check
    these unsatisfied dependencies: ((MBEDTLS_BUILTIN && MBEDTLS_CFG_FILE = "config-tls-generic.h" &&
    MBEDTLS) || (MBEDTLS_BUILTIN && MBEDTLS_CFG_FILE = "config-tls-generic.h" && MBEDTLS && 0)) (=n).
    See http://docs.zephyrproject.org/latest/kconfig.html#CONFIG_MBEDTLS_PEM_CERTIFICATE_FORMAT and/or
    look up MBEDTLS_PEM_CERTIFICATE_FORMAT in the menuconfig/guiconfig interface. The Application
    Development Primer, Setting Configuration Values, and Kconfig - Tips and Best Practices sections of
    the manual might be helpful too.
    
    
    warning: BOOT_BANNER (defined at kernel/Kconfig:441) was assigned the value 'y' but got the value
    'n'. Check these unsatisfied dependencies: (!NCS_BOOT_BANNER) (=n). See
    http://docs.zephyrproject.org/latest/kconfig.html#CONFIG_BOOT_BANNER and/or look up BOOT_BANNER in
    the menuconfig/guiconfig interface. The Application Development Primer, Setting Configuration
    Values, and Kconfig - Tips and Best Practices sections of the manual might be helpful too.
    
    
    warning: PRINTK (defined at subsys/debug/Kconfig:204) was assigned the value 'n' but got the value
    'y'. See http://docs.zephyrproject.org/latest/kconfig.html#CONFIG_PRINTK and/or look up PRINTK in
    the menuconfig/guiconfig interface. The Application Development Primer, Setting Configuration
    Values, and Kconfig - Tips and Best Practices sections of the manual might be helpful too.
    
    
    warning: LOG_PRINTK (defined at subsys/logging/Kconfig.processing:8) was assigned the value 'n' but
    got the value 'y'. See http://docs.zephyrproject.org/latest/kconfig.html#CONFIG_LOG_PRINTK and/or
    look up LOG_PRINTK in the menuconfig/guiconfig interface. The Application Development Primer,
    Setting Configuration Values, and Kconfig - Tips and Best Practices sections of the manual might be
    helpful too.
    
    
    warning: NET_SOCKETS_POSIX_NAMES (defined at subsys/net/lib/sockets/Kconfig:24) was assigned the
    value 'y' but got the value 'n'. Check these unsatisfied dependencies: (!POSIX_API) (=n). See
    http://docs.zephyrproject.org/latest/kconfig.html#CONFIG_NET_SOCKETS_POSIX_NAMES and/or look up
    NET_SOCKETS_POSIX_NAMES in the menuconfig/guiconfig interface. The Application Development Primer,
    Setting Configuration Values, and Kconfig - Tips and Best Practices sections of the manual might be
    helpful too.
    
    Parsing nrf9160/Kconfig
    Loaded configuration 'nrf9160/boards/arm/nrf9160_Proto3/nrf9160_Proto3_ns_defconfig'
    Merged configuration 'nrf9160/prj.conf'
    Merged configuration 'nrf9160/build/zephyr/misc/generated/extra_kconfig_options.conf'
    Configuration saved to 'nrf9160/build/zephyr/.config'
    Kconfig header saved to 'nrf9160/build/zephyr/include/generated/autoconf.h'
    -- Found GnuLd: zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/bin/ld.bfd (found version "2.38") 
    -- The C compiler identification is GNU 12.2.0
    -- The CXX compiler identification is GNU 12.2.0
    -- The ASM compiler identification is GNU
    -- Found assembler: zephyr-sdk-0.16.5-1/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc
    CMake Deprecation Warning at -9160_dev/zephyr/soc/CMakeLists.txt:15 (message):
      
    
                ---------------------------------------------------------------------
                --- WARNING: Functionality to describe SoCs in HWMv1 is           ---
                --- deprecated and should be replaced with HWMv2, including       ---
                --- boards. HWMv1 SoCs support remains only to ease the migration ---
                --- of out-of-tree SoCs and associated boards. It will not be     ---
                --- possible to build using HWMv1 SoCs at all in future releases. ---
                ---------------------------------------------------------------------
    
    
    -- Found Python3: /usr/bin/python3 (found version "3.10.12") found components: Interpreter 
    Changed board to secure nrf9160_Proto3 (NOT NS)
    
    === child image mcuboot -  begin ===
    loading initial cache file nrf9160/build/mcuboot/child_image_preload.cmake
    Loading Zephyr default modules (Zephyr base).
    -- Application: -9160_dev/bootloader/mcuboot/boot/zephyr
    -- CMake version: 3.22.1
    -- Found Python3: /usr/bin/python3 (found suitable version "3.10.12", minimum required is "3.8") found components: Interpreter 
    -- Cache files will be written to: .cache/zephyr
    -- Zephyr version: 3.6.99 (-9160_dev/zephyr)
    -- Found west (found suitable version "1.2.0", minimum required is "0.14.0")
    -- Board: nrf9160_Proto3
    -- Found host-tools: zephyr 0.16.5 (zephyr-sdk-0.16.5-1)
    -- Found toolchain: zephyr 0.16.5 (zephyr-sdk-0.16.5-1)
    -- Found Dtc: zephyr-sdk-0.16.5-1/sysroots/x86_64-pokysdk-linux/usr/bin/dtc (found suitable version "1.6.0", minimum required is "1.4.6") 
    -- Found BOARD.dts: nrf9160/boards/arm/nrf9160_Proto3/nrf9160_Proto3.dts
    -- Found devicetree overlay: -9160_dev/bootloader/mcuboot/boot/zephyr/app.overlay
    -- Found devicetree overlay: nrf9160/child_image/mcuboot.overlay
    -- Generated zephyr.dts: nrf9160/build/mcuboot/zephyr/zephyr.dts
    -- Generated devicetree_generated.h: nrf9160/build/mcuboot/zephyr/include/generated/devicetree_generated.h
    -- Including generated dts.cmake file: nrf9160/build/mcuboot/zephyr/dts.cmake
    nrf9160/build/mcuboot/zephyr/zephyr.dts:57.45-102.6: Warning (unique_unit_address_if_enabled): /soc/peripheral@50000000/flash-controller@39000: duplicate unit-address (also used in node /soc/peripheral@50000000/kmu@39000)
    nrf9160/build/mcuboot/zephyr/zephyr.dts:374.22-379.6: Warning (unique_unit_address_if_enabled): /soc/peripheral@50000000/clock@5000: duplicate unit-address (also used in node /soc/peripheral@50000000/power@5000)
    Parsing -9160_dev/bootloader/mcuboot/boot/zephyr/Kconfig
    Loaded configuration 'nrf9160/boards/arm/nrf9160_Proto3/nrf9160_Proto3_defconfig'
    Merged configuration '-9160_dev/bootloader/mcuboot/boot/zephyr/prj.conf'
    Merged configuration '-9160_dev/nrf/subsys/partition_manager/ext_flash_mcuboot_secondary.conf'
    Merged configuration '-9160_dev/nrf/modules/mcuboot/tfm.conf'
    Merged configuration '-9160_dev/nrf/modules/mcuboot/fih_low_enable.conf'
    Merged configuration '-9160_dev/nrf/subsys/partition_manager/partition_manager_enabled.conf'
    Merged configuration 'nrf9160/child_image/mcuboot.conf'
    Merged configuration 'nrf9160/build/mcuboot/zephyr/misc/generated/extra_kconfig_options.conf'
    Configuration saved to 'nrf9160/build/mcuboot/zephyr/.config'
    Kconfig header saved to 'nrf9160/build/mcuboot/zephyr/include/generated/autoconf.h'
    -- Found GnuLd: zephyr-sdk-0.16.5-1/arm-zephyr-eabi/arm-zephyr-eabi/bin/ld.bfd (found version "2.38") 
    -- The C compiler identification is GNU 12.2.0
    -- The CXX compiler identification is GNU 12.2.0
    -- The ASM compiler identification is GNU
    -- Found assembler: zephyr-sdk-0.16.5-1/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc
    CMake Deprecation Warning at -9160_dev/zephyr/soc/CMakeLists.txt:15 (message):
      
    
                ---------------------------------------------------------------------
                --- WARNING: Functionality to describe SoCs in HWMv1 is           ---
                --- deprecated and should be replaced with HWMv2, including       ---
                --- boards. HWMv1 SoCs support remains only to ease the migration ---
                --- of out-of-tree SoCs and associated boards. It will not be     ---
                --- possible to build using HWMv1 SoCs at all in future releases. ---
                ---------------------------------------------------------------------
    
    
    -- Using ccache: /usr/bin/ccache
    CMake Warning at -9160_dev/zephyr/CMakeLists.txt:895 (message):
      No SOURCES given to Zephyr library: drivers__console
    
      Excluding target from build.
    
    
    CMake Deprecation Warning at -9160_dev/nrf/cmake/partition_manager.cmake:32 (message):
      
    
                ---------------------------------------------------------------------
                --- WARNING: Child and parent image functionality is deprecated   ---
                --- and should be replaced with sysbuild. Child and parent image  ---
                --- support remains only to allow existing customer applications  ---
                --- to build and allow porting to sysbuild, it is no longer       ---
                --- receiving updates or new features and it will not be possible ---
                --- to build using child/parent image at all in nRF Connect SDK   ---
                --- version 2.9 onwards.                                          ---
                ---------------------------------------------------------------------
    Call Stack (most recent call first):
      -9160_dev/zephyr/cmake/modules/kernel.cmake:253 (include)
      -9160_dev/zephyr/cmake/modules/zephyr_default.cmake:141 (include)
      -9160_dev/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:66 (include)
      -9160_dev/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:92 (include_boilerplate)
      CMakeLists.txt:12 (find_package)
    
    
    MCUBoot bootloader key file: -9160_dev/bootloader/mcuboot/root-ec-p256.pem
    -- Configuring done
    -- Generating done
    -- Build files have been written to: nrf9160/build/mcuboot
    === child image mcuboot -  end ===
    
    CMake Warning at -9160_dev/nrf/modules/mcuboot/CMakeLists.txt:382 (message):
      
    
              ---------------------------------------------------------
              --- WARNING: Using default MCUBoot key, it should not ---
              --- be used for production.                           ---
              ---------------------------------------------------------
              
    
    
    
    -- Using ccache: /usr/bin/ccache
    CMake Warning at -9160_dev/zephyr/CMakeLists.txt:2027 (message):
      __ASSERT() statements are globally ENABLED
    
    
    CMake Deprecation Warning at -9160_dev/nrf/cmake/partition_manager.cmake:32 (message):
      
    
                ---------------------------------------------------------------------
                --- WARNING: Child and parent image functionality is deprecated   ---
                --- and should be replaced with sysbuild. Child and parent image  ---
                --- support remains only to allow existing customer applications  ---
                --- to build and allow porting to sysbuild, it is no longer       ---
                --- receiving updates or new features and it will not be possible ---
                --- to build using child/parent image at all in nRF Connect SDK   ---
                --- version 2.9 onwards.                                          ---
                ---------------------------------------------------------------------
    Call Stack (most recent call first):
      -9160_dev/zephyr/cmake/modules/kernel.cmake:253 (include)
      -9160_dev/zephyr/cmake/modules/zephyr_default.cmake:141 (include)
      -9160_dev/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:66 (include)
      -9160_dev/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:92 (include_boilerplate)
      CMakeLists.txt:5 (find_package)
    
    
    -- Found partition manager static configuration: nrf9160/pm_static.yml
    Partition 'mcuboot' is not included in the dynamic resolving since it is statically defined.
    Partition 'mcuboot_pad' is not included in the dynamic resolving since it is statically defined.
    Partition 'mcuboot_primary' is not included in the dynamic resolving since it is statically defined.
    Partition 'mcuboot_primary_app' is not included in the dynamic resolving since it is statically defined.
    Partition 'tfm_secure' is not included in the dynamic resolving since it is statically defined.
    Partition 'tfm' is not included in the dynamic resolving since it is statically defined.
    Partition 'tfm_nonsecure' is not included in the dynamic resolving since it is statically defined.
    Partition 'mcuboot_secondary' is not included in the dynamic resolving since it is statically defined.
    Partition 'mcuboot_sram' is not included in the dynamic resolving since it is statically defined.
    Partition 'nrf_modem_lib_ctrl' is not included in the dynamic resolving since it is statically defined.
    Partition 'nrf_modem_lib_tx' is not included in the dynamic resolving since it is statically defined.
    Partition 'nrf_modem_lib_rx' is not included in the dynamic resolving since it is statically defined.
    Partition 'nrf_modem_lib_sram' is not included in the dynamic resolving since it is statically defined.
    Partition 'sram_secure' is not included in the dynamic resolving since it is statically defined.
    Partition 'sram_nonsecure' is not included in the dynamic resolving since it is statically defined.
    Partition 'tfm_sram' is not included in the dynamic resolving since it is statically defined.
    Dropping partition 'nrf_modem_lib_trace' since its size is 0.
    Dropping partition 'nonsecure_storage' since it is empty.
    -- Configuring done
    -- Generating done
    -- Build files have been written to: nrf9160/build
    -- west build: building application
    [1/422] Preparing syscall dependency handling
    
    [5/422] Generating include/generated/version.h
    -- Zephyr version: 3.6.99 (-9160_dev/zephyr), build: v3.6.99-ncs2
    [11/422] Performing build step for 'mcuboot_subimage'
    [1/307] Preparing syscall dependency handling
    
    [7/307] Generating include/generated/version.h
    -- Zephyr version: 3.6.99 (-9160_dev/zephyr), build: v3.6.99-ncs2
    [262/307] Building C object CMakeFiles/app.dir/main.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [263/307] Building C object CMakeFiles/app.dir/io.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [264/307] Building C object CMakeFiles/app.dir/flash_map_extended.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [265/307] Building C object CMakeFiles/app.dir/root_cert.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [268/307] Building C object CMakeFiles/app.dir/os.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [269/307] Building C object CMakeFiles/app.dir-9160_dev/bootloader/mcuboot/boot/bootutil/src/image_validate.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [270/307] Building C object CMakeFiles/app.dir-9160_dev/bootloader/mcuboot/boot/bootutil/src/tlv.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [271/307] Building C object CMakeFiles/app.dir/keys.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [272/307] Building C object CMakeFiles/app.dir-9160_dev/bootloader/mcuboot/boot/bootutil/src/image_rsa.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [273/307] Building C object CMakeFiles/app.dir-9160_dev/bootloader/mcuboot/boot/bootutil/src/encrypted.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [274/307] Building C object CMakeFiles/app.dir-9160_dev/bootloader/mcuboot/boot/bootutil/src/image_ed25519.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [275/307] Building C object CMakeFiles/app.dir-9160_dev/bootloader/mcuboot/boot/bootutil/src/image_x509.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [276/307] Building C object CMakeFiles/app.dir-9160_dev/bootloader/mcuboot/boot/bootutil/src/swap_scratch.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [278/307] Building C object CMakeFiles/app.dir-9160_dev/bootloader/mcuboot/boot/bootutil/src/image_ecdsa.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    In file included from -9160_dev/bootloader/mcuboot/boot/bootutil/src/image_ecdsa.c:36:
    -9160_dev/bootloader/mcuboot/boot/bootutil/include/bootutil/crypto/ecdsa.h:163:12: warning: 'bootutil_decode_sig' defined but not used [-Wunused-function]
      163 | static int bootutil_decode_sig(uint8_t signature[NUM_ECC_BYTES * 2], uint8_t *cp, uint8_t *end)
          |            ^~~~~~~~~~~~~~~~~~~
    [279/307] Building C object CMakeFiles/app.dir-9160_dev/bootloader/mcuboot/boot/bootutil/src/image_util.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [280/307] Building C object CMakeFiles/app.dir-9160_dev/bootloader/mcuboot/boot/bootutil/src/bootutil_misc.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [281/307] Building C object CMakeFiles/app.dir-9160_dev/bootloader/mcuboot/boot/bootutil/src/fault_injection_hardening.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [282/307] Building C object CMakeFiles/app.dir-9160_dev/bootloader/mcuboot/boot/bootutil/src/loader.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [283/307] Building C object CMakeFiles/app.dir-9160_dev/bootloader/mcuboot/boot/bootutil/src/swap_misc.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [284/307] Building C object CMakeFiles/app.dir-9160_dev/bootloader/mcuboot/boot/bootutil/src/caps.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [285/307] Building C object CMakeFiles/app.dir/zephyr/autogen-pubkey.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [287/307] Building C object CMakeFiles/app.dir/arm_cleanup.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [288/307] Building C object CMakeFiles/app.dir-9160_dev/bootloader/mcuboot/boot/bootutil/src/swap_move.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [291/307] Building C object CMakeFiles/app.dir/nrf_cleanup.c.obj
    <command-line>: warning: "MBEDTLS_CONFIG_FILE" redefined
    <command-line>: note: this is the location of the previous definition
    [307/307] Linking C executable zephyr/zephyr.elf
    Memory region         Used Size  Region Size  %age Used
               FLASH:       86052 B        96 KB     87.54%
                 RAM:       36552 B       512 KB      6.97%
            IDT_LIST:          0 GB        32 KB      0.00%
    Generating files from nrf9160/build/mcuboot/zephyr/zephyr.elf for board: nrf9160_Proto3
    [19/422] Generating ../../tfm/CMakeCache.txt
    -- Found Git: /usr/bin/git (found version "2.34.1") 
    -- The C compiler identification is GNU 12.2.0
    -- The CXX compiler identification is GNU 12.2.0
    -- The ASM compiler identification is GNU
    -- Found assembler: zephyr-sdk-0.16.5-1/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc
    -- Found Python3: /usr/bin/python3 (found version "3.10.12") found components: Interpreter 
    -- Found Python3: /usr/bin/python3 (found suitable version "3.10.12", minimum required is "3.8") found components: Interpreter 
    -- Cache files will be written to: .cache/zephyr
    -- Configuring done
    -- Generating done
    -- Build files have been written to: nrf9160/build/tfm
    [24/422] Performing build step for 'tfm'
    [166/170] Linking C executable bin/tfm_s.axf
    Memory region         Used Size  Region Size  %age Used
               FLASH:       64388 B      65024 B     99.02%
                 RAM:       14572 B        32 KB     44.47%
    [170/170] Linking C static library secure_fw/libtfm_s_veneers.a
    [27/422] Performing install step for 'tfm'
    -- Install configuration: "Debug"
    ----- Installing platform NS -----
    [295/422] 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 -Inrf9160/src/Sockets/. -Inrf9160/src/Common/ATJSON/. -Inrf9160/src/Common/BuildInfo/. -Inrf9160/src/Common/UART/. -Inrf9160/src/Common/Version/. -Inrf9160/src/Common/CertMgmt/. -Inrf9160/src/Common/. -Inrf9160/src/ExtFlash/. -Inrf9160/src/CertStoreMgnr/. -Inrf9160/src/. -I-9160_dev/zephyr/include -Inrf9160/build/zephyr/include/generated -I-9160_dev/modules/soc-hwmv1/soc/arm/nordic_nrf/nrf91 -I-9160_dev/zephyr/lib/libc/newlib/include -I-9160_dev/zephyr/include/zephyr/posix -I-9160_dev/modules/soc-hwmv1/soc/arm/nordic_nrf/common/. -I-9160_dev/nrf/include -I-9160_dev/nrf/lib/at_cmd_parser/include -Inrf9160/build/tfm/api_ns/interface/include -I-9160_dev/nrf/modules/trusted-firmware-m/. -I-9160_dev/nrf/include/tfm -I-9160_dev/nrf/tests/include -I-9160_dev/modules/hal/cmsis/CMSIS/Core/Include -I-9160_dev/zephyr/modules/cmsis/. -I-9160_dev/modules/hal/nordic/nrfx -I-9160_dev/modules/hal/nordic/nrfx/drivers/include -I-9160_dev/modules/hal/nordic/nrfx/mdk -I-9160_dev/zephyr/modules/hal_nordic/nrfx/. -I-9160_dev/modules/debug/segger/SEGGER -I-9160_dev/modules/debug/segger/Config -I-9160_dev/modules/lib/zcbor/include -I-9160_dev/nrfxlib/nrf_modem/include -Inrf9160/build/modules/nrf/subsys/nrf_security/src/include/generated -I-9160_dev/nrf/subsys/nrf_security/include -I-9160_dev/modules/crypto/oberon-psa-crypto/include -I-9160_dev/modules/crypto/oberon-psa-crypto/library -I-9160_dev/modules/crypto/mbedtls/library -I-9160_dev/modules/crypto/mbedtls/include -I-9160_dev/modules/crypto/mbedtls/include/library -I-9160_dev/nrfxlib/crypto/nrf_oberon/include/mbedtls -I-9160_dev/nrfxlib/crypto/nrf_oberon/include -isystem -9160_dev/zephyr/lib/libc/common/include -fno-strict-aliasing -Og -fcheck-new -std=c++11 -fno-rtti -imacros nrf9160/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 -9160_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=nrf9160=CMAKE_SOURCE_DIR -fmacro-prefix-map=-9160_dev/zephyr=ZEPHYR_BASE -fmacro-prefix-map=-9160_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 nrf9160/src/CertStoreMgnr/CertStoreMgnr.cpp
    nrf9160/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*)':
    nrf9160/src/CertStoreMgnr/CertStoreMgnr.cpp:1016:5: error: 'mbedtls_x509write_crt_init' was not declared in this scope; did you mean 'mbedtls_x509write_csr_init'?
     1016 |     mbedtls_x509write_crt_init(&crt);
          |     ^~~~~~~~~~~~~~~~~~~~~~~~~~
          |     mbedtls_x509write_csr_init
    nrf9160/src/CertStoreMgnr/CertStoreMgnr.cpp:1027:13: error: 'mbedtls_x509write_crt_set_serial' was not declared in this scope; did you mean 'mbedtls_x509write_csr_set_md_alg'?
     1027 |         if (mbedtls_x509write_crt_set_serial(&crt, &serial) != 0)
          |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          |             mbedtls_x509write_csr_set_md_alg
    nrf9160/src/CertStoreMgnr/CertStoreMgnr.cpp:1035:13: error: 'mbedtls_x509write_crt_set_version' was not declared in this scope; did you mean 'mbedtls_x509write_csr_set_extension'?
     1035 |             mbedtls_x509write_crt_set_version(&crt, MBEDTLS_X509_CRT_VERSION_3);
          |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          |             mbedtls_x509write_csr_set_extension
    nrf9160/src/CertStoreMgnr/CertStoreMgnr.cpp:1036:13: error: 'mbedtls_x509write_crt_set_md_alg' was not declared in this scope; did you mean 'mbedtls_x509write_csr_set_md_alg'?
     1036 |             mbedtls_x509write_crt_set_md_alg(&crt, MBEDTLS_MD_SHA256);
          |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          |             mbedtls_x509write_csr_set_md_alg
    nrf9160/src/CertStoreMgnr/CertStoreMgnr.cpp:1037:13: error: 'mbedtls_x509write_crt_set_subject_key' was not declared in this scope; did you mean 'mbedtls_x509write_csr_set_subject_name'?
     1037 |             mbedtls_x509write_crt_set_subject_key(&crt, key);
          |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          |             mbedtls_x509write_csr_set_subject_name
    nrf9160/src/CertStoreMgnr/CertStoreMgnr.cpp:1038:13: error: 'mbedtls_x509write_crt_set_issuer_key' was not declared in this scope; did you mean 'mbedtls_x509write_csr_set_key'?
     1038 |             mbedtls_x509write_crt_set_issuer_key(&crt, key);
          |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          |             mbedtls_x509write_csr_set_key
    nrf9160/src/CertStoreMgnr/CertStoreMgnr.cpp:1043:17: error: 'mbedtls_x509write_crt_set_validity' was not declared in this scope; did you mean 'mbedtls_x509write_csr_set_key'?
     1043 |             if (mbedtls_x509write_crt_set_validity(&crt, validFrom.c_str(), validTo.c_str()) != 0)
          |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          |                 mbedtls_x509write_csr_set_key
    nrf9160/src/CertStoreMgnr/CertStoreMgnr.cpp:1056:21: error: 'mbedtls_x509write_crt_set_subject_name' was not declared in this scope; did you mean 'mbedtls_x509write_csr_set_subject_name'?
     1056 |                 if (mbedtls_x509write_crt_set_subject_name(&crt, subjectName.c_str()) != 0)
          |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          |                     mbedtls_x509write_csr_set_subject_name
    nrf9160/src/CertStoreMgnr/CertStoreMgnr.cpp:1063:25: error: 'mbedtls_x509write_crt_set_issuer_name' was not declared in this scope; did you mean 'mbedtls_x509write_csr_set_subject_name'?
     1063 |                     if (mbedtls_x509write_crt_set_issuer_name(&crt, subjectName.c_str()) != 0)
          |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          |                         mbedtls_x509write_csr_set_subject_name
    nrf9160/src/CertStoreMgnr/CertStoreMgnr.cpp:1076:27: error: 'mbedtls_x509write_crt_pem' was not declared in this scope; did you mean 'mbedtls_x509write_csr_pem'?
     1076 |                 int ret = mbedtls_x509write_crt_pem(&crt, (unsigned char *)(pCertData->certData), sizeof(pCertData->certData), mbedtls_ctr_drbg_random, ctr_drbg);
          |                           ^~~~~~~~~~~~~~~~~~~~~~~~~
          |                           mbedtls_x509write_csr_pem
    nrf9160/src/CertStoreMgnr/CertStoreMgnr.cpp:1094:5: error: 'mbedtls_x509write_crt_free' was not declared in this scope; did you mean 'mbedtls_x509write_csr_free'?
     1094 |     mbedtls_x509write_crt_free(&crt);
          |     ^~~~~~~~~~~~~~~~~~~~~~~~~~
          |     mbedtls_x509write_csr_free
    [316/422] 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 nrf9160/src/Sockets/./listenSockets.h:19,
                     from nrf9160/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 nrf9160/src/Common/ATJSON/./json.hpp:164,
                     from nrf9160/src/Common/ATJSON/./AtJson.h:21,
                     from nrf9160/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)
          |       ^~~~~
    nrf9160/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]':
    nrf9160/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 nrf9160/build
    
     *  The terminal process "/bin/bash '-c', 'sh -c 'BUILD_ARGS=$(python3 nrf9160/imageMetadataUtil.py -type local) && west build --board nrf9160_Proto3_ns --pristine=auto --no-sysbuild -- -DNCS_TOOLCHAIN_VERSION:STRING=NONE -DBOARD_ROOT:STRING=nrf9160 -DCONFIG_DEBUG_OPTIMIZATIONS:STRING=y -DCONFIG_DEBUG_THREAD_INFO:STRING=y -DCONF_FILE:STRING=nrf9160/prj.conf -DDTC_OVERLAY_FILE:STRING=nrf9160/app.overlay $BUILD_ARGS && echo Build flags = $BUILD_ARGS''" terminated with exit code: 1. 
    

    #
    # Copyright (c) 2019 Nordic Semiconductor ASA
    #
    # SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
    #
    # General config
    CONFIG_ASSERT=y
    CONFIG_MULTITHREADING=y
    CONFIG_PM_DEVICE=y
    CONFIG_EVENTS=y
    CONFIG_RESET_ON_FATAL_ERROR=n
    
    # Network
    CONFIG_NETWORKING=y
    CONFIG_NET_TCP=y
    CONFIG_NET_IPV4=y
    CONFIG_NET_SOCKETS=y
    CONFIG_NET_CONFIG_SETTINGS=y
    CONFIG_POSIX_MAX_FDS=8
    CONFIG_NET_SOCKETS_POSIX_NAMES=y
    CONFIG_NET_LOG=y
    CONFIG_NET_SOCKETS_LOG_LEVEL_DBG=y
    CONFIG_NET_SOCKETS_LOG_LEVEL_ERR=y
    CONFIG_NET_STATISTICS=y
    
    CONFIG_ _THREAD_ANALYZER=y
    
    # CONFIG_PDN=y
    #CONFIG_PDN_DEFAULT_APN = ""
    
    CONFIG_LTE_LINK_CONTROL=y
    CONFIG_LTE_NETWORK_TIMEOUT=60
    CONFIG_LTE_NETWORK_MODE_LTE_M_GPS=y
    
    # Modem library
    CONFIG_NRF_MODEM_LIB=y
    CONFIG_MODEM_INFO=y
    
    # AT host library
    CONFIG_AT_HOST_LIBRARY=y
    
    # Stacks and heaps
    CONFIG_MAIN_STACK_SIZE=3072
    CONFIG_HEAP_MEM_POOL_SIZE=16384
    
    # periphereals
    CONFIG_UART_ASYNC_API=y
    CONFIG_UART_NRFX=y
    
    # Modem UART
    CONFIG_NRFX_UARTE0=y
    CONFIG_UART_0_ASYNC=y
    CONFIG_UART_0_INTERRUPT_DRIVEN=n
    CONFIG_UART_0_NRF_HW_ASYNC=y
    CONFIG_UART_0_NRF_HW_ASYNC_TIMER=1
    CONFIG_NRFX_TIMER1=y
    # Debug UART
    CONFIG_NRFX_UARTE1=y
    CONFIG_UART_1_ASYNC=y
    CONFIG_UART_1_NRF_HW_ASYNC=y
    CONFIG_UART_1_NRF_HW_ASYNC_TIMER=2
    CONFIG_NRFX_TIMER2=y
    CONFIG_AT_MONITOR=y
    
    # C++ stuff
    CONFIG_CPP=y
    CONFIG_CPP_EXCEPTIONS=y
    CONFIG_GLIBCXX_LIBCPP=y
    CONFIG_NEWLIB_LIBC=y
    CONFIG_NEWLIB_LIBC_NANO=n 
    
    CONFIG_BOOT_BANNER=y
    
    #logging
    CONFIG_LOG=y
    CONFIG_LOG_DEFAULT_LEVEL=1
    CONFIG_USE_SEGGER_RTT=y
    CONFIG_RTT_CONSOLE=y
    CONFIG_LOG_BACKEND_RTT=y
    CONFIG_LOG_MODE_IMMEDIATE=y
    CONFIG_LOG_BACKEND_UART=n
    CONFIG_ENABLE_RTT_LOGS=y
    #CONFIG_LOG_BACKEND_UART=n #disable UART and console here because it's enabled by default on the nRF9160DK
    
    CONFIG_UART_CONSOLE=n
    CONFIG_PRINTK=n
    CONFIG_LOG_PRINTK=n
    
    #enable the below to capture traces from Cellular Monitor
    CONFIG_NRF_MODEM_LIB_TRACE=n
    
    #UART0 Roles
    #CONFIG_DEBUG_UART_AT_HOST=y
    #CONFIG_DEBUG_UART_LOG=y
    CONFIG_DEBUG_UART_AT_JSON=n
    
    #listen socket demo
    CONFIG__LISTEN_SOCKETS_ENABLE=y
    
    # To manage thread names
    CONFIG_THREAD_NAME=y
    
    # TLS configs disbaled for now
    CONFIG__MBEDTLS_SUPPORT=y       # Enable/Disabled TLS  
    CONFIG_MBEDTLS_SSL_IN_CONTENT_LEN=1024
    CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=1024
    CONFIG_MBEDTLS_HEAP_SIZE=24576
    CONFIG_NET_SOCKETS_TLS_MAX_CONTEXTS=4
    CONFIG_POSIX_MAX_FDS=11
    
    #SPI
    CONFIG_SPI=y
    CONFIG_SPI_NOR=y
    
    #FLASH
    CONFIG_FLASH=y
    CONFIG_FLASH_MAP=y
    CONFIG__EXTERNAL_FLASH=y
    
    #Bootloader
    CONFIG__INCLUDE_BOOTLOADER=y
    CONFIG_REBOOT=y
    
    CONFIG_CRC=y
    CONFIG_NET_BUF=y
    CONFIG_ZCBOR=y
    CONFIG_POSIX_API=y
    
    # This config allows system reboot after bus fault.
    CONFIG_RESET_ON_FATAL_ERROR=y
    CONFIG_EXT_FLASH_SELF_TEST_ENABLED=y
    
    CONFIG__ENABLE_CERT_STORE=y
    CONFIG_MBEDTLS_PEM_CERTIFICATE_FORMAT=y
    
    
    Below are some of the configs under Kconfig
    	select TLS_CREDENTIALS
        select TLS_CREDENTIAL_FILENAMES
        select MBEDTLS
        select NET_SOCKETS_SOCKOPT_TLS
        select MBEDTLS_ENABLE_HEAP
        select MBEDTLS_TLS_LIBRARY
        select MBEDTLS_X509_LIBRARY
        select NRF_SECURITY_ADVANCED
        select NORDIC_SECURITY_BACKEND
        select MBEDTLS_KEY_EXCHANGE_ALL_ENABLED
        select MBEDTLS_DHM_C
        select MBEDTLS_ECDH_C
        select MBEDTLS_ECDSA_C
        select MBEDTLS_ECP_C
        select MBEDTLS_ECJPAKE_C
        select MBEDTLS_GCM_C
        select MBEDTLS_CIPHER_C
        select MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED
        select MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED
        select MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED
        select MBEDTLS_RSA_C
        select PSA_WANT_RSA_KEY_SIZE_2048
    
    config _ENABLE_CERT_STORE
    	bool "Enable cert store"   
        select MBEDTLS_X509_CSR_WRITE_C
        select MBEDTLS_X509_CREATE_C
        select MBEDTLS_ENTROPY_C
        select MBEDTLS_CTR_DRBG_C
        select MBEDTLS_PK_WRITE_C
        select MBEDTLS_ZEPHYR_ENTROPY
    #added new 
        select MBEDTLS
        select MBEDTLS_ENABLE_HEAP
        select MBEDTLS_TLS_LIBRARY
        select MBEDTLS_X509_LIBRARY
        select NRF_SECURITY_ADVANCED
        select NORDIC_SECURITY_BACKEND
        select MBEDTLS_DHM_C
        select MBEDTLS_ECDH_C
        select MBEDTLS_ECDSA_C
        select MBEDTLS_ECP_C
        select MBEDTLS_ECJPAKE_C
        select MBEDTLS_GCM_C
        select MBEDTLS_CIPHER_C
        select MBEDTLS_RSA_C
        select MBEDTLS_LEGACY_CRYPTO_C

    Sure, please find the build command. Also attached the build logs and prj.conf file.

    west build --board _nrf9160_Proto3_ns
  • Hi,

    Can you check if you miss any of the MbedTLS Kconfig options listed in these 2 tickets - first and second?

    Best regards,
    Dejan

  •   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.

  • Thanks for the info  , 

    I tried the above-mentioned configs. When I explicitly enable the 

    CONFIG_MBEDTLS_X509_CRT_WRITE_C=y,
    I am getting the error attached. It says undefined symbol 
    MBEDTLS_X509_CRT_WRITE_C
Reply Children
Related