Я знаю, что этот вопрос задавали в другом месте, например здесь, но я не смог найти там решение моей конкретной проблемы.
Я пытался установить программное обеспечение Ipopt в Linux, следуя инструкциям в документации, но когда я запускаю make, я получаю следующую ошибку:
/obs/xxx/Ipopt-3.12.8/build/ThirdParty/ASL/.libs/libcoinasl.so: undefined reference to `clock_gettime'
collect2: ld returned 1 exit status
make[3]: *** [ipopt] Error 1
make[3]: Leaving directory `/xxx_home/xxx/Ipopt-3.12.8/build/Ipopt/src/Apps/AmplSolver'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/xxx_home/xxx/Ipopt-3.12.8/build/Ipopt/src/Apps'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/xxx_home/xxx/Ipopt-3.12.8/build/Ipopt'
make: *** [all-recursive] Error 1
Согласно сообщениям выше, способ обойти это - включить флаг -lrt, но я не знаю, должен ли я вставлять его в make-файл, в какой make-файл и где именно в make-файле. К вашему сведению, вот архив Ipopt, Я использовал, где вы можете найти Makefile, и вот некоторая информация о моем дистрибутиве Linux
$ uname -or
3.2.0-0.bpo.4-amd64 GNU/Linux
$ lsb_release -irc
Distributor ID: Debian
Release: 6.0.10
Codename: squeeze
Спасибо.
-D_XOPEN_SOURCE=600
. - person jww   schedule 08.07.2018