Я не знаю, должен ли я ответить на мой вопрос таким образом или отредактировать свой вопрос. В любом случае, я нахожу решение и хочу сказать его всем, кто получит такую же ошибку.
После нескольких дней исследований и попыток я понимаю, что Fedora и C ++ на 64-битной версии для Hadoop не очень подходят. Я попытался скомпилировать Hadoop wordcount C ++ с помощью ant, как описано в вики. Но муравей дает мне ошибку: libssl и stdint.
Во-первых, если вы используете Fedora, вы должны добавить -lcrypto к LIBS в .configure . Это является причиной того, что зависимость от libcrypto теперь должна быть явно указана на этих платформах при связывании с libssl. (См. ошибка в Fedora ).
Вторая проблема: ant выдает много ошибок о файлах C ++: для решения этой проблемы вам просто нужно добавить include: stdint.h в верхней части файла.
Тогда сборка удалась. Затем я попытался запустить пример wordcount на моем кластере Hadoop, и он работает, а мой - нет. Я ожидал, что проблема возникла из библиотеки, которую я только что исправил, и я был прав: я попытался запустить пример Hadoop с библиотекой из каталога установки hadoop, но он не работал, и я получил ту же ошибку.
Это может быть объяснено тем фактом, что ant перекомпилировал библиотеку C ++, необходимую для Hadoop (с исправлением, которое я сделал), и вместо этого использовал библиотеку в каталоге установки Hadoop.