libtorque — как мне включить функцию PBSD_status?

Я пишу приложение, чтобы проверить, работает ли pbs_connect () или нет. Вот мой код:

#include <stdio.h>

#include "/usr/include/torque/pbs_ifl.h"#include "/usr/include/torque/pbs_error.h"
#include <pbs_config.h>
#include "libpbs.h"
int main() {printf("Hello world\n");

int server = pbs_connect("inferno.local");

//batch_status * stat1 = pbs_statserver(server, NULL, NULL);

pbs_errno = 0;
batch_status * stat1 = PBSD_status(server, 21, (char *)"", NULL, NULL);

printf("fd: %d\n", server);
//printf("text: %s\n", stat1->text);
//printf("name: %s\n", stat1->name);
printf("name: %d\n", pbs_errno);

return 0;

}

//compiled using - //g++ -o test test.c -L/usr/lib64 -ltorque

Я получил:

# g++ -o test test.c -L/usr/lib64 -ltorque
test.c:7:24: error: pbs_config.h: No such file or directory
test.c:8:20: error: libpbs.h: No such file or directory
test.c: In function 'int main()':
test.c:19: warning: deprecated conversion from string constant to 'char*'
test.c:24: error: 'PBSD_status' was not declared in this scope

Исходный файл, содержащий PBSD_status, можно найти здесь:
https://github.com/adaptivecomputing/torque/blob/4.2.7/src/lib/Libifl/PBSD_status.c

Что-то, что мне нужно включить в мою команду g ++, чтобы заставить это работать? Я проверил в / usr / lib64 /, и нет ни libpbs.h, ни pbs_config.h. Где бы они были, если бы их там не было?

1

Решение

Что касается ваших заголовков, вы сталкиваетесь с разницей между установленными и неустановленными заголовками. По сути, программный проект не устанавливает все заголовки внутри этого проекта, а только релевантные для API. Эти два других отсутствуют в API и, следовательно, не установлены. Вам нужно сослаться на их путь.

Что касается включения в библиотеку PBSD_status (), вы можете отредактировать Makefile для Libpbs, включив в него исходный файл для PBSD_status (), а затем перестроить, или же вы можете связать библиотеку libifl, которая находится в src / lib / Libifl из базовый каталог для проекта.

1

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


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