2016-08-30 2 views
1

Я устанавливаю HAWQ на серверах RedHat, предоставляемых на Amazon EC2. У меня уже есть настройка HDP 2.3 на кластере. Я клонировал HAWQ от Github.Установка HAWQ на Redhat

Сначала я запускаю ./configure --prefix=/opt/hawq.

На втором этапе я запускаю make. Зависимости компилируются правильно, когда я запускаю make из корневой папки incubator-hawq. Следующая ошибка occours когда make двигается к компиляции из src папку в корневом каталоге (incubator-hawq):

make[2]: Entering directory `/root/incubator-hawq/src/port' 
gcc -O3 -std=gnu99 -Wall -Wmissing-prototypes -Wpointer-arith -Wendif-labels -Wformat-security -fno-strict-aliasing -fwrapv -fno-aggressive-loop-optimizations -I/usr/include/libxml2 -I../../src/port -DFRONTEND -I../../src/include -D_GNU_SOURCE -I/root/incubator-hawq/depends/libhdfs3/build/install/usr/local/hawq/include -I/root/incubator-hawq/depends/libyarn/build/install/usr/local/hawq/include -c -o copydir.o copydir.c 
In file included from copydir.c:25:0: 
../../src/include/storage/fd.h:61:23: fatal error: hdfs/hdfs.h: No such file or directory 
#include "hdfs/hdfs.h" 
^ 
compilation terminated. 
make[2]: *** [copydir.o] Error 1 
make[2]: Leaving directory `/root/incubator-hawq/src/port' 
make[1]: *** [all] Error 2 
make[1]: Leaving directory `/root/incubator-hawq/src' 
make: *** [all] Error 2 

Я знаю, что компилятор не может найти hdfs/hdfs.h, но как зависимости (libhdfs3) успешно скомпилированы, я не понимаю почему конкретный файл не найден. Пожалуйста, помогите, если кто-то столкнулся с той же проблемой, что и я.

+0

Следует отметить, что 'gcc' компилирует c-код, а не C++. –

+0

'gcc' означает сборник компиляторов GNU и может компилировать C, C++, Objective-C, Fortran, Java, Ada и Go. Проверьте [здесь] (https://gcc.gnu.org/). Я обновил тег до 'c' из' C++ 'BTW. – Raman

+0

Вы действительно думаете, что я не знаю, о чем говорю? Мне не нужно, чтобы вы мне это объяснили! Для компиляции источников c вы используете 'gcc', для источника C++ это' g ++ '. Обновление тега может быть правильной реакцией. Хотя мне интересно, подходит ли ваш вопрос для переполнения стека, потому что речь идет не о конкретной проблеме программирования, а об установке пакета в вашу конкретную среду. Вряд ли вы получите краткие ответы здесь. В SE могут появиться лучшие сайты. –

ответ

1

Не могли бы вы проверить файл /root/incubator-hawq/depends/libhdfs3/build/install/usr/local/hawq/include/hdfs/hdfs.h? Если нет, то это должен быть дефект сборки, пожалуйста, откройте дефект команде hawq или напишите по адресу: [email protected] Благодарю.

+0

Спасибо, каталог не существует. Я собираюсь открыть дефект с командой HAWQ. – Raman

1

У вас есть папка в incubator-hawq/depends/libhdfs3/build/install после make?

Проблема кажется, что libhdfs3 зависимо не успешно построено. Для этого есть несколько возможных причин: использование старой версии gcc (< 4.7), ошибка конфигурации libhdfs3.

Чтобы проверить мои слова, вы можете попробовать это:

cd incubator-hawq/depends/libhdfs3 
mkdir build_debug && cd build_debug 
cmake .. 
make 

Если бы вы могли успешно сделать это, я думаю, что есть еще одна причина для вашей проблемы. В этом случае вы могли бы вставить информацию с более строгими строками?

Другая возможная причина заключается в том, что вы используете другой префикс конфигурации. В этом случае перед другой конфигурацией вы должны запустить make distclean.

+0

Я попробую это и дам вам знать результаты – Raman