|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Разное - Система плагинов для программы на с++ |
|
Разное - Система плагинов для программы на с++
|
![]() Старожил Сообщения: 467 |
Для программы нужно создать систему плагинов. Плагины должны представлять из себя обычный текст. При запуске программы нужно скомпилировать все плагины в нативный код. Сама программа написана на с++. Смотрел в сторону LUA, и в часности на LuaJIT, но там нету быстрой и легкой интеграции в с++ код(хотя вызвать чисто сишные методы легко). Собственно нужна легкая интеграция с с++, ООП, и главное-компиляция(в приложении очень важна скорость, и количество потребляемой памяти). Также было бы круто иметь синтаксис как в Java или С#. Как для моих целей может подойти Google V8(там все идеально, только не уверен за скорость)?
Посоветуйте что нибуть нормальное и быстрое. |
|
------- Отправлено: 20:12, 15-04-2012 |
![]() Ветеран Сообщения: 1180
|
Профиль | Отправить PM | Цитировать Плагины в виде библиотек рассматривались? (компиляция в нативный код компилятором)
|
Отправлено: 19:51, 05-05-2012 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
![]() Старожил Сообщения: 467
|
Профиль | Отправить PM | Цитировать Цитата pva:
![]() ![]() |
|
------- Отправлено: 20:37, 06-05-2012 | #3 |
![]() Ветеран Сообщения: 1180
|
Профиль | Отправить PM | Цитировать зачем собирать компилятор? чем mingw не компилятор то? Перед запуском выполняешь g++ -shared plugin.cpp -o plugin.dll (или как-то так) и вперёд... Быстрее скомпилированного гецецой кода ничего не будет работать.
Как вариант - собирать объектники и линковать результирующий код. В общем получится что-то генту-подобное. Конечно, вместе с исходниками или объектниками нужно тогда поставлять mingw. |
Отправлено: 12:25, 07-05-2012 | #4 |
![]() Старожил Сообщения: 467
|
Профиль | Отправить PM | Цитировать Ну, в с++ я не мастер, так что вопрос, при g++ -shared plugin.cpp -o plugin.dll будет прилинкована стандартная библиотека с++ к dll?
|
|
------- Отправлено: 12:45, 08-05-2012 | #5 |
![]() Ветеран Сообщения: 1180
|
Профиль | Отправить PM | Цитировать g++ аналогичен по действию gcc -lstdc++ и ещё реакцией на расширения файлов.
Можно почитать здесь http://parter.kaist.ac.kr/man/g++.html (найдено гуглением man g++) Цитата crashtuak:
|
|
Отправлено: 20:11, 08-05-2012 | #6 |
![]() Старожил Сообщения: 467
|
Профиль | Отправить PM | Цитировать Вариант с mingw может прокатить только если остальное приложение будет на основе mingw, а то физическое представление объекта компилятора mingw может отличатся от такового у msvc. Еще беда в том, что либу от mingw к msvc будет проблемно прикрутить. То есть, надо будет извращаться, делать либо сишный интерфейс, либо долго и муторно искать способ подружить два компилятора.
если бы не библиотека с закрытым кодом в приложении, без которой никак, и которая собрана под msvc, я б не парился и все на mingw сделал бы ![]() |
------- Отправлено: 17:51, 09-05-2012 | #7 |
![]() Ветеран Сообщения: 1180
|
Профиль | Отправить PM | Цитировать варианты:
1) msvc-шную часть скомпилировать при помощи gcc (и она станет gcc-шной) 2) msvc-шную часть скомпилировать в dll и подключать эту dll при сборке в gcc 3) в msvc-шной части сделать обзор dll-ок из папки /plugin и вызывать у каждой найденной какую-нить функцию (так делает большинство серьёзных программ), а dll-ки подкладывать в папку после сборки при помощи gcc Цитата crashtuak:
Цитата crashtuak:
Хотя у меня был случай, когда надо было сделать плагин, у которого в аргументах интерфейсных функций была паскалевская строка. Сделать его на c++ я не осилил, пришлось использовать delphi |
||
Отправлено: 19:52, 09-05-2012 | #8 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] система запускается но программы не работают | seven.ap | Лечение систем от вредоносных программ | 13 | 12-11-2011 13:12 | |
Какие надо программы записать что-бы система работала стабильно ? | rock_i_am | Флейм | 11 | 15-05-2011 02:24 | |
Разное - Вопросы по написанию плагинов для Opera 11 | Clarc | Программирование и базы данных | 0 | 03-01-2011 20:24 | |
Разное - Тупит система, на запускаются программы | DeYura | Microsoft Windows 7 | 2 | 23-06-2010 14:01 | |
Создание плагинов | netmax | Программирование и базы данных | 2 | 10-04-2004 12:09 |
|