Форум программистов, компьютерный форум CyberForum.ru

Компиляция исходного кода в работающей программе - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.67
vlinx
1 / 1 / 0
Регистрация: 27.06.2014
Сообщений: 74
07.07.2014, 16:21     Компиляция исходного кода в работающей программе #1
Привет.

Подскажите, как можно скомпилировать код, и использовать полученный результат в запущенной программе, если этот самый код находится, в компоненте (memo, list итд - неважно) этой запущенной пргораммы.

Я нашел 1 вариант - это сохранение этого кода в файл и компиляция в отдельном процессе.
Это правильный вариант? и есть ли еще пути решения?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.07.2014, 16:21     Компиляция исходного кода в работающей программе
Посмотрите здесь:

Компиляция кода... не могу сообразить. C++
нет исходного кода C++
Исправить ошибку в программе, работающей с дробями C++
C++ Компиляция кода Freeglut
C++ Компиляция кода Source Engine 2013
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
vlinx
1 / 1 / 0
Регистрация: 27.06.2014
Сообщений: 74
09.07.2014, 22:49  [ТС]     Компиляция исходного кода в работающей программе #41
а если "werwer" передается через параметр?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DrOffset
6459 / 3833 / 885
Регистрация: 30.01.2014
Сообщений: 6,628
09.07.2014, 22:53     Компиляция исходного кода в работающей программе #42
Цитата Сообщение от vlinx Посмотреть сообщение
как такую строку можно получить вообще?
C++
1
2
3
4
5
6
7
std::wstring compiler_path = L"C:\\strawberry\\c\\bin\\g++";
std::wstring dll_name = L"example_dll";
std::wstring workspace = L"D:\\test_dll_ias\\";
 
std::wstring w_dll_full_path = workspace + dll_name + L".dll";
 
h = LoadLibrary(w_dll_full_path.c_str());
Добавлено через 38 секунд
Цитата Сообщение от vlinx Посмотреть сообщение
а если "werwer" передается через параметр?
Через какой?
vlinx
1 / 1 / 0
Регистрация: 27.06.2014
Сообщений: 74
09.07.2014, 22:56  [ТС]     Компиляция исходного кода в работающей программе #43
Цитата Сообщение от DrOffset Посмотреть сообщение
Через какой?
C++
1
2
3
4
5
std::wstring func(std::wstring p1, std::wstring p2)
{
     std::wstring res = p1 + p2 + ".dll";
    return res;
}
Добавлено через 1 минуту
а, я кажется подустал)
все понятно
DrOffset
6459 / 3833 / 885
Регистрация: 30.01.2014
Сообщений: 6,628
09.07.2014, 23:03     Компиляция исходного кода в работающей программе #44
vlinx, вопрос, который тут действительно может поставить в затруднение, так это main и его параметры.
В стандарте нет версии с wchar_t. Но в VisualStudio уже об этом подумали, там "юникодность" программы переключается прямо в настройках проекта. И есть специальная версия - wmain.
То, что это непереносимо - плохо. Но в целом для программирования в win - это хорошо. Т.к. приложение должно максимально полно взаимодействовать с системой - начиная от внешнего вида UI и заканчивая API.

Добавлено через 1 минуту
Цитата Сообщение от vlinx Посмотреть сообщение
C++
1
2
3
4
std::wstring func(std::wstring const & p1, std::wstring const & p2) 
{
    return p1 + p2 + L".dll"; 
}
Fixed.
vlinx
1 / 1 / 0
Регистрация: 27.06.2014
Сообщений: 74
09.07.2014, 23:07  [ТС]     Компиляция исходного кода в работающей программе #45
Всегда, вот всегда как дело касается кодировок, начинается какая-то фигня и мозголомство. Не только с кодом, да и при передаче данных, запросов на сервер, и все это из-за кодировок блин. Сколько раз уже замечал
DrOffset
6459 / 3833 / 885
Регистрация: 30.01.2014
Сообщений: 6,628
09.07.2014, 23:13     Компиляция исходного кода в работающей программе #46
Цитата Сообщение от vlinx Посмотреть сообщение
Всегда, вот всегда как дело касается кодировок, начинается какая-то фигня и мозголомство. Не только с кодом, ди при передаче данных, запросов на сервер, и все это из-за кодировок блин. Сколько раз уже замечал
Легко могу понять. Это отчасти из-за того, что с++ долгое время не знал про юникод вообще ничего. Отчасти из-за того, что когда изобрели юникод было уже огромное количество систем со своими порядками насчет кодировок. Чего стоит только одна KOI8-R (я лично до сих пор от нее огребаю).
Но если разобраться с юникодом и взять за основу одну из стратегий использования (например в win - использовать только UCS-2 (про сетевую передачу - отдельный разговор, который требует отдельного рассмотрения)), то жить становится проще.
Вот в Qt например тоже все строки юникодные. Там это поставлено в основу и если понять концепцию, а не бороться с ней, то тоже все становится просто и понятно.
vlinx
1 / 1 / 0
Регистрация: 27.06.2014
Сообщений: 74
10.07.2014, 10:49  [ТС]     Компиляция исходного кода в работающей программе #47
Вариант 4.

DrOffset, а не подскажешь, как прикрутить интерпретатор CH к программе? Имею ввиду куда lib пихнуть, где пути ко ввсем include прописать? По ссылке, смотрел - там говориться как использовать его уже по назначению, а вот как настроить не нашел

Добавлено через 3 минуты
так.. а код нужно в самой IDE ch писать походу? - я бы хотел писать в своей IDE и вызывать блоки CH в ней
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.07.2014, 15:05     Компиляция исходного кода в работающей программе
Еще ссылки по теме:

Компиляция C++ кода через консоль C++
Загрузка исходного кода и компиляция *.exe C++
C++ Компиляция исходного кода C++ ubuntu если нет компилятора g++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
DrOffset
6459 / 3833 / 885
Регистрация: 30.01.2014
Сообщений: 6,628
10.07.2014, 15:05     Компиляция исходного кода в работающей программе #48
Цитата Сообщение от vlinx Посмотреть сообщение
а код нужно в самой IDE ch писать походу?
Да вроде бы нет. В статье код прямо в демонстрационной программе был написан.

Цитата Сообщение от vlinx Посмотреть сообщение
а не подскажешь, как прикрутить интерпретатор CH к программе?
Внутри есть каталог extern, там include и lib (для visual studio). Вот их и прописывать.
Yandex
Объявления
10.07.2014, 15:05     Компиляция исходного кода в работающей программе
Ответ Создать тему
Опции темы

Текущее время: 18:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru