Closed cdybedahl closed 13 years ago
I ran into this issue as well.
I did not realize anything is calling ed
. (The Solaris builds use it to tweak a generated autotools file but not Ubuntu.)
Do you have a log of the error? (Builds usually leave a rake.log
file in the top-level.)
I suspect that one of the sub-project build procedures is calling ed. If I can confirm that, I can more confidently state it is an OS dependency. I've wanted to rework dependencies for a long time. I do not like how half of them are in the README and the other half are automatically installed.
Here's something from my rake.log
on a successful build (i. e. after installing ed
) on Ubuntu:
STDOUT erlc -W +debug_info -pa /home/couchdb/build-couchdb/dependencies/otp/lib/diameter/ebin +'{parse_transform,sys_pre_attributes}' +'{attribute,insert,app_vsn,"diameter-0.9"}' -I../../include -o../../ebin diameter_types.erl
STDOUT erlc -W +debug_info -pa /home/couchdb/build-couchdb/dependencies/otp/lib/diameter/ebin +'{parse_transform,sys_pre_attributes}' +'{attribute,insert,app_vsn,"diameter-0.9"}' -I../../include -o../../ebin diameter_watchdog.erl
STDOUT erlc -W +debug_info -pa /home/couchdb/build-couchdb/dependencies/otp/lib/diameter/ebin +'{parse_transform,sys_pre_attributes}' +'{attribute,insert,app_vsn,"diameter-0.9"}' -I../../include -o../../ebin diameter_watchdog_sup.erl
STDOUT erlc -W +debug_info -pa /home/couchdb/build-couchdb/dependencies/otp/lib/diameter/ebin +'{parse_transform,sys_pre_attributes}' +'{attribute,insert,app_vsn,"diameter-0.9"}' -I../../include -o../../ebin diameter_gen_base_rfc3588.erl
STDOUT ../../bin/diameterc -i ../../ebin -o . diameter_gen_base_accounting.dia
STDOUT erlc -W +debug_info -pa /home/couchdb/build-couchdb/dependencies/otp/lib/diameter/ebin +'{parse_transform,sys_pre_attributes}' +'{attribute,insert,app_vsn,"diameter-0.9"}' -I../../include -o../../ebin diameter_gen_base_accounting.erl
STDOUT ../../bin/diameterc -i ../../ebin -o . diameter_gen_relay.dia
STDOUT erlc -W +debug_info -pa /home/couchdb/build-couchdb/dependencies/otp/lib/diameter/ebin +'{parse_transform,sys_pre_attributes}' +'{attribute,insert,app_vsn,"diameter-0.9"}' -I../../include -o../../ebin diameter_gen_relay.erl
STDOUT sed -e 's;%VSN%;0.9;' diameter.app.src > ../../ebin/diameter.app
STDOUT M=`echo diameter diameter_app diameter_callback diameter_capx diameter_config diameter_dbg diameter_codec diameter_dict diameter_exprecs diameter_info diameter_lib diameter_misc_sup diameter_peer diameter_peer_fsm diameter_peer_fsm_sup diameter_reg diameter_service diameter_service_sup diameter_session diameter_stats diameter_sup diameter_sync diameter_types diameter_watchdog diameter_watchdog_sup diameter_gen_base_rfc3588 diameter_gen_base_accounting diameter_gen_relay | sed -e 's/^ *//' -e 's/ *$//' -e 'y/ /,/'`; \
STDOUT echo "/%APP_MODULES%/s//$M/;w;q" | tr ';' '\n' \
STDOUT | ed -s ../../ebin/diameter.app
STDOUT make -C ../compiler ../../ebin/diameter.app APP_TARGET=../../ebin/diameter.app
STDOUT make[5]: Entering directory `/home/couchdb/build-couchdb/dependencies/otp/lib/diameter/src/compiler'
STDOUT M=`echo diameter_codegen diameter_spec_scan diameter_spec_util | sed -e 's/^ *//' -e 's/ *$//' -e 'y/ /,/'`; \
STDOUT echo "/%COMPILER_MODULES%/s//$M/;w;q" | tr ';' '\n' \
STDOUT | ed -s ../../ebin/diameter.app
STDOUT make[5]: Leaving directory `/home/couchdb/build-couchdb/dependencies/otp/lib/diameter/src/compiler'
STDOUT make -C ../transport ../../ebin/diameter.app APP_TARGET=../../ebin/diameter.app
STDOUT make[5]: Entering directory `/home/couchdb/build-couchdb/dependencies/otp/lib/diameter/src/transport'
STDOUT for f in diameter_etcp diameter_etcp_sup diameter_tcp diameter_tcp_sup diameter_sctp diameter_sctp_sup diameter_transport_sup; do \
STDOUT sed -f ../app/depend.sed $f.erl | sed "s@/@/$f@"; \
STDOUT done \
STDOUT > depend.mk
STDOUT make[5]: Leaving directory `/home/couchdb/build-couchdb/dependencies/otp/lib/diameter/src/transport'
STDOUT make[5]: Entering directory `/home/couchdb/build-couchdb/dependencies/otp/lib/diameter/src/transport'
STDOUT M=`echo diameter_etcp diameter_etcp_sup diameter_tcp diameter_tcp_sup diameter_sctp diameter_sctp_sup diameter_transport_sup | sed -e 's/^ *//' -e 's/ *$//' -e 'y/ /,/'`; \
STDOUT echo "/%TRANSPORT_MODULES%/s//$M/;w;q" | tr ';' '\n' \
ed
is in there a couple of times. So at least the otp
repo seems to be using it.
Thanks. Fixed and pushed.
I'm having the same issue on Debian stable (squeeze).
After running:
apt-get install ed
the issue seems to be fixed.
So please add "ed" to the debian dependendies too.
@reihu Thanks for confirming on Debian. I assumed as much but tried to be conservative on the patch to avoid outsource testing it.
Committed and pushed.
The list of packages that need to be installed on Ubuntu 10.04LTS should also include 'ed', since /bin/ed is needed to compile Erlang/OTP and it's apparently not included in a default system.