В то время как -fno-builtin-function
опция к gcc
работы для встроенных функций такой как malloc
и strlen
(см. Другие встроенные функции, обеспеченные GCC), он не работает на glibc
встроенные расширения GNU такой как getline
функция.
Подобный некоторым решениям, на которые указывает ссылка jw013, можно попытаться вставить #define
операторы в исходных файлах для переименования getline
функция, определяемая программой, например. #define getline my_getline
.
Вот маленький пример кода для иллюстрирования этого подхода.
/*
gcc -Wall -Wextra -o mystrdup mystrdup.c
./mystrdup
*/
#include
#include
// mystrdup.c:14: error: conflicting types for 'strdup'
//#define strdup my_strdup
char *strdup(char *str) {
str = str;
return str;
}
int main (void) {
char *str = 0;
char mystr[] = "Hello, mystrdup!";
str = strdup(mystr);
printf("%s\n", str);
return 0;
}
Я не знаю о Терминаторе, но опция состоит в том, чтобы использовать GNU screen
(в любом терминале), который идет с его собственным буфером прокрутки, который может искаться в режиме копии с ?
, /
как в vi
. Это не поддерживает нечувствительный случай, regex или целый поиск слова, хотя можно добавить, что как расширение путем записи сценария, который выводит буфер прокрутки в файл и делает то, что Вы любите с ним (включая сообщение screen
прокрутить до данного местоположения и расположить курсор в режим копии).
Если вы используете терминатор, то Ctrl-Shift-F
позволяет вам искать в буфере обратной прокрутки без необходимости запускать экран
или tmux