Вы хотите сохранить «среду db» для каждой ветви. Посмотрите на smudge / clean script, чтобы указать на разные экземпляры. Если у вас закончились экземпляры db, попросите сценарий отключить временный экземпляр, поэтому, когда вы переключаетесь на новую ветку, она уже существует и просто должна быть переименована скриптом. Обновления БД должны запускаться непосредственно перед выполнением ваших тестов.
Надеемся, что это поможет.
Ошибка с неопределенной ссылкой возникает на этапе компоновки, а не на этапе компиляции и сборки. На этапе компиляции будут искать заголовочные файлы и, как вы видите, он правильно находит каталог pthread.h
из каталога sysroot include. После компиляции он должен вызвать компоновщик для создания исполняемого двоичного файла и там, где он терпит неудачу.
При связывании необходимо добавить libpthread
к командной строке компоновщика, чтобы компоновщик мог найти функцию pthread_create
и связать ее с конечным исполняемым файлом, обычно это делается с помощью указания LDFLAGS
, которое затем добавляется к вызову компоновщика. ,
Драйвер компилятора (gcc) можно использовать для выполнения шагов компиляции и компоновки. поэтому, когда вы добавляете опцию -pthread
к компилятору, а компилятор также используется для выполнения компоновки, он преобразует эту опцию в -lpthread
в cmdline компоновщика, который затем находит libpthread и связывает его.