You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-user@hadoop.apache.org by Tom Peters <th...@gmail.com> on 2011/06/07 22:34:04 UTC

Linker errors with Hadoop pipes

Hadoop n00b here, just started playing around with Hadoop Pipes. I'm getting
linker errors while compiling a simple WordCount example using
hadoop-0.20.203 (current most recent version) that did not appear for the
same code in hadoop-0.20.2

Linker errors of the form: undefined reference to `EVP_sha1' in
HadoopPipes.cc.

EVP_sha1 (and all of the undefined references I get) are part of the openssl
library which HadoopPipes.cc from hadoop-0.20.203 uses, but hadoop-0.20.2
does not.

I've tried adjusting my makefile to link to the ssl libraries, but I'm still
out of luck. Any ideas would be greatly appreciated. Thanks!

PS, here is my current makefile:

CC = g++

HADOOP_INSTALL = /usr/local/hadoop-0.20.203.0

SSL_INSTALL = /usr/local/ssl

PLATFORM = Linux-amd64-64

CPPFLAGS = -m64 -I$(HADOOP_INSTALL)/c++/$(PLATFORM)/include
-I$(SSL_INSTALL)/include

WordCount: WordCount.cc

$(CC) $(CPPFLAGS) $< -Wall -Wextra -L$(SSL_INSTALL)/lib -lssl -lcrypto
-L$(HADOOP_INSTALL)/c++/$(PLATFORM)/lib -lhadooppipes -lhadooputils
-lpthread -g -O2 -o $@

The actual program I'm using can be found at
http://cs.smith.edu/dftwiki/index.php/Hadoop_Tutorial_2.2_--_Running_C%2B%2B_Programs_on_Hadoop