[tbb-bugs] #23458 [Applications/Tor Browser]: Check if the pic-executable flag and setting the entry point can force mingw's ld to keep the reloc section

Tor Bug Tracker & Wiki blackhole at torproject.org
Mon Sep 11 17:37:54 UTC 2017


#23458: Check if the pic-executable flag and setting the entry point can force
mingw's ld to keep the reloc section
--------------------------------------+--------------------------
 Reporter:  boklm                     |          Owner:  boklm
     Type:  task                      |         Status:  assigned
 Priority:  Medium                    |      Milestone:
Component:  Applications/Tor Browser  |        Version:
 Severity:  Normal                    |     Resolution:
 Keywords:  TorBrowserTeam201709      |  Actual Points:
Parent ID:                            |         Points:
 Reviewer:                            |        Sponsor:
--------------------------------------+--------------------------

Comment (by boklm):

 I tried to do a build using `-Wl,--pic-executable,-e,_mainCRTStartup`
 instead of using the binutils patch, and the firefox and openssl parts
 built without error, but `libevent` fails with the following error:
 {{{
 libtool: link: i686-w64-mingw32-gcc -shared  .libs/event.o
 .libs/evthread.o .libs/buffer.o .libs/bufferevent.o
 .libs/bufferevent_sock.o .libs/bufferevent_filter.o
 .libs/bufferevent_pair.o .libs/listener.o .libs/bufferevent_ratelim.o
 .libs/evmap.o .libs/log.o .libs/evutil.o .libs/evutil_rand.o
 .libs/strlcpy.o .libs/win32select.o .libs/evthread_win32.o
 .libs/buffer_iocp.o .libs/event_iocp.o .libs/bufferevent_async.o
 .libs/signal.o .libs/event_tagging.o .libs/http.o .libs/evdns.o
 .libs/evrpc.o
 /var/tmp/dist/mingw-w64/i686-w64-mingw32/lib/../lib/libssp.dll.a
 -L/var/tmp/dist/mingw-w64/i686-w64-mingw32/lib
 -L/var/tmp/dist/mingw-w64/mingw/lib -L/var/tmp/dist/mingw-w64/gcclibs
 -lws2_32 -lshell32 -ladvapi32  -mwindows -mwindows -Wl,--dynamicbase -Wl
 ,--pic-executable -Wl,-e -Wl,_mainCRTStartup -Wl,--nxcompat   -o
 .libs/libevent-2-0-5.dll -Wl,--enable-auto-image-base -Xlinker --out-
 implib -Xlinker .libs/libevent.dll.a
 /var/tmp/dist/mingw-w64/lib/gcc/i686-w64-mingw32/5.4.0/../../../../i686-w64-mingw32/bin/ld:
 warning: cannot find entry symbol _mainCRTStartup; defaulting to 00401000
 .libs/event_tagging.o:event_tagging.c:(.text+0x2c6): undefined reference
 to `evbuffer_add'
 .libs/event_tagging.o:event_tagging.c:(.text+0x330): undefined reference
 to `evbuffer_add'
 .libs/event_tagging.o:event_tagging.c:(.text+0x3ce): undefined reference
 to `evbuffer_add'
 .libs/event_tagging.o:event_tagging.c:(.text+0x417): undefined reference
 to `evbuffer_get_length'
 .libs/event_tagging.o:event_tagging.c:(.text+0x44b): undefined reference
 to `evbuffer_pullup'
 .libs/event_tagging.o:event_tagging.c:(.text+0x4ca): undefined reference
 to `evbuffer_drain'
 .libs/event_tagging.o:event_tagging.c:(.text+0x5a9): undefined reference
 to `evbuffer_add'
 .libs/event_tagging.o:event_tagging.c:(.text+0x5fb): undefined reference
 to `evbuffer_get_length'
 .libs/event_tagging.o:event_tagging.c:(.text+0x61c): undefined reference
 to `evbuffer_add_buffer'
 .libs/event_tagging.o:event_tagging.c:(.text+0x6a3): undefined reference
 to `evbuffer_add'
 .libs/event_tagging.o:event_tagging.c:(.text+0x737): undefined reference
 to `evbuffer_add'
 .libs/event_tagging.o:event_tagging.c:(.text+0x866): undefined reference
 to `evbuffer_get_length'
 .libs/event_tagging.o:event_tagging.c:(.text+0x89e): undefined reference
 to `evbuffer_pullup'
 .libs/event_tagging.o:event_tagging.c:(.text+0x909): undefined reference
 to `evbuffer_pullup'
 .libs/event_tagging.o:event_tagging.c:(.text+0x9c4): undefined reference
 to `evbuffer_get_length'
 .libs/event_tagging.o:event_tagging.c:(.text+0x9fc): undefined reference
 to `evbuffer_pullup'
 .libs/event_tagging.o:event_tagging.c:(.text+0xa67): undefined reference
 to `evbuffer_pullup'
 .libs/event_tagging.o:event_tagging.c:(.text+0xb70): undefined reference
 to `evbuffer_drain'
 .libs/event_tagging.o:event_tagging.c:(.text+0xbe5): undefined reference
 to `evbuffer_drain'
 .libs/event_tagging.o:event_tagging.c:(.text+0xdde): undefined reference
 to `evbuffer_get_length'
 .libs/event_tagging.o:event_tagging.c:(.text+0xe4e): undefined reference
 to `evbuffer_drain'
 .libs/event_tagging.o:event_tagging.c:(.text+0xebf): undefined reference
 to `evbuffer_pullup'
 .libs/event_tagging.o:event_tagging.c:(.text+0xed2): undefined reference
 to `evbuffer_add'
 .libs/event_tagging.o:event_tagging.c:(.text+0xef0): undefined reference
 to `evbuffer_drain'
 .libs/event_tagging.o:event_tagging.c:(.text+0xf8f): undefined reference
 to `evbuffer_get_length'
 .libs/event_tagging.o:event_tagging.c:(.text+0xfce): undefined reference
 to `evbuffer_drain'
 .libs/event_tagging.o:event_tagging.c:(.text+0x1080): undefined reference
 to `evbuffer_get_length'
 .libs/event_tagging.o:event_tagging.c:(.text+0x10bf): undefined reference
 to `evbuffer_drain'
 .libs/event_tagging.o:event_tagging.c:(.text+0x1165): undefined reference
 to `evbuffer_remove'
 .libs/event_tagging.o:event_tagging.c:(.text+0x11d6): undefined reference
 to `event_mm_malloc_'
 .libs/event_tagging.o:event_tagging.c:(.text+0x11fa): undefined reference
 to `event_warn'
 .libs/event_tagging.o:event_tagging.c:(.text+0x121c): undefined reference
 to `evbuffer_remove'
 .libs/event_tagging.o:event_tagging.c:(.text+0x1322): undefined reference
 to `evbuffer_drain'
 .libs/http.o:http.c:(.text+0x7b): undefined reference to `evutil_snprintf'
 .libs/http.o:http.c:(.text+0x94): undefined reference to `_event_strlcpy'
 .libs/http.o:http.c:(.text+0xe2): undefined reference to `_event_strlcpy'
 .libs/http.o:http.c:(.text+0x143): undefined reference to `_event_strlcpy'
 .libs/http.o:http.c:(.text+0x1d5): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x368): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x3a2): undefined reference to
 `event_mm_malloc_'
 .libs/http.o:http.c:(.text+0x3cf): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x5e8): undefined reference to `event_add'
 .libs/http.o:http.c:(.text+0x5fd): undefined reference to `event_add'
 .libs/http.o:http.c:(.text+0x676): undefined reference to
 `bufferevent_setcb'
 .libs/http.o:http.c:(.text+0x68c): undefined reference to
 `bufferevent_enable'
 .libs/http.o:http.c:(.text+0x6d1): undefined reference to
 `bufferevent_disable'
 .libs/http.o:http.c:(.text+0x718): undefined reference to
 `bufferevent_enable'
 .libs/http.o:http.c:(.text+0x73a): undefined reference to
 `bufferevent_get_output'
 .libs/http.o:http.c:(.text+0x752): undefined reference to
 `evbuffer_add_printf'
 .libs/http.o:http.c:(.text+0x799): undefined reference to
 `bufferevent_setcb'
 .libs/http.o:http.c:(.text+0x861): undefined reference to
 `bufferevent_get_output'
 .libs/http.o:http.c:(.text+0x886): undefined reference to
 `evbuffer_add_printf'
 .libs/http.o:http.c:(.text+0x8c4): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0x8e3): undefined reference to
 `evutil_snprintf'
 .libs/http.o:http.c:(.text+0x96e): undefined reference to
 `evutil_ascii_strcasecmp'
 .libs/http.o:http.c:(.text+0x9af): undefined reference to
 `evutil_ascii_strcasecmp'
 .libs/http.o:http.c:(.text+0xa1f): undefined reference to
 `evutil_ascii_strncasecmp'
 .libs/http.o:http.c:(.text+0xb4a): undefined reference to
 `evutil_snprintf'
 .libs/http.o:http.c:(.text+0xbd8): undefined reference to
 `bufferevent_get_output'
 .libs/http.o:http.c:(.text+0xbfb): undefined reference to
 `evbuffer_add_printf'
 .libs/http.o:http.c:(.text+0xc80): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0xd91): undefined reference to
 `bufferevent_get_output'
 .libs/http.o:http.c:(.text+0xdf8): undefined reference to
 `evbuffer_add_printf'
 .libs/http.o:http.c:(.text+0xe21): undefined reference to `evbuffer_add'
 .libs/http.o:http.c:(.text+0xe2f): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0xe48): undefined reference to
 `evbuffer_add_buffer'
 .libs/http.o:http.c:(.text+0xf8d): undefined reference to `event_mm_free_'
 .libs/http.o:http.c:(.text+0x1052): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x1068): undefined reference to
 `bufferevent_disable'
 .libs/http.o:http.c:(.text+0x1372): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0x13bc): undefined reference to
 `evbuffer_readln'
 .libs/http.o:http.c:(.text+0x13de): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x13fd): undefined reference to
 `evutil_strtoll'
 .libs/http.o:http.c:(.text+0x1441): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x1570): undefined reference to
 `evbuffer_remove_buffer'
 .libs/http.o:http.c:(.text+0x15c6): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0x15da): undefined reference to
 `evbuffer_drain'
 .libs/http.o:http.c:(.text+0x1652): undefined reference to
 `bufferevent_get_input'
 .libs/http.o:http.c:(.text+0x16a1): undefined reference to
 `bufferevent_disable'
 .libs/http.o:http.c:(.text+0x16c4): undefined reference to
 `bufferevent_enable'
 .libs/http.o:http.c:(.text+0x1705): undefined reference to
 `bufferevent_get_input'
 .libs/http.o:http.c:(.text+0x17b9): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0x17e9): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0x180e): undefined reference to
 `evbuffer_add_buffer'
 .libs/http.o:http.c:(.text+0x1828): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0x1842): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0x18b2): undefined reference to
 `evbuffer_remove_buffer'
 .libs/http.o:http.c:(.text+0x194c): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0x19a6): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0x19ba): undefined reference to
 `evbuffer_drain'
 .libs/http.o:http.c:(.text+0x19f9): undefined reference to
 `bufferevent_disable'
 .libs/http.o:http.c:(.text+0x1a1c): undefined reference to
 `bufferevent_enable'
 .libs/http.o:http.c:(.text+0x1a7d): undefined reference to
 `event_base_get_deferred_cb_queue'
 .libs/http.o:http.c:(.text+0x1a89): undefined reference to
 `event_deferred_cb_cancel'
 .libs/http.o:http.c:(.text+0x1b26): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x1bf1): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x1c3b): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x1d6c): undefined reference to
 `event_initialized'
 .libs/http.o:http.c:(.text+0x1d7e): undefined reference to `event_del'
 .libs/http.o:http.c:(.text+0x1d8c): undefined reference to
 `event_debug_unassign'
 .libs/http.o:http.c:(.text+0x1da4): undefined reference to
 `bufferevent_free'
 .libs/http.o:http.c:(.text+0x1dbe): undefined reference to
 `event_base_get_deferred_cb_queue'
 .libs/http.o:http.c:(.text+0x1dca): undefined reference to
 `event_deferred_cb_cancel'
 .libs/http.o:http.c:(.text+0x1dfe): undefined reference to
 `evutil_closesocket'
 .libs/http.o:http.c:(.text+0x1e16): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x1e2e): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x1e39): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x1eb4): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x1ecc): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x1ed7): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x1efd): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x1f76): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x2015): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x2090): undefined reference to
 `bufferevent_disable_hard'
 .libs/http.o:http.c:(.text+0x20fe): undefined reference to
 `evutil_closesocket'
 .libs/http.o:http.c:(.text+0x2116): undefined reference to
 `bufferevent_get_output'
 .libs/http.o:http.c:(.text+0x2124): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0x2133): undefined reference to
 `evbuffer_drain'
 .libs/http.o:http.c:(.text+0x2141): undefined reference to
 `bufferevent_get_input'
 .libs/http.o:http.c:(.text+0x214f): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0x215e): undefined reference to
 `evbuffer_drain'
 .libs/http.o:http.c:(.text+0x21bb): undefined reference to
 `bufferevent_enable'
 .libs/http.o:http.c:(.text+0x220b): undefined reference to
 `bufferevent_disable'
 .libs/http.o:http.c:(.text+0x22e9): undefined reference to `event_assign'
 .libs/http.o:http.c:(.text+0x2549): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x2593): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x26ef): undefined reference to
 `bufferevent_setcb'
 .libs/http.o:http.c:(.text+0x2718): undefined reference to
 `bufferevent_settimeout'
 .libs/http.o:http.c:(.text+0x2746): undefined reference to
 `bufferevent_set_timeouts'
 .libs/http.o:http.c:(.text+0x28f8): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x291e): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x2b26): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x2baf): undefined reference to
 `evutil_ascii_strcasecmp'
 .libs/http.o:http.c:(.text+0x2bc6): undefined reference to
 `evutil_ascii_strcasecmp'
 .libs/http.o:http.c:(.text+0x2c5a): undefined reference to
 `evutil_ascii_strcasecmp'
 .libs/http.o:http.c:(.text+0x2ceb): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x2cf9): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x2d04): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x2d60): undefined reference to
 `evutil_ascii_strcasecmp'
 .libs/http.o:http.c:(.text+0x2dc2): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x2dd0): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x2ddb): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x2f42): undefined reference to
 `event_mm_calloc_'
 .libs/http.o:http.c:(.text+0x2f5f): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x2f74): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x2f91): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x2fa5): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x2fb7): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x2fd7): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x2fe2): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x2ff6): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x307a): undefined reference to
 `evbuffer_readln'
 .libs/http.o:http.c:(.text+0x3098): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0x30e0): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x3159): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x31e1): undefined reference to
 `event_mm_realloc_'
 .libs/http.o:http.c:(.text+0x32c1): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x3300): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x336d): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x3387): undefined reference to
 `evbuffer_readln'
 .libs/http.o:http.c:(.text+0x33b5): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0x33e3): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x3482): undefined reference to
 `evutil_ascii_strcasecmp'
 .libs/http.o:http.c:(.text+0x34a1): undefined reference to `event_warnx'
 .libs/http.o:http.c:(.text+0x34db): undefined reference to
 `evutil_strtoll'
 .libs/http.o:http.c:(.text+0x363b): undefined reference to
 `evutil_ascii_strcasecmp'
 .libs/http.o:http.c:(.text+0x3724): undefined reference to
 `evutil_ascii_strcasecmp'
 .libs/http.o:http.c:(.text+0x37a2): undefined reference to
 `bufferevent_get_input'
 .libs/http.o:http.c:(.text+0x37aa): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0x3831): undefined reference to
 `bufferevent_get_input'
 .libs/http.o:http.c:(.text+0x38d1): undefined reference to
 `bufferevent_get_input'
 .libs/http.o:http.c:(.text+0x3927): undefined reference to
 `bufferevent_disable'
 .libs/http.o:http.c:(.text+0x39b4): undefined reference to `event_warnx'
 .libs/http.o:http.c:(.text+0x3a73): undefined reference to
 `event_mm_calloc_'
 .libs/http.o:http.c:(.text+0x3a90): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x3af9): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x3b1f): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x3b4f): undefined reference to
 `bufferevent_new'
 .libs/http.o:http.c:(.text+0x3b75): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x3bcd): undefined reference to
 `bufferevent_base_set'
 .libs/http.o:http.c:(.text+0x3bed): undefined reference to
 `event_deferred_cb_init'
 .libs/http.o:http.c:(.text+0x3cb9): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x3d02): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x3d23): undefined reference to
 `bufferevent_base_set'
 .libs/http.o:http.c:(.text+0x3d84): undefined reference to
 `bufferevent_settimeout'
 .libs/http.o:http.c:(.text+0x3da8): undefined reference to
 `bufferevent_settimeout'
 .libs/http.o:http.c:(.text+0x3f1f): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x3f89): undefined reference to
 `bufferevent_setfd'
 .libs/http.o:http.c:(.text+0x3fb6): undefined reference to
 `bufferevent_setcb'
 .libs/http.o:http.c:(.text+0x3fe8): undefined reference to
 `bufferevent_settimeout'
 .libs/http.o:http.c:(.text+0x3ffe): undefined reference to
 `bufferevent_enable'
 .libs/http.o:http.c:(.text+0x4046): undefined reference to
 `bufferevent_socket_connect_hostname'
 .libs/http.o:http.c:(.text+0x407e): undefined reference to
 `event_sock_warn'
 .libs/http.o:http.c:(.text+0x40fe): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x4109): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x412f): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x41ae): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x4200): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x4386): undefined reference to
 `bufferevent_disable'
 .libs/http.o:http.c:(.text+0x439c): undefined reference to
 `bufferevent_enable'
 .libs/http.o:http.c:(.text+0x43d6): undefined reference to
 `bufferevent_setcb'
 .libs/http.o:http.c:(.text+0x43e4): undefined reference to
 `bufferevent_get_input'
 .libs/http.o:http.c:(.text+0x43ec): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0x440a): undefined reference to
 `event_base_get_deferred_cb_queue'
 .libs/http.o:http.c:(.text+0x4416): undefined reference to
 `event_deferred_cb_schedule'
 .libs/http.o:http.c:(.text+0x454d): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x45bf): undefined reference to `evbuffer_new'
 .libs/http.o:http.c:(.text+0x462d): undefined reference to
 `evbuffer_add_printf'
 .libs/http.o:http.c:(.text+0x464a): undefined reference to `evbuffer_free'
 .libs/http.o:http.c:(.text+0x46e1): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x4709): undefined reference to
 `evbuffer_add_buffer'
 .libs/http.o:http.c:(.text+0x48f0): undefined reference to
 `bufferevent_get_output'
 .libs/http.o:http.c:(.text+0x48fe): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0x4932): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0x4949): undefined reference to
 `evbuffer_add_printf'
 .libs/http.o:http.c:(.text+0x495b): undefined reference to
 `evbuffer_add_buffer'
 .libs/http.o:http.c:(.text+0x4984): undefined reference to `evbuffer_add'
 .libs/http.o:http.c:(.text+0x49fd): undefined reference to
 `bufferevent_get_output'
 .libs/http.o:http.c:(.text+0x4a36): undefined reference to `evbuffer_add'
 .libs/http.o:http.c:(.text+0x4a6e): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0x4bc5): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x4be4): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x4c0a): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x4d19): undefined reference to `evbuffer_new'
 .libs/http.o:http.c:(.text+0x4d8d): undefined reference to `evbuffer_add'
 .libs/http.o:http.c:(.text+0x4dba): undefined reference to `evbuffer_add'
 .libs/http.o:http.c:(.text+0x4ddc): undefined reference to
 `evbuffer_add_printf'
 .libs/http.o:http.c:(.text+0x4e07): undefined reference to `evbuffer_add'
 .libs/http.o:http.c:(.text+0x4e12): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0x4e1a): undefined reference to
 `event_mm_malloc_'
 .libs/http.o:http.c:(.text+0x4e2e): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0x4e44): undefined reference to
 `evbuffer_remove'
 .libs/http.o:http.c:(.text+0x4e4f): undefined reference to `evbuffer_free'
 .libs/http.o:http.c:(.text+0x4f51): undefined reference to
 `EVUTIL_ISXDIGIT'
 .libs/http.o:http.c:(.text+0x4f6e): undefined reference to
 `EVUTIL_ISXDIGIT'
 .libs/http.o:http.c:(.text+0x502c): undefined reference to
 `event_mm_malloc_'
 .libs/http.o:http.c:(.text+0x505b): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x50db): undefined reference to
 `event_mm_malloc_'
 .libs/http.o:http.c:(.text+0x510a): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x518f): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x5254): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x5271): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x52e8): undefined reference to
 `event_mm_malloc_'
 .libs/http.o:http.c:(.text+0x5305): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x5356): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x5391): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x5497): undefined reference to
 `event_mm_malloc_'
 .libs/http.o:http.c:(.text+0x54f6): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x5514): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x55d2): undefined reference to
 `EVUTIL_TOLOWER'
 .libs/http.o:http.c:(.text+0x55e5): undefined reference to
 `EVUTIL_TOLOWER'
 .libs/http.o:http.c:(.text+0x5651): undefined reference to
 `evutil_ascii_strcasecmp'
 .libs/http.o:http.c:(.text+0x58f1): undefined reference to `evbuffer_new'
 .libs/http.o:http.c:(.text+0x5905): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x594a): undefined reference to
 `evbuffer_add_printf'
 .libs/http.o:http.c:(.text+0x5955): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x5972): undefined reference to `evbuffer_free'
 .libs/http.o:http.c:(.text+0x5ad5): undefined reference to
 `event_sock_warn'
 .libs/http.o:http.c:(.text+0x5ae0): undefined reference to
 `evutil_closesocket'
 .libs/http.o:http.c:(.text+0x5bca): undefined reference to
 `evconnlistener_new'
 .libs/http.o:http.c:(.text+0x5c00): undefined reference to
 `evconnlistener_free'
 .libs/http.o:http.c:(.text+0x5c44): undefined reference to
 `event_mm_malloc_'
 .libs/http.o:http.c:(.text+0x5ca0): undefined reference to
 `evconnlistener_set_cb'
 .libs/http.o:http.c:(.text+0x5cd9): undefined reference to
 `evconnlistener_get_fd'
 .libs/http.o:http.c:(.text+0x5d75): undefined reference to
 `evconnlistener_free'
 .libs/http.o:http.c:(.text+0x5d80): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x5dbe): undefined reference to
 `event_mm_calloc_'
 .libs/http.o:http.c:(.text+0x5ddb): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x5f5e): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x5fd2): undefined reference to
 `evconnlistener_free'
 .libs/http.o:http.c:(.text+0x5fdd): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x604a): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x6055): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x60ca): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x610c): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x6117): more undefined references to
 `event_mm_free_' follow
 .libs/http.o:http.c:(.text+0x618c): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x6252): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x62a3): undefined reference to
 `event_mm_calloc_'
 .libs/http.o:http.c:(.text+0x62be): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x62db): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x635e): undefined reference to
 `evutil_ascii_strcasecmp'
 .libs/http.o:http.c:(.text+0x63a2): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x63ad): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x6563): undefined reference to
 `event_mm_calloc_'
 .libs/http.o:http.c:(.text+0x6580): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x6595): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x65bb): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x65c6): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x66bd): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x66c8): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x675d): undefined reference to
 `event_mm_calloc_'
 .libs/http.o:http.c:(.text+0x677a): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x67b1): undefined reference to
 `event_mm_calloc_'
 .libs/http.o:http.c:(.text+0x67d7): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x680b): undefined reference to
 `event_mm_calloc_'
 .libs/http.o:http.c:(.text+0x6831): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x6856): undefined reference to `evbuffer_new'
 .libs/http.o:http.c:(.text+0x687c): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x6883): undefined reference to `evbuffer_new'
 .libs/http.o:http.c:(.text+0x68a9): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x693b): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x6953): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x6983): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x699b): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x69b7): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x69d3): more undefined references to
 `event_mm_free_' follow
 .libs/http.o:http.c:(.text+0x69eb): undefined reference to `evbuffer_free'
 .libs/http.o:http.c:(.text+0x6a03): undefined reference to `evbuffer_free'
 .libs/http.o:http.c:(.text+0x6a0e): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x6c43): undefined reference to
 `EVUTIL_ISDIGIT'
 .libs/http.o:http.c:(.text+0x6c78): undefined reference to
 `event_mm_malloc_'
 .libs/http.o:http.c:(.text+0x6c9e): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x6e77): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x6e89): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x6ed0): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x6edb): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x6f42): undefined reference to
 `bufferevent_setfd'
 .libs/http.o:http.c:(.text+0x6fad): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x6fd3): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x70f3): undefined reference to
 `event_sock_warn'
 .libs/http.o:http.c:(.text+0x70fe): undefined reference to
 `evutil_closesocket'
 .libs/http.o:http.c:(.text+0x721a): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x7232): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x72c1): undefined reference to
 `event_sock_warn'
 .libs/http.o:http.c:(.text+0x72d6): undefined reference to
 `evutil_make_socket_nonblocking'
 .libs/http.o:http.c:(.text+0x72e9): undefined reference to
 `evutil_make_socket_closeonexec'
 .libs/http.o:http.c:(.text+0x7335): undefined reference to
 `evutil_make_listen_socket_reuseable'
 .libs/http.o:http.c:(.text+0x7395): undefined reference to
 `evutil_closesocket'
 .libs/http.o:http.c:(.text+0x7433): undefined reference to
 `evutil_snprintf'
 .libs/http.o:http.c:(.text+0x7453): undefined reference to
 `evutil_getaddrinfo'
 .libs/http.o:http.c:(.text+0x7471): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x747e): undefined reference to
 `evutil_gai_strerror'
 .libs/http.o:http.c:(.text+0x748e): undefined reference to `event_warnx'
 .libs/http.o:http.c:(.text+0x753a): undefined reference to
 `evutil_freeaddrinfo'
 .libs/http.o:http.c:(.text+0x7573): undefined reference to
 `event_mm_calloc_'
 .libs/http.o:http.c:(.text+0x7632): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x7652): undefined reference to
 `EVUTIL_ISALPHA'
 .libs/http.o:http.c:(.text+0x766e): undefined reference to
 `EVUTIL_ISALNUM'
 .libs/http.o:http.c:(.text+0x7745): undefined reference to
 `EVUTIL_ISXDIGIT'
 .libs/http.o:http.c:(.text+0x775d): undefined reference to
 `EVUTIL_ISXDIGIT'
 .libs/http.o:http.c:(.text+0x7804): undefined reference to
 `EVUTIL_ISXDIGIT'
 .libs/http.o:http.c:(.text+0x781c): undefined reference to
 `EVUTIL_ISXDIGIT'
 .libs/http.o:http.c:(.text+0x788c): undefined reference to
 `EVUTIL_ISDIGIT'
 .libs/http.o:http.c:(.text+0x7959): undefined reference to
 `EVUTIL_ISXDIGIT'
 .libs/http.o:http.c:(.text+0x7978): undefined reference to
 `EVUTIL_ISXDIGIT'
 .libs/http.o:http.c:(.text+0x7a6d): undefined reference to
 `evutil_inet_pton'
 .libs/http.o:http.c:(.text+0x7aec): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x7b00): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x7b26): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x7b95): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x7bbb): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x7bf3): undefined reference to
 `EVUTIL_ISDIGIT'
 .libs/http.o:http.c:(.text+0x7c9b): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x7d12): undefined reference to
 `event_mm_malloc_'
 .libs/http.o:http.c:(.text+0x7d38): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x7eff): undefined reference to
 `EVUTIL_ISXDIGIT'
 .libs/http.o:http.c:(.text+0x7f17): undefined reference to
 `EVUTIL_ISXDIGIT'
 .libs/http.o:http.c:(.text+0x805a): undefined reference to
 `event_mm_calloc_'
 .libs/http.o:http.c:(.text+0x8077): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x8099): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x80b6): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x810b): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x8131): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x82d9): undefined reference to `event_errx'
 .libs/http.o:http.c:(.text+0x82e4): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x830a): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x8320): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x8346): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x8359): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x837f): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x838c): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x83c0): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x8405): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x841d): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x8435): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x844d): more undefined references to
 `event_mm_free_' follow
 .libs/http.o:http.c:(.text+0x84f3): undefined reference to `evbuffer_new'
 .libs/http.o:http.c:(.text+0x8539): undefined reference to `evbuffer_add'
 .libs/http.o:http.c:(.text+0x8554): undefined reference to `evbuffer_add'
 .libs/http.o:http.c:(.text+0x857d): undefined reference to `evbuffer_add'
 .libs/http.o:http.c:(.text+0x85a4): undefined reference to
 `evbuffer_add_printf'
 .libs/http.o:http.c:(.text+0x85cd): undefined reference to `evbuffer_add'
 .libs/http.o:http.c:(.text+0x85f4): undefined reference to
 `evbuffer_add_printf'
 .libs/http.o:http.c:(.text+0x864f): undefined reference to `evbuffer_add'
 .libs/http.o:http.c:(.text+0x8674): undefined reference to `evbuffer_add'
 .libs/http.o:http.c:(.text+0x869d): undefined reference to `evbuffer_add'
 .libs/http.o:http.c:(.text+0x86c2): undefined reference to `evbuffer_add'
 .libs/http.o:http.c:(.text+0x86eb): undefined reference to `evbuffer_add'
 .libs/http.o:http.c:(.text+0x8706): more undefined references to
 `evbuffer_add' follow
 .libs/http.o:http.c:(.text+0x8711): undefined reference to
 `evbuffer_get_length'
 .libs/http.o:http.c:(.text+0x8727): undefined reference to `evbuffer_free'
 .libs/http.o:http.c:(.text+0x8747): undefined reference to
 `evbuffer_remove'
 .libs/http.o:http.c:(.text+0x875b): undefined reference to `evbuffer_free'
 .libs/http.o:http.c:(.text+0x8918): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x8929): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x894f): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x89dd): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x89ee): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x8a14): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x8adb): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x8aec): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x8b12): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x8bf9): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x8c0a): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x8c30): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x8cd2): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x8ce3): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x8d09): undefined reference to `event_warn'
 .libs/http.o:http.c:(.text+0x8dab): undefined reference to
 `event_mm_free_'
 .libs/http.o:http.c:(.text+0x8dbc): undefined reference to
 `event_mm_strdup_'
 .libs/http.o:http.c:(.text+0x8de2): undefined reference to `event_warn'
 /var/tmp/dist/mingw-w64/lib/gcc/i686-w64-mingw32/5.4.0/../../../../i686-w64-mingw32/bin/ld:
 .libs/http.o: bad reloc address 0x0 in section `.data'
 collect2: error: ld returned 1 exit status
 make[2]: *** [libevent_extra.la] Error 1
 make[2]: *** Waiting for unfinished jobs....
 /var/tmp/dist/mingw-w64/lib/gcc/i686-w64-mingw32/5.4.0/../../../../i686-w64-mingw32/bin/ld:
 warning: cannot find entry symbol _mainCRTStartup; defaulting to 00401000
 libtool: link: ( cd ".libs" && rm -f "libevent.la" && ln -s
 "../libevent.la" "libevent.la" )
 make[2]: Leaving directory `/var/tmp/build/libevent-2.0.22'
 make[1]: *** [all-recursive] Error 1
 make[1]: Leaving directory `/var/tmp/build/libevent-2.0.22'
 }}}

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/23458#comment:1>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tbb-bugs mailing list