mkudritsky: Создаю консольные прикладные программы в Linux и в Windows (32bit, 64bit).
Основная рабочая среда - Qt и Linux (32bit, 64bit). Соответственно кириллица набирается и выводится в UTF-8.
Проблема состоит в том, что часто созданные программы приходится использовать и в Windows (32bit, 64bit).
Устав пересохранять код программ то в UTF-8, то в CP1251, решил сделать универсальный код с использованием модуля iconv.h
Проблема решилась но только для Windows 32bit.
Для Windows 64bit к моему большому удивлению нет готового дистрибутива Qt со всеми необходимыми программами - надо чуть ли не руками все до копейки собирать.
Моей квалификации здесь не хватает, а 64bit программы нужны, т.к. могут использовать в работе RAM и 8Гб, и 16Гб, и 32Гб (комбинаторные задачи).
Тактику выбрал такую: отлаживаю код в Windows Qt 32bit и потом уже отлаженный код компилирую и собираю в
tdm64-gcc-10.3.0.exe
Команда для сборки в консоли такая:
c:\TDM-GCC-64\bin\x86_64-w64-mingw32-gcc.exe -m64 -std=c11 -O3 c:\Proj\Task\main.c
Проблема состоит в том, что 64bit компилятор TDM-GCC-64 не понимает, что такое модуль iconv.h, несмотря на присутствие библиотеки libiconv-2.dll
Найденных в сети советов немного и они не работают.
Может кто сталкивался и знает решение проблемы?
P.S. В Linux нет никаких проблем и с командной строкой. Все отлично компилируется командой
clang -m64 -std=c11 -O3 /home/user/Proj/Task/main.c
https://forum.sources.ru/index.php?showtopic=422452&view=findpost&p=3850916