Использование TinyCC в моей C-программе позволяет мне использовать C в качестве своего рода языка сценариев, перезагружать C-файлы на лету и делать много довольно аккуратных вещей ... Но одна вещь меня действительно беспокоит. Связывание.
Я делаю мои обычные tcc_new и tcc_set_output_type с TCC_OUTPUT_MEMORY, но если я не включу их много:
tcc_add_symbol(tcc_ctx, "printf", &printf);
tcc_add_symbol(tcc_ctx, "powf", &powf);
tcc_add_symbol(tcc_ctx, "sinf", &sinf);
все очень ограничено.
Мне нужен способ автоматического ввода всех символов в программе хоста. Я не хочу вручную ссылаться на каждую последнюю функцию в libc и libm. Какие существуют механизмы для облегчения автоматического связывания или добавления символов. Как я могу использовать libm в своем коде, не вставляя вручную каждый последний компонент.
В настоящее время я использую GCC, но на другой платформе использую Visual Studio для компиляции моей программы. Я мог бы полностью перейти на TCC.