【每日一题 | 2025年5.5 ~ 5.11】搜索相关题

在这里插入图片描述

个人主页:Guiat
归属专栏:每日一题

在这里插入图片描述

正文

1. 【5.5】P3717 [AHOI2017初中组] cover

题目链接:https://www.luogu.com.cn/problem/P3717

【分析】
暴力搜索 + 两点距离公式,时间复杂度:O(m * n ^ 2)。

【AC_Code】

#include <iostream>
#include <cmath>
#define IOS ios :: sync_with_stdio(0); cin.tie(0); cout.tie(0);

using namespace std;

bool vis[105][105]; int ans;

void solve()
{
	int n, m, r; cin >> n >> m >> r;
	while (m --)
	{
		int x, y; cin >> x >> y;
		for (int i = 1; i <= n; i ++) for (int j = 1; j <= n; j ++)
		{
			double dis = sqrt(pow((i - x), 2) + pow((j - y), 2));
			if (dis <= r) vis[i][j] = true;
		}
	}
	for (int i = 1; i <= n; i ++) for (int j = 1; j <= n; j ++) if (vis[i][j]) ans ++;
	cout << ans << '\n';
}

int main()
{
	IOS int _ = 1;   // cin >> _;
	while (_ --) solve();
	
	return 0;
}

2. 【5.6】P1897 电梯里的尴尬

题目链接:https://www.luogu.com.cn/problem/P1897

【分析】

先读懂题目样例,之后按题意模拟即可,具体看代码。

在这里插入图片描述
在这里插入图片描述

【AC_Code】

#include <iostream>
#include <algorithm>
#define IOS ios :: sync_with_stdio(0); cin.tie(0); cout.tie(0);

using namespace std;

const int N = 1e5 + 10; int a[N], now, ans;

void solve()
{
	int n; cin >> n; for (int i = 0; i < n; i ++) cin >> a[i];
	sort(a, a + n);
	for (int i = 0; i < n; )
	{
		int tar = a[i];
		if (tar > now) ans += (tar - now) * 6;
		else if (tar < now) ans += (now - tar) * 4;
		int cnt = 0;
		while (i < n && a[i] == tar) cnt ++, i ++;
		ans += 5; ans += cnt; now = tar;
	} ans += now * 4;
	cout << ans << '\n';
}

int main()
{
	IOS int _ = 1;   // cin >> _;
	while (_ --) solve();
	
	return 0;
}

3. 【5.7】P2689 东南西北

题目链接:https://www.luogu.com.cn/problem/P2689

【分析】
按题意模拟即可,注意逻辑,属于简单题。

【AC_Code】

#include <iostream>
#define IOS ios :: sync_with_stdio(0); cin.tie(0); cout.tie(0);

using namespace std;

int ans;

void solve()
{
	int x1, y1, x2, y2, T; cin >> x1 >> y1 >> x2 >> y2 >> T;
	while (T --)
	{
		char c; cin >> c;
		if (c == 'N' && y1 < y2) y1 ++, ans ++;
		else if (c == 'S' && y1 > y2) y1 --, ans ++;
		else if (c == 'W' && x1 > x2) x1 --, ans ++;
		else if (c == 'E' && x1 < x2) x1 ++, ans ++;
		if (x1 == x2 && y1 == y2) { cout << ans << '\n'; return ; }
	}
	cout << -1 << '\n';
}

int main()
{
	IOS int _ = 1;   // cin >> _;
	while (_ --) solve();
	
	return 0;
}

4. 【5.8】P1145 约瑟夫

题目链接:https://www.luogu.com.cn/problem/P1145

【分析】

在这里插入图片描述
pos(删除位置)
4 = (0 + 4) % (2 * 3 - 0)
3 = (4 + 4) % (2 * 3 - 1)
3 = (3 + 4) % (2 * 3 - 2)
=> pos = (pos + m - 1) % (2 * k - i)

【AC_Code】

#include <iostream>
#define IOS ios :: sync_with_stdio(0); cin.tie(0); cout.tie(0);

using namespace std;

void solve()
{
	int k; cin >> k; int m = k + 1;
	while (1)
	{
		int pos = 0; bool flag = true;
		for (int i = 0; i < k; i ++)
		{
			pos = (pos + m - 1) % (2 * k - i);
			if (pos < k) { flag = false; break; }
		}
		if (flag) { cout << m << '\n'; return ; }
		m ++;
	}
}

int main()
{
	IOS int _ = 1;   // cin >> _;
	while (_ --) solve();
	
	return 0;
}

5. 【5.9】P1088 [NOIP 2004 普及组] 火星人

题目链接:https://www.luogu.com.cn/problem/P1088

【分析】
相当于一个全排列模版:求输入的整数序列进行 m 次字典序下一个排列的变换。

【AC_Code】

#include <iostream>
#include <algorithm>
#define IOS ios :: sync_with_stdio(0); cin.tie(0); cout.tie(0);

using namespace std;

const int N = 1e4 + 10; int a[N];

void solve()
{
	int n, m; cin >> n >> m;
	for (int i = 0; i < n; i ++) cin >> a[i];
	for (int i = 0; i < m; i ++) next_permutation(a, a + n);
	for (int i = 0; i < n; i ++) cout << a[i] << ' '; cout << '\n';
}

int main()
{
	IOS int _ = 1;   // cin >> _;
	while (_ --) solve();
	
	return 0;
}

6. 【5.10】P1164 小A点菜

题目链接:https://www.luogu.com.cn/problem/P1164

