Topic: undefined reference to 'sp_init'

i used g++ to compile one cpp code included wolfssl,but it told me :undefined reference to 'sp_init',i had include <wolfssl/wolfcrypt/sp_int.h>,i used wolfssl5.5.3,and i found sp_int.h in /usr/local/wolfssl/wolfcrypt,the following code just wants to initalize a mp_int varible and use wc_ecc_gen_k to genetate a random number k between 0 and order of ecc
#include <iostream>
#include <string>
#include <unistd.h>
#include <wolfssl/options.h>
#include <wolfssl/wolfcrypt/settings.h>
#include <wolfssl/ssl.h>
#include <wolfssl/wolfcrypt/types.h>
#include <wolfssl/wolfcrypt/random.h>
#include <wolfssl/wolfcrypt/ecc.h>
#include <wolfssl/wolfcrypt/sp_int.h>
#include <wolfssl/wolfcrypt/integer.h>
#include <wolfssl/wolfcrypt/wolfmath.h>
using namespace std;
int main(){
    ecc_key key;
    WC_RNG rng;
    wc_ecc_init(&key);
    wc_InitGng(&rng);
    int curveId = ECC_SECP521R1;

    const ecc_set_type* ecc_params;
    ecc_params = wc_ecc_get_curve_params(curveId);

    mp_int ord;     //order of ecc
    mp_int priv;    //privatekey
    int err;
    err = mp_init(&ord);
    cout<<err<<endl;
    err = mp_init(&priv);
    cout<<err<<endl;
    //err = mp_read_radix(&ord,ecc_params->order,MP_RADIX_HEX);   //
    //cout<<err<<endl;
    //err = wc_ecc_gen_k(&rng,120,&priv,&ord)
    return 0 ;
}

Share

Re: undefined reference to 'sp_init'

Hi wangzihao,

Thanks for joining the wolfSSL Forums. How did you configure wolfSSL? Have you reviewed the ECC examples in our repository?
https://github.com/wolfSSL/wolfssl-exam … master/ecc

Thanks,
Eric - wolfSSL Support