Link error when building on osx

All ESP8266 boards running MicroPython.
Official boards are the Adafruit Huzzah and Feather boards.
Target audience: MicroPython users with an ESP8266 board.
Post Reply
MaartenB
Posts: 4
Joined: Thu Mar 24, 2016 8:42 pm

Link error when building on osx

Post by MaartenB » Thu Mar 24, 2016 9:11 pm

Since I don't know if this is a micropython or esp-open-sdk issue, I though I'd post it here.
(sorry, but bbcode is off for me)

I did the following, on OSX, 10.10, I made a (case sensitive) dmg image (of 4GB),:
[code]
git clone https://github.com/pfalcon/esp-open-sdk
cd esp-open-sdk/
make
[/code]
Had lots of missing gnu libraries, so installed those using:

[code]
$ sudo port install binutils coreutils automake wget gawk libtool gperf gsed
$ sudo ln -s /opt/local/bin/gsed /opt/local/bin/sed
$ make
[/code]
Some compile error, which after googleing, I managed to get working doing:
[code]
gsed -i '1s/^/#include <stddef.h>\n/' crosstool-NG/.build/src/gcc-4.8.2/gcc/graphite.c
gsed -i '1s/^/#include <stddef.h>\n/' crosstool-NG/.build/src/gcc-4.8.2/gcc/graphite-blocking.c
gsed -i '1s/^/#include <stddef.h>\n/' crosstool-NG/.build/src/gcc-4.8.2/gcc/graphite-clast-to-gimple.c
gsed -i '1s/^/#include <stddef.h>\n/' crosstool-NG/.build/src/gcc-4.8.2/gcc/graphite-dependences.c
gsed -i '1s/^/#include <stddef.h>\n/' crosstool-NG/.build/src/gcc-4.8.2/gcc/graphite-interchange.c
gsed -i '1s/^/#include <stddef.h>\n/' crosstool-NG/.build/src/gcc-4.8.2/gcc/graphite-optimize-isl.c
gsed -i '1s/^/#include <stddef.h>\n/' crosstool-NG/.build/src/gcc-4.8.2/gcc/graphite-poly.c
gsed -i '1s/^/#include <stddef.h>\n/' crosstool-NG/.build/src/gcc-4.8.2/gcc/graphite-scop-detection.c
gsed -i '1s/^/#include <stddef.h>\n/' crosstool-NG/.build/src/gcc-4.8.2/gcc/graphite-sese-to-poly.c
[/code]

Runnig make worked, now tried to get micropython compiling
[code]
$ export PATH=/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/bin:$PATH
$ git clone --recurse-submodules https://github.com/micropython/micropython
$ cd micropython/esp8266/
$ make
[/code]

