iriscouch / build-couchdb

Batteries-included CouchDB build system
227 stars 36 forks source link

Build fails on Ubuntu 11.10 #11

Closed diversario closed 13 years ago

diversario commented 13 years ago

Tail of rake.log:

STDOUT 
STDOUT ## ----------- ##
STDOUT ## confdefs.h. ##
STDOUT ## ----------- ##
STDOUT 
STDOUT /* confdefs.h */
STDOUT #define PACKAGE_NAME "curl"
STDOUT #define PACKAGE_TARNAME "curl"
STDOUT #define PACKAGE_VERSION "-"
STDOUT #define PACKAGE_STRING "curl -"
STDOUT #define PACKAGE_BUGREPORT "a suitable curl mailing list: http://curl.haxx.se/mail/"
STDOUT #define PACKAGE_URL ""
STDOUT #define PACKAGE "curl"
STDOUT #define VERSION "7.21.4-DEV"
STDOUT #define OS "i686-pc-linux-gnu"
STDOUT 
STDOUT configure: exit 77
STDOUT == End of config.log ==
STDERR rake aborted!
STDERR Command failed with status (77): [env LDFLAGS='-R/home/diversario/local/couc...]
STDERR /usr/lib/ruby/1.8/rake.rb:995:in `sh'
STDERR /usr/lib/ruby/1.8/rake.rb:1010:in `call'
STDERR /usr/lib/ruby/1.8/rake.rb:1010:in `sh'
STDERR /usr/lib/ruby/1.8/rake.rb:1094:in `sh'
STDERR /home/diversario/distros/build-couchdb/tasks/curl.rake:18
STDERR /home/diversario/distros/build-couchdb/tasks/lib.rb:206:in `show_file'
STDERR /home/diversario/distros/build-couchdb/tasks/curl.rake:17
STDERR /home/diversario/distros/build-couchdb/tasks/curl.rake:16:in `chdir'
STDERR /home/diversario/distros/build-couchdb/tasks/curl.rake:16
STDERR /usr/lib/ruby/1.8/tmpdir.rb:129:in `mktmpdir'
STDERR /home/diversario/distros/build-couchdb/tasks/curl.rake:15
STDERR /usr/lib/ruby/1.8/rake.rb:636:in `call'
STDERR /usr/lib/ruby/1.8/rake.rb:636:in `execute'
STDERR /usr/lib/ruby/1.8/rake.rb:631:in `each'
STDERR /usr/lib/ruby/1.8/rake.rb:631:in `execute'
STDERR /usr/lib/ruby/1.8/rake.rb:597:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
STDERR /usr/lib/ruby/1.8/rake.rb:590:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/rake.rb:607:in `invoke_prerequisites'
STDERR /usr/lib/ruby/1.8/rake.rb:604:in `each'
STDERR /usr/lib/ruby/1.8/rake.rb:604:in `invoke_prerequisites'
STDERR /usr/lib/ruby/1.8/rake.rb:596:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
STDERR /usr/lib/ruby/1.8/rake.rb:590:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/rake.rb:607:in `invoke_prerequisites'
STDERR /usr/lib/ruby/1.8/rake.rb:604:in `each'
STDERR /usr/lib/ruby/1.8/rake.rb:604:in `invoke_prerequisites'
STDERR /usr/lib/ruby/1.8/rake.rb:596:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
STDERR /usr/lib/ruby/1.8/rake.rb:590:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/rake.rb:607:in `invoke_prerequisites'
STDERR /usr/lib/ruby/1.8/rake.rb:604:in `each'
STDERR /usr/lib/ruby/1.8/rake.rb:604:in `invoke_prerequisites'
STDERR /usr/lib/ruby/1.8/rake.rb:596:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
STDERR /usr/lib/ruby/1.8/rake.rb:590:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/rake.rb:607:in `invoke_prerequisites'
STDERR /usr/lib/ruby/1.8/rake.rb:604:in `each'
STDERR /usr/lib/ruby/1.8/rake.rb:604:in `invoke_prerequisites'
STDERR /usr/lib/ruby/1.8/rake.rb:596:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
STDERR /usr/lib/ruby/1.8/rake.rb:590:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/rake.rb:583:in `invoke'
STDERR /usr/lib/ruby/1.8/rake.rb:2051:in `invoke_task'
STDERR /usr/lib/ruby/1.8/rake.rb:2029:in `top_level'
STDERR /usr/lib/ruby/1.8/rake.rb:2029:in `each'
STDERR /usr/lib/ruby/1.8/rake.rb:2029:in `top_level'
STDERR /usr/lib/ruby/1.8/rake.rb:2068:in `standard_exception_handling'
STDERR /usr/lib/ruby/1.8/rake.rb:2023:in `top_level'
STDERR /usr/lib/ruby/1.8/rake.rb:2001:in `run'
STDERR /usr/lib/ruby/1.8/rake.rb:2068:in `standard_exception_handling'
STDERR /usr/lib/ruby/1.8/rake.rb:1998:in `run'
STDERR /usr/bin/rake:28

I just cloned the repo into ~/distros/build-couch and ran rake.

diversario commented 13 years ago

Update

Build also fails in the same way when run as rake couchdb:deps otp_keep="*".

diversario commented 13 years ago

Failure is curl-related, possibly?..

diversario commented 13 years ago

Trace:

STDOUT configure: exit 77
STDOUT == End of config.log ==
STDERR rake aborted!
STDERR Command failed with status (77): [env LDFLAGS='-R/home/diversario/distros/bu...]
STDERR /usr/lib/ruby/1.8/rake.rb:995:in `sh'
STDERR /usr/lib/ruby/1.8/rake.rb:1010:in `call'
STDERR /usr/lib/ruby/1.8/rake.rb:1010:in `sh'
STDERR /usr/lib/ruby/1.8/rake.rb:1094:in `sh'
STDERR /home/diversario/distros/build-couchdb/tasks/curl.rake:18
STDERR /home/diversario/distros/build-couchdb/tasks/lib.rb:206:in `show_file'
STDERR /home/diversario/distros/build-couchdb/tasks/curl.rake:17
STDERR /home/diversario/distros/build-couchdb/tasks/curl.rake:16:in `chdir'
STDERR /home/diversario/distros/build-couchdb/tasks/curl.rake:16
STDERR /usr/lib/ruby/1.8/tmpdir.rb:129:in `mktmpdir'
STDERR /home/diversario/distros/build-couchdb/tasks/curl.rake:15
STDERR /usr/lib/ruby/1.8/rake.rb:636:in `call'
STDERR /usr/lib/ruby/1.8/rake.rb:636:in `execute'
STDERR /usr/lib/ruby/1.8/rake.rb:631:in `each'
STDERR /usr/lib/ruby/1.8/rake.rb:631:in `execute'
STDERR /usr/lib/ruby/1.8/rake.rb:597:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
STDERR /usr/lib/ruby/1.8/rake.rb:590:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/rake.rb:607:in `invoke_prerequisites'
STDERR /usr/lib/ruby/1.8/rake.rb:604:in `each'
STDERR /usr/lib/ruby/1.8/rake.rb:604:in `invoke_prerequisites'
STDERR /usr/lib/ruby/1.8/rake.rb:596:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
STDERR /usr/lib/ruby/1.8/rake.rb:590:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/rake.rb:607:in `invoke_prerequisites'
STDERR /usr/lib/ruby/1.8/rake.rb:604:in `each'
STDERR /usr/lib/ruby/1.8/rake.rb:604:in `invoke_prerequisites'
STDERR /usr/lib/ruby/1.8/rake.rb:596:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
STDOUT configure: exit 77
STDOUT == End of config.log ==
STDERR rake aborted!
STDERR Command failed with status (77): [env LDFLAGS='-R/home/diversario/distros/bu...]
STDERR /usr/lib/ruby/1.8/rake.rb:995:in `sh'
STDERR /usr/lib/ruby/1.8/rake.rb:1010:in `call'
STDERR /usr/lib/ruby/1.8/rake.rb:1010:in `sh'
STDERR /usr/lib/ruby/1.8/rake.rb:1094:in `sh'
STDERR /home/diversario/distros/build-couchdb/tasks/curl.rake:18
STDERR /home/diversario/distros/build-couchdb/tasks/lib.rb:206:in `show_file'
STDERR /home/diversario/distros/build-couchdb/tasks/curl.rake:17
STDERR /home/diversario/distros/build-couchdb/tasks/curl.rake:16:in `chdir'
STDERR /home/diversario/distros/build-couchdb/tasks/curl.rake:16
STDERR /usr/lib/ruby/1.8/tmpdir.rb:129:in `mktmpdir'
STDERR /home/diversario/distros/build-couchdb/tasks/curl.rake:15
STDERR /usr/lib/ruby/1.8/rake.rb:636:in `call'
STDERR /usr/lib/ruby/1.8/rake.rb:636:in `execute'
STDERR /usr/lib/ruby/1.8/rake.rb:631:in `each'
STDERR /usr/lib/ruby/1.8/rake.rb:631:in `execute'
STDERR /usr/lib/ruby/1.8/rake.rb:597:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
STDERR /usr/lib/ruby/1.8/rake.rb:590:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/rake.rb:607:in `invoke_prerequisites'
STDERR /usr/lib/ruby/1.8/rake.rb:604:in `each'
STDERR /usr/lib/ruby/1.8/rake.rb:604:in `invoke_prerequisites'
STDERR /usr/lib/ruby/1.8/rake.rb:596:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
STDERR /usr/lib/ruby/1.8/rake.rb:590:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/rake.rb:607:in `invoke_prerequisites'
STDERR /usr/lib/ruby/1.8/rake.rb:604:in `each'
STDERR /usr/lib/ruby/1.8/rake.rb:604:in `invoke_prerequisites'
STDERR /usr/lib/ruby/1.8/rake.rb:596:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
STDERR /usr/lib/ruby/1.8/rake.rb:590:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/rake.rb:590:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/rake.rb:607:in `invoke_prerequisites'
STDERR /usr/lib/ruby/1.8/rake.rb:604:in `each'
STDERR /usr/lib/ruby/1.8/rake.rb:604:in `invoke_prerequisites'
STDERR /usr/lib/ruby/1.8/rake.rb:596:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
STDERR /usr/lib/ruby/1.8/rake.rb:590:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/rake.rb:607:in `invoke_prerequisites'
STDERR /usr/lib/ruby/1.8/rake.rb:604:in `each'
STDERR /usr/lib/ruby/1.8/rake.rb:604:in `invoke_prerequisites'
STDERR /usr/lib/ruby/1.8/rake.rb:596:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
STDERR /usr/lib/ruby/1.8/rake.rb:590:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.8/rake.rb:583:in `invoke'
STDERR /usr/lib/ruby/1.8/rake.rb:2051:in `invoke_task'
STDERR /usr/lib/ruby/1.8/rake.rb:2029:in `top_level'
STDERR /usr/lib/ruby/1.8/rake.rb:2029:in `each'
STDERR /usr/lib/ruby/1.8/rake.rb:2029:in `top_level'
STDERR /usr/lib/ruby/1.8/rake.rb:2068:in `standard_exception_handling'
STDERR /usr/lib/ruby/1.8/rake.rb:2023:in `top_level'
STDERR /usr/lib/ruby/1.8/rake.rb:2001:in `run'
STDERR /usr/lib/ruby/1.8/rake.rb:2068:in `standard_exception_handling'
STDERR /usr/lib/ruby/1.8/rake.rb:1998:in `run'
STDERR /usr/bin/rake:28

Is there anything I could try to install it?

diversario commented 13 years ago

Well, I keep trying.

If I run rake --trace curl:build I get the aforementioned error. I upgraded from Ruby 1.8.7 to 1.9.2 and the trace is this:

STDOUT /* confdefs.h */
STDOUT #define PACKAGE_NAME "curl"
STDOUT #define PACKAGE_TARNAME "curl"
STDOUT #define PACKAGE_VERSION "-"
STDOUT #define PACKAGE_STRING "curl -"
STDOUT #define PACKAGE_BUGREPORT "a suitable curl mailing list: http://curl.haxx.se/mail/"
STDOUT #define PACKAGE_URL ""
STDOUT #define PACKAGE "curl"
STDOUT #define VERSION "7.21.4-DEV"
STDOUT #define OS "i686-pc-linux-gnu"
STDOUT 
STDOUT configure: exit 77
STDOUT == End of config.log ==
STDERR rake aborted!
STDERR Command failed with status (77): [env LDFLAGS='-R/home/diversario/distros/bu...]
STDERR /usr/lib/ruby/1.9.1/rake.rb:993:in `block in sh'
STDERR /usr/lib/ruby/1.9.1/rake.rb:1008:in `call'
STDERR /usr/lib/ruby/1.9.1/rake.rb:1008:in `sh'
STDERR /usr/lib/ruby/1.9.1/rake.rb:1092:in `sh'
STDERR /home/diversario/distros/build-couchdb/tasks/curl.rake:18:in `block (5 levels) in <top (required)>'
STDERR /home/diversario/distros/build-couchdb/tasks/lib.rb:206:in `show_file'
STDERR /home/diversario/distros/build-couchdb/tasks/curl.rake:17:in `block (4 levels) in <top (required)>'
STDERR /home/diversario/distros/build-couchdb/tasks/curl.rake:16:in `chdir'
STDERR /home/diversario/distros/build-couchdb/tasks/curl.rake:16:in `block (3 levels) in <top (required)>'
STDERR /usr/lib/ruby/1.9.1/tmpdir.rb:83:in `mktmpdir'
STDERR /home/diversario/distros/build-couchdb/tasks/curl.rake:15:in `block (2 levels) in <top (required)>'
STDERR /usr/lib/ruby/1.9.1/rake.rb:634:in `call'
STDERR /usr/lib/ruby/1.9.1/rake.rb:634:in `block in execute'
STDERR /usr/lib/ruby/1.9.1/rake.rb:629:in `each'
STDERR /usr/lib/ruby/1.9.1/rake.rb:629:in `execute'
STDERR /usr/lib/ruby/1.9.1/rake.rb:595:in `block in invoke_with_call_chain'
STDERR /usr/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize'
STDERR /usr/lib/ruby/1.9.1/rake.rb:588:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.9.1/rake.rb:605:in `block in invoke_prerequisites'
STDERR /usr/lib/ruby/1.9.1/rake.rb:602:in `each'
STDERR /usr/lib/ruby/1.9.1/rake.rb:602:in `invoke_prerequisites'
STDERR /usr/lib/ruby/1.9.1/rake.rb:594:in `block in invoke_with_call_chain'
STDERR /usr/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize'
STDERR /usr/lib/ruby/1.9.1/rake.rb:588:in `invoke_with_call_chain'
STDERR /usr/lib/ruby/1.9.1/rake.rb:581:in `invoke'
STDERR /usr/lib/ruby/1.9.1/rake.rb:2041:in `invoke_task'
STDERR /usr/lib/ruby/1.9.1/rake.rb:2019:in `block (2 levels) in top_level'
STDERR /usr/lib/ruby/1.9.1/rake.rb:2019:in `each'
STDERR /usr/lib/ruby/1.9.1/rake.rb:2019:in `block in top_level'
STDERR /usr/lib/ruby/1.9.1/rake.rb:2058:in `standard_exception_handling'
STDERR /usr/lib/ruby/1.9.1/rake.rb:2013:in `top_level'
STDERR /usr/lib/ruby/1.9.1/rake.rb:1992:in `run'
STDERR /usr/bin/rake:28:in `<main>'

I don't know Ruby so I can't figure out what is going on.

barnaba commented 13 years ago

I can confirm this bug. I tried recreating the behavior of curl:build task, and come with some different results:

in build-couchdb/dependencies/curl

sudo ./buildconf  #this went well
./configure --prefix=/home/barnex/build-couchdb/build --with-erlang=/home/barnex/build-couchdb/build/lib/erlang/usr/include  #this also went well

sudo gmake
...
gmake[2]: Entering directory `/home/barnex/build-couchdb/dependencies/curl/src'
/bin/bash ../libtool --tag=CC   --mode=link gcc  -g0 -O2 -Wno-system-headers    -o curl main.o hugehelp.o urlglob.o writeout.o writeenv.o getpass.o homedir.o curlutil.o os-specific.o xattr.o strtoofft.o strdup.o rawstr.o nonblock.o  ../lib/libcurl.la -lrt -lz 
libtool: link: gcc -g0 -O2 -Wno-system-headers -o .libs/curl main.o hugehelp.o urlglob.o writeout.o writeenv.o getpass.o homedir.o curlutil.o os-specific.o xattr.o strtoofft.o strdup.o rawstr.o nonblock.o  ../lib/.libs/libcurl.so -lrt -lz -Wl,-rpath -Wl,/home/barnex/build-couchdb/build/lib
../lib/.libs/libcurl.so: undefined reference to `SSLv2_client_method'
collect2: ld returned 1 exit status
jhs commented 13 years ago

Thanks very much for this bug report! I am working on all of the open Ubuntu issues so hopefully I will have a fix soon.

jhs commented 13 years ago

I have corrected this issue and confirmed that the latest master branch builds on 11.10 Oneiric Ocelot out of the box. It looks like Ubuntu's OpenSSL upgrade (or perhaps build process) removes SSLv2 support, and the latest release of libcurl supports this.

Remember to run git submodule update --init --recursive after pulling, to make Git check out the newer curl tag. Thanks for the bug report!

barnaba commented 13 years ago

Thank you, works great.