цеплять — предотвращать выход при передаче данных

Я добавляю repl: вариант использования цепляться в мой make-файл, который поместит меня в реплей, чтобы поиграть с моим текущим проектом. Я создал cling_init.cpp который вытягивает все заголовки и выполняет некоторые базовые настройки.

Тогда по моему Makefile:

repl:
cat cling_init.cpp | cling -std=c++11 // etc ...

проблема в том, что когда я передаю содержимое, цепочка завершается после его оценки. Я искал возможность передать файл, чтобы цепляться, но я не могу ничего найти.

Есть ли способ сделать это?

1

Решение

Понял! Вы можете передать исходный файл так же, как в библиотеке -l,

repl:
cling -std=c++11 -lcling_init.cpp -llibpq.so -lliblog4cxx.so //etc ...

К вашему сведению, вы также должны поместить все имена библиотек, чтобы он работал.

Для дополнительной настройки мне пришлось использовать статический блок:

#include <iostream>

struct ClingInitialize {
ClingInitialize () {
std::cout << "initialize" << std::endl;
}
};

static ClingInitialize staticBlock;
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]