• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Ошибка undefined reference to `user_rf_cal_sector_set'

nampuapx

New member
У меня примеры собираются. Есть проект созданный на основе одного из примеров из предыдущей не Beta версии UDK с SDK 1.5.4 вроде. Естественно он не собирается. Я делаю копию примера из нового UDK, добавляю и заменяю в нём *.с и *.h и получаю

Код:
17:32:54 **** Build of configuration Default for project wifi-sta-tcp-client_udp_03 ****
mingw32-make.exe -f C:/Users/kolos/workspace/wifi-sta-tcp-client_udp_03/Makefile rebuild
CC driver/uart.c
CC user/user_main.c
CC user/ko_espconn.c
CC user/command_parser.c
AR build/app_app.a
LD build/app.out
c:/Espressif/ESP8266_SDK/lib\libmain.a(app_main.o): In function `flash_data_check':
(.irom0.text+0x760): undefined reference to `user_rf_cal_sector_set'
c:/Espressif/ESP8266_SDK/lib\libmain.a(app_main.o): In function `flash_data_check':
(.irom0.text+0x8db): undefined reference to `user_rf_cal_sector_set'
collect2.exe: error: ld returned 1 exit status
C:/Users/kolos/workspace/wifi-sta-tcp-client_udp_03/Makefile:267: recipe for target 'build/app.out' failed
mingw32-make.exe: *** [build/app.out] Error 1
267 строчка это
Код:
    $(vecho) "LD $@"
Что это значит?
Как адаптировать проект?
 

CHERTS

Moderator
Команда форума
Что это значит?
Как адаптировать проект?
Добавьте в user_main.c

Код:
#include "user_interface.h"

uint32 ICACHE_FLASH_ATTR user_rf_cal_sector_set(void)
{
    enum flash_size_map size_map = system_get_flash_size_map();
    uint32 rf_cal_sec = 0;

    switch (size_map) {
        case FLASH_SIZE_4M_MAP_256_256:
            rf_cal_sec = 128 - 8;
            break;

        case FLASH_SIZE_8M_MAP_512_512:
            rf_cal_sec = 256 - 5;
            break;

        case FLASH_SIZE_16M_MAP_512_512:
        case FLASH_SIZE_16M_MAP_1024_1024:
            rf_cal_sec = 512 - 5;
            break;

        case FLASH_SIZE_32M_MAP_512_512:
        case FLASH_SIZE_32M_MAP_1024_1024:
            rf_cal_sec = 1024 - 5;
            break;

        default:
            rf_cal_sec = 0;
            break;
    }

    return rf_cal_sec;
}
 
Сверху Снизу