Я собираю программу linux на cygwin (обучение классу со студентами, имеющими компьютеры Windows), и столкнулись с проблемой совместимости, я думаю.Ошибка компиляции Cygwin: «log10l» не распознан (объявлен)
Ошибки я получаю это:
`$ Make
g++ -fopenmp -c start.cpp errors.cpp
start.cpp: In function ‘int main(int, char**)’:
start.cpp:1184:54: error: ‘log10l’ was not declared in this scope
else po[i]=log10l(p_rj[i]/(1-p_rj[i]));
^
Makefile:7: recipe for target 'start.o' failed
Make: *** [start.o] Error 1`
log10l не объявлен. Небольшое исследование на сайте cygwin об этом, и я нашел это page, в котором перечислены «не реализованные системные интерфейсы» и log10l.
Должен ли я заменить «log10l» на совместимую функцию и почему бы это не было совместимо?
Приложение скомпилировано без ошибок на моем ящике Linux.
Любая помощь была бы высоко оценена.
LP
Я считаю, что log10l является стандартом c99. в C++ просто используйте log10 (есть перегрузки для double и long double) –