【分析】
01背包的变种,构建二维dp矩阵,f[i][j]表示前i个菜品恰好花费j元的方案数,二维可以优化到一维,这里采用二维解法。

【AC_Code】

#include <iostream>
#define IOS ios :: sync_with_stdio(0); cin.tie(0); cout.tie(0);

using namespace std;

int a[110], f[110][10010];

void solve()
{
	int n, m; cin >> n >> m; for (int i = 1; i <= n; i ++) cin >> a[i];
	for (int i = 0; i <= n; i ++) f[i][0] = 1;
	for (int i = 1; i <= n; i ++) for (int j = 1; j <= m; j ++)
	{
		f[i][j] += f[i - 1][j];
		if (j >= a[i]) f[i][j] += f[i - 1][j - a[i]];
	}
	cout << f[n][m] << '\n';
}

int main()
{
	IOS int _ = 1;   // cin >> _;
	while (_ --) solve();
	
	return 0;
}

7. 【5.11】P1019 [NOIP 2000 提高组] 单词接龙

题目链接:https://www.luogu.com.cn/problem/P1019

【分析】
考察搜索+字符串处理。

【AC_Code】

#include <iostream>
#include <string>
#define IOS ios :: sync_with_stdio(0); cin.tie(0); cout.tie(0);

using namespace std;

string s[25]; int n, vis[25], ans;

string check(string s1, string s2)
{
	for (int i = 1; i < s1.length() && i < s2.length(); i ++)
	{
		if (s1.substr(s1.length() - i, i) == s2.substr(0, i))
			return (s1.substr(0, s1.length() - i) + s2);
	}
	return "0";
}

void dfs(string drag)
{
	if (drag.size() > ans) ans = drag.size();
	for (int i = 0; i < n; i ++)
	{
		if (vis[i] == 2) continue;
		if (check(drag, s[i]) != "0") { vis[i] ++; dfs(check(drag, s[i])); vis[i] --; }
	}
}

void solve()
{
	cin >> n; for (int i = 0; i < n; i ++) cin >> s[i];
	char c; cin >> c;
	for (int i = 0; i < n; i ++)
	{
		if (s[i][0] == c) { vis[i] ++; dfs(s[i]); vis[i] --; }
	}
	cout << ans << '\n';
}

int main()
{
	IOS int _ = 1;   // cin >> _;
	while (_ --) solve();
	
	return 0;
}

结语
感谢您的阅读!期待您的一键三连!欢迎指正!

在这里插入图片描述

