libev-4.15 не компилируется на OSX 10.8

Я пытаюсь перейти с libev-3.8 (который прекрасно компилируется на OSX 10.8) до libev-4.15 и получаю следующую ошибку.

third_party/libev-4.15/ev.h:234: error: expected identifier before numeric constant
third_party/libev-4.15/ev.h:234: error: expected `}' before numeric constant
third_party/libev-4.15/ev.h:234: error: expected unqualified-id before numeric constant
third_party/libev-4.15/ev.h:842: error: expected declaration before ‘}’ token

Ссылка на ev.h: http://cvs.schmorp.de/libev/ev.h?revision=1.171&Вид = разметки

Мой системный конфиг:

checking host system type... i386-apple-darwin12.3.0
checking target system type... i386-apple-darwin12.3.0
checking for ld used by gcc... /usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld
checking if the linker (/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld) is GNU ld... no
checking how to convert i386-apple-darwin12.3.0 file names to i386-apple-darwin12.3.0 format... func_convert_file_noop
checking how to convert i386-apple-darwin12.3.0 file names to toolchain format... func_convert_file_noop
checking for /usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld option to reload object files... -r

FWIW, тот же конфиг прекрасно компилируется на CentOS5.6.

0

Решение

Оказывается, проблема заключалась в том, что в OSX «EV_ERROR», объявленный в «ev.h», конфликтует с тем, что объявлено в «/usr/include/sys/event.h».

В качестве исправления мне пришлось заранее объявить переменные ev, которые я использовал, вместо того, чтобы включать ev.h напрямую в один из моих исходных файлов. Это добилось цели.

1

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

Других решений пока нет …

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