Я написал небольшой файл c для тестирования DRMAA, но он продолжает говорить мне, что функции DRMAA, которые я использовал, не определены. Я включил файл drmaa.h в код C. Когда я использую -idrmaa я получаю эту ошибку:DRMAA- Cant 'link библиотека drmaa при компиляции c file
[[email protected] ~]$ cc -o drmtest -I$SGE_ROOT/include/ -ldrmaa -ldl drmtest.c
/usr/bin/ld: cannot find -ldrmaa
файл заголовка DRMAA в этом пути: $ SGE_ROOT/включить/
Если я скомпилировать файл без -ldrmaa я получаю эту ошибку:
[[email protected] ~]$ cc -o drmtest -I$SGE_ROOT/include/ drmtest.c
/tmp/cclsPr9O.o: In function `main':
drmtest.c:(.text+0x3c): undefined reference to `drmaa_init'
drmtest.c:(.text+0x83): undefined reference to `drmaa_exit'
collect2: ld returned 1 exit status
Я использую систему UNIX моей школы, и я очень к ней знаком. Кто-нибудь может мне с этим помочь?
Это мой drmtest.c файл:
#include <stdio.h>
#include "drmaa.h"
int main (int argc, char **argv) {
char error[DRMAA_ERROR_STRING_BUFFER];
int errnum = 0;
errnum = drmaa_init (argv[0], error, DRMAA_ERROR_STRING_BUFFER);
if (errnum != DRMAA_ERRNO_SUCCESS) {
fprintf (stderr, "Couldn't init DRMAA library: %s\n", error);
return 1; }
/* Do Stuff */
errnum = drmaa_exit (error, DRMAA_ERROR_STRING_BUFFER);
if (errnum != DRMAA_ERRNO_SUCCESS) {
fprintf (stderr, "Couldn't exit DRMAA library: %s\n", error);
return 1; }
return 0;
}
Спасибо за помощь, я нашел путь и добрался до компиляции файла, но я получаю эту ошибку: [mkatouzi @ Арго-1 ~] $ ./drmtest ./drmtest: ошибка при загрузке разделяемых библиотек : libdrmaa.so.1.0: невозможно открыть файл общего объекта: нет такого файла или каталога [mkatouzi @ argo-1 ~] $ – mkatouzi
Обновленный ответ на адрес, который тоже выдает. – isedev