Я добавляю repl:
вариант использования цепляться в мой make-файл, который поместит меня в реплей, чтобы поиграть с моим текущим проектом. Я создал cling_init.cpp
который вытягивает все заголовки и выполняет некоторые базовые настройки.
Тогда по моему Makefile
:
repl:
cat cling_init.cpp | cling -std=c++11 // etc ...
проблема в том, что когда я передаю содержимое, цепочка завершается после его оценки. Я искал возможность передать файл, чтобы цепляться, но я не могу ничего найти.
Есть ли способ сделать это?
Понял! Вы можете передать исходный файл так же, как в библиотеке -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;
Других решений пока нет …