* 正在执行任务: D:\Espressif\python_env\idf5.5_py3.11_env\Scripts\python.exe D:\Espressif\frameworks\esp-idf-v5.5\tools\idf.py -B c:\Users\Lenovo\esp32_electronic_piano\build -DSDKCONFIG='c:\Users\Lenovo\esp32_electronic_piano\sdkconfig' reconfigure Executing action: reconfigure Running cmake in directory C:\Users\Lenovo\esp32_electronic_piano\build Executing "cmake -G Ninja -DPYTHON_DEPS_CHECKED=1 -DPYTHON=D:\Espressif\python_env\idf5.5_py3.11_env\Scripts\python.exe -DESP_PLATFORM=1 -DSDKCONFIG='c:\Users\Lenovo\esp32_electronic_piano\sdkconfig' -DCCACHE_ENABLE=1 C:\Users\Lenovo\esp32_electronic_piano"... -- Minimal build - ON -- ccache will be used for faster recompilation -- git rev-parse returned 'fatal: not a git repository (or any of the parent directories): .git' -- Could not use 'git describe' to determine PROJECT_VER. -- Building ESP-IDF components for target esp32 NOTICE: Processing 2 dependencies: NOTICE: [1/2] espressif/led_strip (3.0.1~1) NOTICE: [2/2] idf (5.5.0) -- Project sdkconfig file C:/Users/Lenovo/esp32_electronic_piano/sdkconfig Loading defaults file C:/Users/Lenovo/esp32_electronic_piano/sdkconfig.defaults... Loading defaults file C:/Users/Lenovo/esp32_electronic_piano/sdkconfig.defaults.esp32... -- Compiler supported targets: xtensa-esp-elf -- USING O3 -- App "esp32_electronic_piano" version: 1 -- Adding linker script C:/Users/Lenovo/esp32_electronic_piano/build/esp-idf/esp_system/ld/memory.ld -- Adding linker script C:/Users/Lenovo/esp32_electronic_piano/build/esp-idf/esp_system/ld/sections.ld.in -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.5/components/esp_rom/esp32/ld/esp32.rom.ld -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.5/components/esp_rom/esp32/ld/esp32.rom.api.ld -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.5/components/esp_rom/esp32/ld/esp32.rom.libgcc.ld -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.5/components/esp_rom/esp32/ld/esp32.rom.newlib-data.ld -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.5/components/esp_rom/esp32/ld/esp32.rom.syscalls.ld -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.5/components/esp_rom/esp32/ld/esp32.rom.libc-funcs.ld -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.5/components/esp_rom/esp32/ld/esp32.rom.newlib-reent-funcs.ld -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.5/components/soc/esp32/ld/esp32.peripherals.ld -- Components: app_update bootloader bootloader_support buzzer cxx driver efuse esp_app_format esp_bootloader_format esp_common esp_driver_ana_cmpr esp_driver_bitscrambler esp_driver_dac esp_driver_gpio esp_driver_gptimer esp_driver_i2c esp_driver_i2s esp_driver_ledc esp_driver_mcpwm esp_driver_parlio esp_driver_pcnt esp_driver_rmt esp_driver_sdio esp_driver_sdm esp_driver_sdmmc esp_driver_sdspi esp_driver_spi esp_driver_tsens esp_driver_twai esp_driver_uart esp_driver_usb_serial_jtag esp_hw_support esp_mm esp_partition esp_pm esp_ringbuf esp_rom esp_security esp_system esp_timer espressif__led_strip esptool_py freertos hal heap log main mbedtls newlib oled partition_table pthread sdmmc shared_state soc spi_flash ttp229 ws2812b xtensa -- Component paths: D:/Espressif/frameworks/esp-idf-v5.5/components/app_update D:/Espressif/frameworks/esp-idf-v5.5/components/bootloader D:/Espressif/frameworks/esp-idf-v5.5/components/bootloader_support C:/Users/Lenovo/esp32_electronic_piano/components/buzzer D:/Espressif/frameworks/esp-idf-v5.5/components/cxx D:/Espressif/frameworks/esp-idf-v5.5/components/driver D:/Espressif/frameworks/esp-idf-v5.5/components/efuse D:/Espressif/frameworks/esp-idf-v5.5/components/esp_app_format D:/Espressif/frameworks/esp-idf-v5.5/components/esp_bootloader_format D:/Espressif/frameworks/esp-idf-v5.5/components/esp_common D:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_ana_cmpr D:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_bitscrambler D:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_dac D:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_gpio D:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_gptimer D:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_i2c D:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_i2s D:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_ledc D:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_mcpwm D:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_parlio D:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_pcnt D:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_rmt D:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_sdio D:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_sdm D:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_sdmmc D:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_sdspi D:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_spi D:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_tsens D:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_twai D:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_uart D:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_usb_serial_jtag D:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support D:/Espressif/frameworks/esp-idf-v5.5/components/esp_mm D:/Espressif/frameworks/esp-idf-v5.5/components/esp_partition D:/Espressif/frameworks/esp-idf-v5.5/components/esp_pm D:/Espressif/frameworks/esp-idf-v5.5/components/esp_ringbuf D:/Espressif/frameworks/esp-idf-v5.5/components/esp_rom D:/Espressif/frameworks/esp-idf-v5.5/components/esp_security D:/Espressif/frameworks/esp-idf-v5.5/components/esp_system D:/Espressif/frameworks/esp-idf-v5.5/components/esp_timer C:/Users/Lenovo/esp32_electronic_piano/managed_components/espressif__led_strip D:/Espressif/frameworks/esp-idf-v5.5/components/esptool_py D:/Espressif/frameworks/esp-idf-v5.5/components/freertos D:/Espressif/frameworks/esp-idf-v5.5/components/hal D:/Espressif/frameworks/esp-idf-v5.5/components/heap D:/Espressif/frameworks/esp-idf-v5.5/components/log C:/Users/Lenovo/esp32_electronic_piano/main D:/Espressif/frameworks/esp-idf-v5.5/components/mbedtls D:/Espressif/frameworks/esp-idf-v5.5/components/newlib C:/Users/Lenovo/esp32_electronic_piano/components/oled D:/Espressif/frameworks/esp-idf-v5.5/components/partition_table D:/Espressif/frameworks/esp-idf-v5.5/components/pthread D:/Espressif/frameworks/esp-idf-v5.5/components/sdmmc C:/Users/Lenovo/esp32_electronic_piano/components/shared_state D:/Espressif/frameworks/esp-idf-v5.5/components/soc D:/Espressif/frameworks/esp-idf-v5.5/components/spi_flash C:/Users/Lenovo/esp32_electronic_piano/components/ttp229 C:/Users/Lenovo/esp32_electronic_piano/components/ws2812b D:/Espressif/frameworks/esp-idf-v5.5/components/xtensa -- Configuring done (17.8s) -- Generating done (1.1s) -- Build files have been written to: C:/Users/Lenovo/esp32_electronic_piano/build * 正在执行任务: D:\Espressif\tools\ninja\1.12.1\ninja.EXE [1/20] Performing build step for 'bootloader' [1/1] C:\Windows\system32\cmd.exe /C "cd /D C:\Users\Lenovo\esp32_electronic_piano\build\bootloader\esp-idf\esptool_py && D:\Espressif\python_env\idf5.5_py3.11_env\Scripts\python.exe D:/Espressif/frameworks/esp-idf-v5.5/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x1000 C:/Users/Lenovo/esp32_electronic_piano/build/bootloader/bootloader.bin" Bootloader binary size 0x6680 bytes. 0x980 bytes (8%) free. [3/20] Building C object esp-idf/ttp229/CMakeFiles/__idf_ttp229.dir/src/ttp229.c.obj FAILED: esp-idf/ttp229/CMakeFiles/__idf_ttp229.dir/src/ttp229.c.obj ccache D:\Espressif\tools\xtensa-esp-elf\esp-14.2.0_20241119\xtensa-esp-elf\bin\xtensa-esp32-elf-gcc.exe -DESP_PLATFORM -DIDF_VER=\"v5.5-dirty\" -DSOC_MMU_PAGE_SIZE=CONFIG_MMU_PAGE_SIZE -DSOC_XTAL_FREQ_MHZ=CONFIG_XTAL_FREQ -D_GLIBCXX_HAVE_POSIX_SEMAPHORE -D_GLIBCXX_USE_POSIX_SEMAPHORE -D_GNU_SOURCE -D_POSIX_READER_WRITER_LOCKS -IC:/Users/Lenovo/esp32_electronic_piano/build/config -IC:/Users/Lenovo/esp32_electronic_piano/components/ttp229/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/newlib/platform_include -ID:/Espressif/frameworks/esp-idf-v5.5/components/freertos/config/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/freertos/config/include/freertos -ID:/Espressif/frameworks/esp-idf-v5.5/components/freertos/config/xtensa/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/freertos/FreeRTOS-Kernel/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/freertos/FreeRTOS-Kernel/portable/xtensa/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos -ID:/Espressif/frameworks/esp-idf-v5.5/components/freertos/esp_additions/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/include/soc -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/include/soc/esp32 -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/dma/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/ldo/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/debug_probe/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/mspi_timing_tuning/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/mspi_timing_tuning/tuning_scheme_impl/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/power_supply/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/port/esp32/. -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/port/esp32/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/heap/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/heap/tlsf -ID:/Espressif/frameworks/esp-idf-v5.5/components/log/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/soc/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/soc/esp32 -ID:/Espressif/frameworks/esp-idf-v5.5/components/soc/esp32/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/soc/esp32/register -ID:/Espressif/frameworks/esp-idf-v5.5/components/hal/platform_port/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/hal/esp32/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/hal/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_rom/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_rom/esp32/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_rom/esp32/include/esp32 -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_rom/esp32 -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_common/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_system/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_system/port/soc -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_system/port/include/private -ID:/Espressif/frameworks/esp-idf-v5.5/components/xtensa/esp32/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/xtensa/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/xtensa/deprecated_include -ID:/Espressif/frameworks/esp-idf-v5.5/components/driver/deprecated -ID:/Espressif/frameworks/esp-idf-v5.5/components/driver/i2c/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/driver/touch_sensor/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/driver/twai/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/driver/touch_sensor/esp32/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_pm/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_ringbuf/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_gpio/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_pcnt/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_gptimer/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_spi/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_mcpwm/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_ana_cmpr/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_i2s/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_sdmmc/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/sdmmc/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_sdspi/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_sdio/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_dac/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_rmt/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_tsens/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_sdm/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_i2c/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_uart/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_ledc/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_parlio/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_usb_serial_jtag/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_twai/include -mlongcalls -Wno-frame-address -fno-builtin-memcpy -fno-builtin-memset -fno-builtin-bzero -fno-builtin-stpcpy -fno-builtin-strncpy -fdiagnostics-color=always -ffunction-sections -fdata-sections -Wall -Werror=all -Wno-error=unused-function -Wno-error=unused-variable -Wno-error=unused-but-set-variable -Wno-error=deprecated-declarations -Wextra -Wno-error=extra -Wno-unused-parameter -Wno-sign-compare -Wno-enum-conversion -gdwarf-4 -ggdb -Og -fno-shrink-wrap -fmacro-prefix-map=C:/Users/Lenovo/esp32_electronic_piano=. -fmacro-prefix-map=D:/Espressif/frameworks/esp-idf-v5.5=/IDF -fstrict-volatile-bitfields -fno-jump-tables -fno-tree-switch-conversion -std=gnu17 -Wno-old-style-declaration -MD -MT esp-idf/ttp229/CMakeFiles/__idf_ttp229.dir/src/ttp229.c.obj -MF esp-idf\ttp229\CMakeFiles\__idf_ttp229.dir\src\ttp229.c.obj.d -o esp-idf/ttp229/CMakeFiles/__idf_ttp229.dir/src/ttp229.c.obj -c C:/Users/Lenovo/esp32_electronic_piano/components/ttp229/src/ttp229.c C:/Users/Lenovo/esp32_electronic_piano/components/ttp229/src/ttp229.c:7:10: fatal error: shared_state.h: No such file or directory 7 | #include "shared_state.h" | ^~~~~~~~~~~~~~~~ compilation terminated. [4/20] Building C object esp-idf/shared_state/CMakeFiles/__idf_shared_state.dir/shared_state.c.obj FAILED: esp-idf/shared_state/CMakeFiles/__idf_shared_state.dir/shared_state.c.obj ccache D:\Espressif\tools\xtensa-esp-elf\esp-14.2.0_20241119\xtensa-esp-elf\bin\xtensa-esp32-elf-gcc.exe -DESP_PLATFORM -DIDF_VER=\"v5.5-dirty\" -DSOC_MMU_PAGE_SIZE=CONFIG_MMU_PAGE_SIZE -DSOC_XTAL_FREQ_MHZ=CONFIG_XTAL_FREQ -D_GLIBCXX_HAVE_POSIX_SEMAPHORE -D_GLIBCXX_USE_POSIX_SEMAPHORE -D_GNU_SOURCE -D_POSIX_READER_WRITER_LOCKS -IC:/Users/Lenovo/esp32_electronic_piano/build/config -IC:/Users/Lenovo/esp32_electronic_piano/components/shared_state -ID:/Espressif/frameworks/esp-idf-v5.5/components/newlib/platform_include -ID:/Espressif/frameworks/esp-idf-v5.5/components/freertos/config/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/freertos/config/include/freertos -ID:/Espressif/frameworks/esp-idf-v5.5/components/freertos/config/xtensa/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/freertos/FreeRTOS-Kernel/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/freertos/FreeRTOS-Kernel/portable/xtensa/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos -ID:/Espressif/frameworks/esp-idf-v5.5/components/freertos/esp_additions/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/include/soc -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/include/soc/esp32 -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/dma/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/ldo/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/debug_probe/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/mspi_timing_tuning/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/mspi_timing_tuning/tuning_scheme_impl/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/power_supply/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/port/esp32/. -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/port/esp32/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/heap/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/heap/tlsf -ID:/Espressif/frameworks/esp-idf-v5.5/components/log/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/soc/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/soc/esp32 -ID:/Espressif/frameworks/esp-idf-v5.5/components/soc/esp32/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/soc/esp32/register -ID:/Espressif/frameworks/esp-idf-v5.5/components/hal/platform_port/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/hal/esp32/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/hal/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_rom/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_rom/esp32/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_rom/esp32/include/esp32 -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_rom/esp32 -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_common/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_system/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_system/port/soc -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_system/port/include/private -ID:/Espressif/frameworks/esp-idf-v5.5/components/xtensa/esp32/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/xtensa/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/xtensa/deprecated_include -ID:/Espressif/frameworks/esp-idf-v5.5/components/driver/deprecated -ID:/Espressif/frameworks/esp-idf-v5.5/components/driver/i2c/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/driver/touch_sensor/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/driver/twai/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/driver/touch_sensor/esp32/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_pm/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_ringbuf/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_gpio/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_pcnt/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_gptimer/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_spi/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_mcpwm/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_ana_cmpr/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_i2s/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_sdmmc/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/sdmmc/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_sdspi/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_sdio/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_dac/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_rmt/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_tsens/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_sdm/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_i2c/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_uart/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_ledc/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_parlio/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_usb_serial_jtag/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_twai/include -IC:/Users/Lenovo/esp32_electronic_piano/managed_components/espressif__led_strip/include -IC:/Users/Lenovo/esp32_electronic_piano/managed_components/espressif__led_strip/interface -mlongcalls -Wno-frame-address -fno-builtin-memcpy -fno-builtin-memset -fno-builtin-bzero -fno-builtin-stpcpy -fno-builtin-strncpy -fdiagnostics-color=always -ffunction-sections -fdata-sections -Wall -Werror=all -Wno-error=unused-function -Wno-error=unused-variable -Wno-error=unused-but-set-variable -Wno-error=deprecated-declarations -Wextra -Wno-error=extra -Wno-unused-parameter -Wno-sign-compare -Wno-enum-conversion -gdwarf-4 -ggdb -Og -fno-shrink-wrap -fmacro-prefix-map=C:/Users/Lenovo/esp32_electronic_piano=. -fmacro-prefix-map=D:/Espressif/frameworks/esp-idf-v5.5=/IDF -fstrict-volatile-bitfields -fno-jump-tables -fno-tree-switch-conversion -std=gnu17 -Wno-old-style-declaration -MD -MT esp-idf/shared_state/CMakeFiles/__idf_shared_state.dir/shared_state.c.obj -MF esp-idf\shared_state\CMakeFiles\__idf_shared_state.dir\shared_state.c.obj.d -o esp-idf/shared_state/CMakeFiles/__idf_shared_state.dir/shared_state.c.obj -c C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:9:5: error: redeclaration of enumerator 'MODE_NORMAL' 9 | MODE_NORMAL = 0, | ^~~~~~~~~~~ In file included from C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:1: C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:17:5: note: previous definition of 'MODE_NORMAL' with type 'enum <anonymous>' 17 | MODE_NORMAL = 0, | ^~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:10:5: error: redeclaration of enumerator 'MODE_LED_KEY_INTERACT' 10 | MODE_LED_KEY_INTERACT, | ^~~~~~~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:18:5: note: previous definition of 'MODE_LED_KEY_INTERACT' with type 'enum <anonymous>' 18 | MODE_LED_KEY_INTERACT, | ^~~~~~~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:11:5: error: redeclaration of enumerator 'MODE_LED_GRADIENT_CYCLE' 11 | MODE_LED_GRADIENT_CYCLE, | ^~~~~~~~~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:19:5: note: previous definition of 'MODE_LED_GRADIENT_CYCLE' with type 'enum <anonymous>' 19 | MODE_LED_GRADIENT_CYCLE, | ^~~~~~~~~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:12:5: error: redeclaration of enumerator 'MODE_BLESSING_PLAY' 12 | MODE_BLESSING_PLAY, | ^~~~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:20:5: note: previous definition of 'MODE_BLESSING_PLAY' with type 'enum <anonymous>' 20 | MODE_BLESSING_PLAY, | ^~~~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:13:5: error: redeclaration of enumerator 'MODE_GAME' 13 | MODE_GAME | ^~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:21:5: note: previous definition of 'MODE_GAME' with type 'enum <anonymous>' 21 | MODE_GAME | ^~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:14:3: error: conflicting types for 'app_mode_t'; have 'enum <anonymous>' 14 | } app_mode_t; | ^~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:22:3: note: previous declaration of 'app_mode_t' with type 'app_mode_t' 22 | } app_mode_t; | ^~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:16:21: error: conflicting types for 'g_mode'; have 'app_mode_t' 16 | volatile app_mode_t g_mode = MODE_NORMAL; | ^~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:24:28: note: previous declaration of 'g_mode' with type 'app_mode_t' 24 | extern volatile app_mode_t g_mode; | ^~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:37:5: error: redeclaration of enumerator 'MENU_NONE' 37 | MENU_NONE, | ^~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:45:5: note: previous definition of 'MENU_NONE' with type 'enum <anonymous>' 45 | MENU_NONE, | ^~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:38:5: error: redeclaration of enumerator 'MENU_MUSIC_SELECT' 38 | MENU_MUSIC_SELECT, | ^~~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:46:5: note: previous definition of 'MENU_MUSIC_SELECT' with type 'enum <anonymous>' 46 | MENU_MUSIC_SELECT, | ^~~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:39:5: error: redeclaration of enumerator 'MENU_FUNC_SELECT' 39 | MENU_FUNC_SELECT | ^~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:47:5: note: previous definition of 'MENU_FUNC_SELECT' with type 'enum <anonymous>' 47 | MENU_FUNC_SELECT | ^~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:40:3: error: conflicting types for 'menu_state_t'; have 'enum <anonymous>' 40 | } menu_state_t; | ^~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:48:3: note: previous declaration of 'menu_state_t' with type 'menu_state_t' 48 | } menu_state_t; | ^~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:42:23: error: conflicting types for 'current_menu'; have 'menu_state_t' 42 | volatile menu_state_t current_menu = MENU_NONE; | ^~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:50:30: note: previous declaration of 'current_menu' with type 'menu_state_t' 50 | extern volatile menu_state_t current_menu; | ^~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:69:18: error: static declaration of 'note_freqs' follows non-static declaration 69 | static const int note_freqs[16] = { | ^~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:63:18: note: previous declaration of 'note_freqs' with type 'const int[16]' 63 | extern const int note_freqs[16]; | ^~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:74:22: error: static declaration of 'key_map' follows non-static declaration 74 | static const uint8_t key_map[16] = {3,2,1,0,15,14,13,12,8,9,10,11,4,5,6,7}; | ^~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:66:22: note: previous declaration of 'key_map' with type 'const uint8_t[16]' {aka 'const unsigned char[16]'} 66 | extern const uint8_t key_map[16]; | ^~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:77:22: error: static declaration of 'bm_music' follows non-static declaration 77 | static const uint8_t bm_music[] = { | ^~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:69:22: note: previous declaration of 'bm_music' with type 'const uint8_t[]' {aka 'const unsigned char[]'} 69 | extern const uint8_t bm_music[]; | ^~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:82:61: error: conflicting types for 'tone_t'; have 'struct <anonymous>' 82 | typedef struct { float freq; float dur; const char *note; } tone_t; | ^~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:71:61: note: previous declaration of 'tone_t' with type 'tone_t' 71 | typedef struct { float freq; float dur; const char *note; } tone_t; | ^~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:83:14: error: conflicting types for 'blessing'; have 'const tone_t[]' 83 | const tone_t blessing[] = { | ^~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:72:21: note: previous declaration of 'blessing' with type 'const tone_t[]' 72 | extern const tone_t blessing[]; | ^~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:2304:14: error: conflicting types for 'monitoring'; have 'const tone_t[]' 2304 | const tone_t monitoring[] = { | ^~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:75:21: note: previous declaration of 'monitoring' with type 'const tone_t[]' 75 | extern const tone_t monitoring[]; | ^~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:3999:14: error: conflicting types for 'bad_apple'; have 'const tone_t[]' 3999 | const tone_t bad_apple[] = { | ^~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:78:21: note: previous declaration of 'bad_apple' with type 'const tone_t[]' 78 | extern const tone_t bad_apple[]; | ^~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:5668:15: error: conflicting types for 'music_tracks'; have 'const tone_t *[3]' 5668 | const tone_t* music_tracks[3] = {blessing, monitoring, bad_apple}; | ^~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:83:22: note: previous declaration of 'music_tracks' with type 'const tone_t *[3]' 83 | extern const tone_t* music_tracks[3]; | ^~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:77:22: error: 'bm_music' defined but not used [-Werror=unused-const-variable=] 77 | static const uint8_t bm_music[] = { | ^~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:74:22: error: 'key_map' defined but not used [-Werror=unused-const-variable=] 74 | static const uint8_t key_map[16] = {3,2,1,0,15,14,13,12,8,9,10,11,4,5,6,7}; | ^~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.c:69:18: error: 'note_freqs' defined but not used [-Werror=unused-const-variable=] 69 | static const int note_freqs[16] = { | ^~~~~~~~~~ cc1.exe: some warnings being treated as errors [6/20] Building C object esp-idf/buzzer/CMakeFiles/__idf_buzzer.dir/src/buzzer.c.obj FAILED: esp-idf/buzzer/CMakeFiles/__idf_buzzer.dir/src/buzzer.c.obj ccache D:\Espressif\tools\xtensa-esp-elf\esp-14.2.0_20241119\xtensa-esp-elf\bin\xtensa-esp32-elf-gcc.exe -DESP_PLATFORM -DIDF_VER=\"v5.5-dirty\" -DSOC_MMU_PAGE_SIZE=CONFIG_MMU_PAGE_SIZE -DSOC_XTAL_FREQ_MHZ=CONFIG_XTAL_FREQ -D_GLIBCXX_HAVE_POSIX_SEMAPHORE -D_GLIBCXX_USE_POSIX_SEMAPHORE -D_GNU_SOURCE -D_POSIX_READER_WRITER_LOCKS -IC:/Users/Lenovo/esp32_electronic_piano/build/config -IC:/Users/Lenovo/esp32_electronic_piano/components/buzzer/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/newlib/platform_include -ID:/Espressif/frameworks/esp-idf-v5.5/components/freertos/config/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/freertos/config/include/freertos -ID:/Espressif/frameworks/esp-idf-v5.5/components/freertos/config/xtensa/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/freertos/FreeRTOS-Kernel/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/freertos/FreeRTOS-Kernel/portable/xtensa/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos -ID:/Espressif/frameworks/esp-idf-v5.5/components/freertos/esp_additions/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/include/soc -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/include/soc/esp32 -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/dma/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/ldo/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/debug_probe/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/mspi_timing_tuning/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/mspi_timing_tuning/tuning_scheme_impl/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/power_supply/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/port/esp32/. -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_hw_support/port/esp32/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/heap/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/heap/tlsf -ID:/Espressif/frameworks/esp-idf-v5.5/components/log/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/soc/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/soc/esp32 -ID:/Espressif/frameworks/esp-idf-v5.5/components/soc/esp32/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/soc/esp32/register -ID:/Espressif/frameworks/esp-idf-v5.5/components/hal/platform_port/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/hal/esp32/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/hal/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_rom/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_rom/esp32/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_rom/esp32/include/esp32 -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_rom/esp32 -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_common/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_system/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_system/port/soc -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_system/port/include/private -ID:/Espressif/frameworks/esp-idf-v5.5/components/xtensa/esp32/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/xtensa/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/xtensa/deprecated_include -ID:/Espressif/frameworks/esp-idf-v5.5/components/driver/deprecated -ID:/Espressif/frameworks/esp-idf-v5.5/components/driver/i2c/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/driver/touch_sensor/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/driver/twai/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/driver/touch_sensor/esp32/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_pm/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_ringbuf/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_gpio/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_pcnt/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_gptimer/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_spi/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_mcpwm/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_ana_cmpr/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_i2s/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_sdmmc/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/sdmmc/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_sdspi/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_sdio/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_dac/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_rmt/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_tsens/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_sdm/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_i2c/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_uart/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_ledc/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_parlio/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_usb_serial_jtag/include -ID:/Espressif/frameworks/esp-idf-v5.5/components/esp_driver_twai/include -IC:/Users/Lenovo/esp32_electronic_piano/managed_components/espressif__led_strip/include -IC:/Users/Lenovo/esp32_electronic_piano/managed_components/espressif__led_strip/interface -IC:/Users/Lenovo/esp32_electronic_piano/components/shared_state -mlongcalls -Wno-frame-address -fno-builtin-memcpy -fno-builtin-memset -fno-builtin-bzero -fno-builtin-stpcpy -fno-builtin-strncpy -fdiagnostics-color=always -ffunction-sections -fdata-sections -Wall -Werror=all -Wno-error=unused-function -Wno-error=unused-variable -Wno-error=unused-but-set-variable -Wno-error=deprecated-declarations -Wextra -Wno-error=extra -Wno-unused-parameter -Wno-sign-compare -Wno-enum-conversion -gdwarf-4 -ggdb -Og -fno-shrink-wrap -fmacro-prefix-map=C:/Users/Lenovo/esp32_electronic_piano=. -fmacro-prefix-map=D:/Espressif/frameworks/esp-idf-v5.5=/IDF -fstrict-volatile-bitfields -fno-jump-tables -fno-tree-switch-conversion -std=gnu17 -Wno-old-style-declaration -MD -MT esp-idf/buzzer/CMakeFiles/__idf_buzzer.dir/src/buzzer.c.obj -MF esp-idf\buzzer\CMakeFiles\__idf_buzzer.dir\src\buzzer.c.obj.d -o esp-idf/buzzer/CMakeFiles/__idf_buzzer.dir/src/buzzer.c.obj -c C:/Users/Lenovo/esp32_electronic_piano/components/buzzer/src/buzzer.c In file included from C:/Users/Lenovo/esp32_electronic_piano/components/buzzer/src/buzzer.c:6: C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:17:5: error: redeclaration of enumerator 'MODE_NORMAL' 17 | MODE_NORMAL = 0, | ^~~~~~~~~~~ In file included from C:/Users/Lenovo/esp32_electronic_piano/components/buzzer/src/buzzer.c:5: C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:17:5: note: previous definition of 'MODE_NORMAL' with type 'enum <anonymous>' 17 | MODE_NORMAL = 0, | ^~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:18:5: error: redeclaration of enumerator 'MODE_LED_KEY_INTERACT' 18 | MODE_LED_KEY_INTERACT, | ^~~~~~~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:18:5: note: previous definition of 'MODE_LED_KEY_INTERACT' with type 'enum <anonymous>' 18 | MODE_LED_KEY_INTERACT, | ^~~~~~~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:19:5: error: redeclaration of enumerator 'MODE_LED_GRADIENT_CYCLE' 19 | MODE_LED_GRADIENT_CYCLE, | ^~~~~~~~~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:19:5: note: previous definition of 'MODE_LED_GRADIENT_CYCLE' with type 'enum <anonymous>' 19 | MODE_LED_GRADIENT_CYCLE, | ^~~~~~~~~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:20:5: error: redeclaration of enumerator 'MODE_BLESSING_PLAY' 20 | MODE_BLESSING_PLAY, | ^~~~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:20:5: note: previous definition of 'MODE_BLESSING_PLAY' with type 'enum <anonymous>' 20 | MODE_BLESSING_PLAY, | ^~~~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:21:5: error: redeclaration of enumerator 'MODE_GAME' 21 | MODE_GAME | ^~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:21:5: note: previous definition of 'MODE_GAME' with type 'enum <anonymous>' 21 | MODE_GAME | ^~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:22:3: error: conflicting types for 'app_mode_t'; have 'enum <anonymous>' 22 | } app_mode_t; | ^~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:22:3: note: previous declaration of 'app_mode_t' with type 'app_mode_t' 22 | } app_mode_t; | ^~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:24:28: error: conflicting types for 'g_mode'; have 'app_mode_t' 24 | extern volatile app_mode_t g_mode; | ^~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:24:28: note: previous declaration of 'g_mode' with type 'app_mode_t' 24 | extern volatile app_mode_t g_mode; | ^~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:45:5: error: redeclaration of enumerator 'MENU_NONE' 45 | MENU_NONE, | ^~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:45:5: note: previous definition of 'MENU_NONE' with type 'enum <anonymous>' 45 | MENU_NONE, | ^~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:46:5: error: redeclaration of enumerator 'MENU_MUSIC_SELECT' 46 | MENU_MUSIC_SELECT, | ^~~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:46:5: note: previous definition of 'MENU_MUSIC_SELECT' with type 'enum <anonymous>' 46 | MENU_MUSIC_SELECT, | ^~~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:47:5: error: redeclaration of enumerator 'MENU_FUNC_SELECT' 47 | MENU_FUNC_SELECT | ^~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:47:5: note: previous definition of 'MENU_FUNC_SELECT' with type 'enum <anonymous>' 47 | MENU_FUNC_SELECT | ^~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:48:3: error: conflicting types for 'menu_state_t'; have 'enum <anonymous>' 48 | } menu_state_t; | ^~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:48:3: note: previous declaration of 'menu_state_t' with type 'menu_state_t' 48 | } menu_state_t; | ^~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:50:30: error: conflicting types for 'current_menu'; have 'menu_state_t' 50 | extern volatile menu_state_t current_menu; | ^~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:50:30: note: previous declaration of 'current_menu' with type 'menu_state_t' 50 | extern volatile menu_state_t current_menu; | ^~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:71:61: error: conflicting types for 'tone_t'; have 'struct <anonymous>' 71 | typedef struct { float freq; float dur; const char *note; } tone_t; | ^~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:71:61: note: previous declaration of 'tone_t' with type 'tone_t' 71 | typedef struct { float freq; float dur; const char *note; } tone_t; | ^~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:72:21: error: conflicting types for 'blessing'; have 'const tone_t[]' 72 | extern const tone_t blessing[]; | ^~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:72:21: note: previous declaration of 'blessing' with type 'const tone_t[]' 72 | extern const tone_t blessing[]; | ^~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:75:21: error: conflicting types for 'monitoring'; have 'const tone_t[]' 75 | extern const tone_t monitoring[]; | ^~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:75:21: note: previous declaration of 'monitoring' with type 'const tone_t[]' 75 | extern const tone_t monitoring[]; | ^~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:78:21: error: conflicting types for 'bad_apple'; have 'const tone_t[]' 78 | extern const tone_t bad_apple[]; | ^~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:78:21: note: previous declaration of 'bad_apple' with type 'const tone_t[]' 78 | extern const tone_t bad_apple[]; | ^~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:83:22: error: conflicting types for 'music_tracks'; have 'const tone_t *[3]' 83 | extern const tone_t* music_tracks[3]; | ^~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/shared_state/shared_state.h:83:22: note: previous declaration of 'music_tracks' with type 'const tone_t *[3]' 83 | extern const tone_t* music_tracks[3]; | ^~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/buzzer/src/buzzer.c: In function 'blessing_task': C:/Users/Lenovo/esp32_electronic_piano/components/buzzer/src/buzzer.c:39:12: error: 'blessing_running' undeclared (first use in this function) 39 | while (blessing_running) { | ^~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/buzzer/src/buzzer.c:39:12: note: each undeclared identifier is reported only once for each function it appears in C:/Users/Lenovo/esp32_electronic_piano/components/buzzer/src/buzzer.c:42:17: warning: unused variable 'd' [-Wunused-variable] 42 | int d = track[i].dur; | ^ C:/Users/Lenovo/esp32_electronic_piano/components/buzzer/src/buzzer.c:48:5: error: 'blessing_task_handle' undeclared (first use in this function); did you mean 'music_task_handle'? 48 | blessing_task_handle = NULL; | ^~~~~~~~~~~~~~~~~~~~ | music_task_handle C:/Users/Lenovo/esp32_electronic_piano/components/buzzer/src/buzzer.c: In function 'start_blessing_task': C:/Users/Lenovo/esp32_electronic_piano/components/buzzer/src/buzzer.c:53:9: error: 'blessing_running' undeclared (first use in this function) 53 | if (blessing_running) return; | ^~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/buzzer/src/buzzer.c:55:75: error: 'blessing_task_handle' undeclared (first use in this function); did you mean 'music_task_handle'? 55 | BaseType_t r = xTaskCreate(blessing_task, "blessing", 4096, NULL, 5, &blessing_task_handle); | ^~~~~~~~~~~~~~~~~~~~ | music_task_handle C:/Users/Lenovo/esp32_electronic_piano/components/buzzer/src/buzzer.c: In function 'stop_blessing_task': C:/Users/Lenovo/esp32_electronic_piano/components/buzzer/src/buzzer.c:63:10: error: 'blessing_running' undeclared (first use in this function) 63 | if (!blessing_running) return; | ^~~~~~~~~~~~~~~~ C:/Users/Lenovo/esp32_electronic_piano/components/buzzer/src/buzzer.c:66:12: error: 'blessing_task_handle' undeclared (first use in this function); did you mean 'music_task_handle'? 66 | while (blessing_task_handle != NULL && t < 50) { vTaskDelay(pdMS_TO_TICKS(50)); t++; } | ^~~~~~~~~~~~~~~~~~~~ | music_task_handle [9/20] Building C object esp-idf/oled/CMakeFiles/__idf_oled.dir/src/oled.c.obj ninja: build stopped: subcommand failed. * 终端进程“D:\Espressif\tools\ninja\1.12.1\ninja.EXE”已终止,退出代码: 1。
10-28
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

【Air】

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值