LINUX.ORG.RU

Сообщения Staxcelrom

 

Статическое и динамическое связывание

Форум — Development

Приветствую,

Прошу пожалуйста сильно не пинать за вопрос.

Я наткнулся на такое вот описание: CEF

Введение Visual Studio поддерживает несколько библиотек времени выполнения. Различные библиотеки обозначаются такими флагами, как /MD, /MTи /LD. По умолчанию CEF использует /MTфлаг, который также используется в проекте Chromium. Однако для разных приложений иногда могут потребоваться разные библиотеки времени выполнения.

Подробности В настоящее время существует два способа связать CEF с вашим приложением.

Статическое связывание (без DLL CEF) Если вы хотите связать CEF со своим приложением статически, то все проекты Chromium и CEF должны использовать тот же флаг времени выполнения, что и ваше приложение. Если ваше приложение уже использует этот /MTфлаг, вы можете статически собрать CEF следующим образом:

Настройте среду, необходимую для сборки Chromium и CEF, как описано на странице проекта, и соберите ее. Свяжите свое приложение с результирующим файлом libcef_static.lib. Однако, если ваше приложение не использует этот /MTфлаг, вам не повезло. Важные части Chromium не будут компилироваться с другим флагом, кроме /MT.

Флаги майкрософтофского компилятора /MT и /MD - создают или статический CRT или динамически подгружаемым CRT во время выполнения приложения, я так понимаю аналог в Linux - это libc.so(MD) и libc.a(MT).

А вопрос такой: Я что то не понимаю: тут написано, что если вы хотите связать CEF с вашим приложением статически, то ваше приложение должно использовать тот же флаг, что и CEF(/MT).

Не подменяются ли тут понятия - статического связывания библиотеки времени выполнения Си и статического связывания самого проекта с другим проектом ?

 

Staxcelrom
()

Javascript движки для с++

Форум — Development

Приветствую,

Подскажите пожалуйста, вот есть такие JS движки, как V8, Duktape или ChakraCore, которые, как следует из их описания - позволяют из С/С++ кода запускать JS код.

Но я не могу понять, а как они работает или точнее, что они могут делать вообще ? То есть если я им, как то подсуну JS-код из скаченной Html-страницы - они же кго не выполнять ?

Ну то есть, если к примеру будет во такой JS-код:

cosnt xhr = new XMLHttpRequest();
xhr.open(‘Post’, requestURL);
xhr.onload = () =>
{
console.log(xhr.response);
}
xhr.send();

Движок JS запущенный из кода C/C++ - сможет сам создать объект XMLHttpRequest - открыть соединение, послать указанный Post запрос по указанному URL и принять ответ ??

Если вдруг кто понимает, объясните пожалуйста.

 ,

Staxcelrom
()

RSS подписка на новые темы