In the end I end up with the following linker error:
[code]
air2@/Volumes/esp8266/micropython/esp8266$ make V=1
python ../py/makeversionhdr.py build/genhdr/mpversion.h
LINK build/firmware.elf
xtensa-lx106-elf-ld -nostdlib -T esp8266.ld -Map=build/firmware.map --cref --gc-sections -o build/firmware.elf build/py/mpstate.o build/py/nlrx86.o build/py/nlrx64.o build/py/nlrthumb.o build/py/nlrxtensa.o build/py/nlrsetjmp.o build/py/malloc.o build/py/gc.o build/py/qstr.o build/py/vstr.o build/py/mpprint.o build/py/unicode.o build/py/mpz.o build/py/lexer.o build/py/lexerstr.o build/py/lexerunix.o build/py/parse.o build/py/scope.o build/py/compile.o build/py/emitcommon.o build/py/emitbc.o build/py/asmx64.o build/py/emitnx64.o build/py/asmx86.o build/py/emitnx86.o build/py/asmthumb.o build/py/emitnthumb.o build/py/emitinlinethumb.o build/py/asmarm.o build/py/emitnarm.o build/py/formatfloat.o build/py/parsenumbase.o build/py/parsenum.o build/py/emitglue.o build/py/runtime.o build/py/nativeglue.o build/py/stackctrl.o build/py/argcheck.o build/py/warning.o build/py/map.o build/py/obj.o build/py/objarray.o build/py/objattrtuple.o build/py/objbool.o build/py/objboundmeth.o build/py/objcell.o build/py/objclosure.o build/py/objcomplex.o build/py/objdict.o build/py/objenumerate.o build/py/objexcept.o build/py/objfilter.o build/py/objfloat.o build/py/objfun.o build/py/objgenerator.o build/py/objgetitemiter.o build/py/objint.o build/py/objint_longlong.o build/py/objint_mpz.o build/py/objlist.o build/py/objmap.o build/py/objmodule.o build/py/objobject.o build/py/objpolyiter.o build/py/objproperty.o build/py/objnone.o build/py/objnamedtuple.o build/py/objrange.o build/py/objreversed.o build/py/objset.o build/py/objsingleton.o build/py/objslice.o build/py/objstr.o build/py/objstrunicode.o build/py/objstringio.o build/py/objtuple.o build/py/objtype.o build/py/objzip.o build/py/opmethods.o build/py/sequence.o build/py/stream.o build/py/binary.o build/py/builtinimport.o build/py/builtinevex.o build/py/modarray.o build/py/modbuiltins.o build/py/modcollections.o build/py/modgc.o build/py/modio.o build/py/modmath.o build/py/modcmath.o build/py/modmicropython.o build/py/modstruct.o build/py/modsys.o build/py/vm.o build/py/bc.o build/py/showbc.o build/py/repl.o build/py/smallint.o build/py/frozenmod.o build/py/../extmod/moductypes.o build/py/../extmod/modujson.o build/py/../extmod/modure.o build/py/../extmod/moduzlib.o build/py/../extmod/moduheapq.o build/py/../extmod/moduhashlib.o build/py/../extmod/modubinascii.o build/py/../extmod/machine_mem.o build/py/../extmod/modussl.o build/py/../extmod/modurandom.o build/py/../extmod/fsusermount.o build/py/../extmod/vfs_fat.o build/py/../extmod/vfs_fat_ffconf.o build/py/../extmod/vfs_fat_diskio.o build/py/../extmod/vfs_fat_file.o build/py/../extmod/vfs_fat_lexer.o build/py/../extmod/vfs_fat_misc.o build/py/../extmod/moduos_dupterm.o build/strtoll.o build/main.o build/esp_mphal.o build/gccollect.o build/lexerstr32.o build/uart.o build/modpyb.o build/modpybpin.o build/modpybrtc.o build/modpybadc.o build/modpybi2c.o build/modesp.o build/modnetwork.o build/modutime.o build/moduos.o build/modmachine.o build/utils.o build/ets_alt_task.o build/build/frozen.o build/gchelper.o build/stmhal/pybstdio.o build/extmod/modlwip.o build/lib/libc/string0.o build/lib/libm/math.o build/lib/libm/fmodf.o build/lib/libm/roundf.o build/lib/libm/ef_sqrt.o build/lib/libm/kf_rem_pio2.o build/lib/libm/kf_sin.o build/lib/libm/kf_cos.o build/lib/libm/kf_tan.o build/lib/libm/ef_rem_pio2.o build/lib/libm/sf_sin.o build/lib/libm/sf_cos.o build/lib/libm/sf_tan.o build/lib/libm/sf_frexp.o build/lib/libm/sf_modf.o build/lib/libm/sf_ldexp.o build/lib/libm/asinfacosf.o build/lib/libm/atanf.o build/lib/libm/atan2f.o build/lib/mp-readline/readline.o build/lib/netutils/netutils.o build/lib/timeutils/timeutils.o build/lib/utils/pyexec.o build/lib/utils/printf.o -L/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib -lmain -ljson -lssl -llwip_open -lpp -lnet80211 -lwpa -lphy -lnet80211 -L/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/lib/gcc/xtensa-lx106-elf/4.8.2/ -lgcc
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(user_interface.o): In function `system_print_meminfo':
(.irom0.text+0xfb0): undefined reference to `dhcps_start'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(user_interface.o): In function `system_get_free_heap_size':
(.irom0.text+0xfe4): undefined reference to `dhcps_start'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(user_interface.o): In function `system_get_chip_id':
(.irom0.text+0x1000): undefined reference to `dhcps_stop'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(user_interface.o): In function `system_get_rtc_time':
(.irom0.text+0x102c): undefined reference to `dhcps_stop'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(user_interface.o): In function `system_get_rtc_time':
(.irom0.text+0x1050): undefined reference to `dhcp_start'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(user_interface.o): In function `system_mktime':
(.irom0.text+0x1098): undefined reference to `dhcp_start'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(user_interface.o): In function `system_mktime':
(.irom0.text+0x10ac): undefined reference to `dhcp_stop'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(user_interface.o): In function `system_mktime':
(.irom0.text+0x10d8): undefined reference to `dhcp_stop'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(user_interface.o): In function `system_mktime':
(.irom0.text+0x10f4): undefined reference to `dhcp_cleanup'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(user_interface.o): In function `system_mktime':
(.irom0.text+0x1118): undefined reference to `dhcp_stop'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(user_interface.o): In function `system_mktime':
(.irom0.text+0x1120): undefined reference to `dhcp_cleanup'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(user_interface.o): In function `wifi_softap_dhcps_start':
(.irom0.text+0x122c): undefined reference to `netif_set_default'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(user_interface.o): In function `wifi_softap_dhcps_stop':
(.irom0.text+0x1285): undefined reference to `netif_set_default'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(user_interface.o): In function `wifi_softap_dhcps_stop':
(.irom0.text+0x1298): undefined reference to `netif_default'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(user_interface.o): In function `wifi_station_dhcpc_start':
(.irom0.text+0x131a): undefined reference to `netif_set_default'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(user_interface.o): In function `wifi_station_dhcpc_stop':
(.irom0.text+0x134d): undefined reference to `netif_set_default'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(user_interface.o): In function `wifi_softap_set_default_ssid':
(.irom0.text+0x29d0): undefined reference to `ethbroadcast'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(user_interface.o): In function `wifi_softap_get_config_default':
(.irom0.text+0x2d45): undefined reference to `netif_set_default'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(user_interface.o): In function `wifi_softap_get_station_info':
(.irom0.text+0x2fc4): undefined reference to `netif_set_addr'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(user_interface.o): In function `wifi_softap_get_station_info':
(.irom0.text+0x3018): undefined reference to `netif_set_addr'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(app_main.o): In function `user_uart_wait_tx_fifo_empty':
(.irom0.text+0x50c): undefined reference to `sys_check_timeouts'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(app_main.o): In function `user_uart_wait_tx_fifo_empty':
(.irom0.text+0x540): undefined reference to `lwip_init'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(app_main.o): In function `user_uart_wait_tx_fifo_empty':
(.irom0.text+0x544): undefined reference to `espconn_init'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(app_main.o): In function `user_uart_wait_tx_fifo_empty':
(.irom0.text+0x5ce): undefined reference to `lwip_init'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(app_main.o): In function `user_uart_wait_tx_fifo_empty':
(.irom0.text+0x5d4): undefined reference to `espconn_init'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(app_main.o): In function `user_rf_pre_init':
(.irom0.text+0x84e): undefined reference to `netif_set_default'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(eagle_lwip_if.o):(.irom0.text+0x0): undefined reference to `pbuf_free'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(eagle_lwip_if.o):(.irom0.text+0x2f): undefined reference to `pbuf_free'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(eagle_lwip_if.o):(.irom0.text+0x6b): undefined reference to `pbuf_free'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(eagle_lwip_if.o):(.irom0.text+0x98): undefined reference to `etharp_output'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(eagle_lwip_if.o):(.irom0.text+0xa8): undefined reference to `ethernet_input'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(eagle_lwip_if.o):(.irom0.text+0xc4): undefined reference to `netif_add'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(eagle_lwip_if.o): In function `eagle_lwip_if_alloc':
(.irom0.text+0x175): undefined reference to `netif_set_addr'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(eagle_lwip_if.o): In function `eagle_lwip_if_alloc':
(.irom0.text+0x1b2): undefined reference to `netif_add'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(eagle_lwip_if.o): In function `eagle_lwip_if_alloc':
(.irom0.text+0x1c3): undefined reference to `dhcps_start'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(eagle_lwip_if.o): In function `eagle_lwip_if_alloc':
(.irom0.text+0x276): undefined reference to `netif_add'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(eagle_lwip_if.o): In function `eagle_lwip_if_alloc':
(.irom0.text+0x280): undefined reference to `netif_remove'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(eagle_lwip_if.o): In function `eagle_lwip_if_alloc':
(.irom0.text+0x294): undefined reference to `netif_remove'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(eagle_lwip_if.o): In function `eagle_lwip_if_alloc':
(.irom0.text+0x2b6): undefined reference to `dhcps_stop'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libmain.a(eagle_lwip_if.o): In function `eagle_lwip_if_alloc':
(.irom0.text+0x2be): undefined reference to `netif_remove'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libpp.a(pp.o): In function `ppRecycleRxPkt':
(.irom0.text+0xaba): undefined reference to `pbuf_free'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libnet80211.a(ieee80211_hostap.o):(.irom0.text+0x6e0): undefined reference to `pbuf_alloc'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libnet80211.a(ieee80211_hostap.o):(.irom0.text+0x6f6): undefined reference to `pbuf_alloc'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libnet80211.a(ieee80211_hostap.o): In function `hostap_input':
(.irom0.text+0xbb1): undefined reference to `pbuf_alloc'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libnet80211.a(ieee80211_hostap.o): In function `hostap_input':
(.irom0.text+0xbe7): undefined reference to `pbuf_free'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libnet80211.a(ieee80211_hostap.o): In function `hostap_input':
(.irom0.text+0x1714): undefined reference to `netif_set_up'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libnet80211.a(ieee80211_hostap.o): In function `hostap_input':
(.irom0.text+0x1815): undefined reference to `netif_set_up'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libnet80211.a(ieee80211_hostap.o): In function `hostap_input':
(.irom0.text+0x181d): undefined reference to `netif_set_default'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libnet80211.a(ieee80211_hostap.o): In function `hostap_input':
(.irom0.text+0x1888): undefined reference to `netif_set_down'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libnet80211.a(ieee80211_hostap.o): In function `hostap_input':
(.irom0.text+0x1911): undefined reference to `netif_set_down'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libnet80211.a(ieee80211_input.o): In function `ieee80211_deliver_data':
(.irom0.text+0x23): undefined reference to `pbuf_alloc'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libnet80211.a(ieee80211_output.o):(.irom0.text+0x4): undefined reference to `pbuf_ref'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libnet80211.a(ieee80211_output.o): In function `ieee80211_output_pbuf':
(.irom0.text+0x210): undefined reference to `pbuf_ref'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libnet80211.a(ieee80211_power.o): In function `ieee80211_pwrsave':
(.irom0.text+0x89): undefined reference to `pbuf_free'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libnet80211.a(ieee80211_power.o): In function `pwrsave_flushq':
(.irom0.text+0x11b): undefined reference to `pbuf_free'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libnet80211.a(ieee80211_power.o): In function `pwrsave_flushq':
(.irom0.text+0x145): undefined reference to `pbuf_free'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libnet80211.a(wl_cnx.o): In function `cnx_rc_update_rssi':
(.irom0.text+0xeec): undefined reference to `dhcp_release'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libnet80211.a(wl_cnx.o): In function `cnx_rc_update_state_metric':
(.irom0.text+0xf28): undefined reference to `netif_set_down'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libnet80211.a(wl_cnx.o): In function `cnx_rc_update_state_metric':
(.irom0.text+0xf36): undefined reference to `dhcp_release'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libnet80211.a(wl_cnx.o): In function `cnx_rc_update_state_metric':
(.irom0.text+0xf3e): undefined reference to `dhcp_stop'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libnet80211.a(wl_cnx.o): In function `cnx_rc_update_state_metric':
(.irom0.text+0xf46): undefined reference to `dhcp_cleanup'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libwpa.a(wpa_auth.o): In function `__wpa_send_eapol':
(.irom0.text+0xca6): undefined reference to `pbuf_alloc'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libwpa.a(wpa_main.o): In function `eagle_auth_done':
(.irom0.text+0x36b): undefined reference to `dhcp_start'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libwpa.a(wpa_main.o): In function `eagle_auth_done':
(.irom0.text+0x397): undefined reference to `netif_set_addr'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libwpa.a(wpa_main.o): In function `eagle_auth_done':
(.irom0.text+0x39f): undefined reference to `netif_set_up'
/Volumes/esp8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libwpa.a(wpas_glue.o): In function `wpa_sm_alloc_eapol':
(.irom0.text+0x88): undefined reference to `pbuf_alloc'
build/extmod/modlwip.o:(.text.mod_lwip_reset+0x4): undefined reference to `lwip_init'
build/extmod/modlwip.o: In function `mod_lwip_reset':
modlwip.c:(.text.mod_lwip_reset+0xe): undefined reference to `lwip_init'
build/extmod/modlwip.o:(.text.mod_lwip_callback+0x0): undefined reference to `sys_check_timeouts'
build/extmod/modlwip.o: In function `mod_lwip_callback':
modlwip.c:(.text.mod_lwip_callback+0x15): undefined reference to `sys_check_timeouts'
build/extmod/modlwip.o:(.text.lwip_tcp_receive+0xc): undefined reference to `pbuf_copy_partial'
build/extmod/modlwip.o:(.text.lwip_tcp_receive+0x10): undefined reference to `pbuf_free'
build/extmod/modlwip.o:(.text.lwip_tcp_receive+0x14): undefined reference to `tcp_recved'
build/extmod/modlwip.o: In function `lwip_tcp_receive':
modlwip.c:(.text.lwip_tcp_receive+0xbb): undefined reference to `pbuf_copy_partial'
modlwip.c:(.text.lwip_tcp_receive+0xd4): undefined reference to `pbuf_free'
modlwip.c:(.text.lwip_tcp_receive+0xeb): undefined reference to `tcp_recved'
build/extmod/modlwip.o: In function `lwip_udp_receive':
modlwip.c:(.text.lwip_udp_receive+0xb2): undefined reference to `pbuf_copy_partial'
modlwip.c:(.text.lwip_udp_receive+0xbc): undefined reference to `pbuf_free'
build/extmod/modlwip.o: In function `_lwip_udp_incoming':
modlwip.c:(.text._lwip_udp_incoming+0x12): undefined reference to `pbuf_free'
build/extmod/modlwip.o:(.text.lwip_tcp_send+0x0): undefined reference to `tcp_write'
build/extmod/modlwip.o: In function `lwip_tcp_send':
modlwip.c:(.text.lwip_tcp_send+0x2a): undefined reference to `tcp_write'
build/extmod/modlwip.o:(.text.lwip_udp_send+0x4): undefined reference to `udp_send'
build/extmod/modlwip.o:(.text.lwip_udp_send+0x8): undefined reference to `udp_sendto'
build/extmod/modlwip.o: In function `lwip_udp_send':
modlwip.c:(.text.lwip_udp_send+0x36): undefined reference to `pbuf_alloc'
modlwip.c:(.text.lwip_udp_send+0x62): undefined reference to `udp_send'
modlwip.c:(.text.lwip_udp_send+0x9b): undefined reference to `udp_sendto'
modlwip.c:(.text.lwip_udp_send+0xa6): undefined reference to `pbuf_free'
build/extmod/modlwip.o:(.text.lwip_socket_connect+0x8): undefined reference to `tcp_recv'
build/extmod/modlwip.o:(.text.lwip_socket_connect+0xc): undefined reference to `tcp_connect'
build/extmod/modlwip.o:(.text.lwip_socket_connect+0x10): undefined reference to `udp_connect'
build/extmod/modlwip.o: In function `lwip_socket_connect':
modlwip.c:(.text.lwip_socket_connect+0x9b): undefined reference to `tcp_recv'
modlwip.c:(.text.lwip_socket_connect+0xb2): undefined reference to `tcp_connect'
modlwip.c:(.text.lwip_socket_connect+0x156): undefined reference to `udp_connect'
build/extmod/modlwip.o:(.text.lwip_socket_accept+0x8): undefined reference to `tcp_arg'
build/extmod/modlwip.o:(.text.lwip_socket_accept+0xc): undefined reference to `tcp_err'
build/extmod/modlwip.o: In function `lwip_socket_accept':
modlwip.c:(.text.lwip_socket_accept+0xec): undefined reference to `tcp_arg'
modlwip.c:(.text.lwip_socket_accept+0xfa): undefined reference to `tcp_err'
modlwip.c:(.text.lwip_socket_accept+0x108): undefined reference to `tcp_recv'
build/extmod/modlwip.o:(.text.lwip_socket_bind+0x0): undefined reference to `tcp_bind'
build/extmod/modlwip.o:(.text.lwip_socket_bind+0x4): undefined reference to `udp_bind'
build/extmod/modlwip.o: In function `lwip_socket_bind':
modlwip.c:(.text.lwip_socket_bind+0x53): undefined reference to `tcp_bind'
modlwip.c:(.text.lwip_socket_bind+0x63): undefined reference to `udp_bind'
build/extmod/modlwip.o:(.text.lwip_socket_close+0x0): undefined reference to `tcp_close'
build/extmod/modlwip.o:(.text.lwip_socket_close+0x4): undefined reference to `tcp_abort'
build/extmod/modlwip.o:(.text.lwip_socket_close+0x8): undefined reference to `udp_remove'
build/extmod/modlwip.o: In function `lwip_socket_close':
modlwip.c:(.text.lwip_socket_close+0x42): undefined reference to `tcp_close'
modlwip.c:(.text.lwip_socket_close+0x52): undefined reference to `tcp_abort'
modlwip.c:(.text.lwip_socket_close+0x62): undefined reference to `udp_remove'
modlwip.c:(.text.lwip_socket_close+0x82): undefined reference to `pbuf_free'
modlwip.c:(.text.lwip_socket_close+0x8c): undefined reference to `tcp_abort'
build/extmod/modlwip.o:(.text.lwip_socket_make_new+0x4): undefined reference to `tcp_new'
build/extmod/modlwip.o:(.text.lwip_socket_make_new+0x8): undefined reference to `udp_new'
build/extmod/modlwip.o:(.text.lwip_socket_make_new+0xc): undefined reference to `udp_recv'
build/extmod/modlwip.o: In function `lwip_socket_make_new':
modlwip.c:(.text.lwip_socket_make_new+0x65): undefined reference to `tcp_new'
modlwip.c:(.text.lwip_socket_make_new+0x70): undefined reference to `udp_new'
modlwip.c:(.text.lwip_socket_make_new+0xaf): undefined reference to `tcp_arg'
modlwip.c:(.text.lwip_socket_make_new+0xbe): undefined reference to `tcp_err'
modlwip.c:(.text.lwip_socket_make_new+0xd2): undefined reference to `udp_recv'
build/extmod/modlwip.o:(.text.lwip_getaddrinfo+0x4): undefined reference to `dns_gethostbyname'
build/extmod/modlwip.o: In function `lwip_getaddrinfo':
modlwip.c:(.text.lwip_getaddrinfo+0x36): undefined reference to `dns_gethostbyname'
build/extmod/modlwip.o:(.text.lwip_socket_listen+0x4): undefined reference to `tcp_listen_with_backlog'
build/extmod/modlwip.o:(.text.lwip_socket_listen+0x8): undefined reference to `tcp_accept'
build/extmod/modlwip.o: In function `lwip_socket_listen':
modlwip.c:(.text.lwip_socket_listen+0x4d): undefined reference to `tcp_listen_with_backlog'
modlwip.c:(.text.lwip_socket_listen+0x68): undefined reference to `tcp_accept'
make: *** [build/firmware.elf] Error 1
[/code]

I can build in the linux VM using vagrant, but i'd like to get it working under osx.

User avatar
Ivoah
Posts: 5
Joined: Wed Mar 02, 2016 10:43 pm

Re: Link error when building on osx

Post by Ivoah » Wed Mar 30, 2016 12:58 am

I have this same issue, using the latest esp-open-sdk and micropython.

Post Reply