This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

how to compile the file mDNSResponder/mDNSResponder-107.6.tar.gz use TI SDK 6.0

Hello,

Someone had successfully compiled the following files?
I use the TI SDK6.0 toolchain to compile it, but always failed

http://opensource.apple.com/tarballs/mDNSResponder/mDNSResponder-107.6.tar.gz

it always gets error in link stage

How can I modify the make file??

===================================================


[linux-devkit]:/media/sf_Share/mDNSResponder-107.6/mDNSPosix> make os=linux
Responder daemon done
Client library done
make[1]: Entering directory `/media/sf_Share/mDNSResponder-107.6/Clients'
arm-linux-gnueabihf-gcc -nostdlib dns-sd.c -L../mDNSPosix/build/prod/ -ldns_sd -L /sitara/ti-sdk-am335x-evm/linux-devkit/sysroots/i686-arago-linux/usr/lib -I../mDNSShared -o build/dns-sd
/sitara/ti-sdk-am335x-evm/linux-devkit/sysroots/i686-arago-linux/usr/bin/../lib/gcc/arm-linux-gnueabihf/4.7.3/../../../../arm-linux-gnueabihf/bin/ld: warning: cannot find entry symbol _start; defaulting to 00008ab4
/tmp/ccAOqDmA.o: In function `GetRRType':
dns-sd.c:(.text+0x12): undefined reference to `strcasecmp'
dns-sd.c:(.text+0x2a): undefined reference to `strcasecmp'
dns-sd.c:(.text+0x42): undefined reference to `strcasecmp'
dns-sd.c:(.text+0x5a): undefined reference to `strcasecmp'
dns-sd.c:(.text+0x72): undefined reference to `strcasecmp'
/tmp/ccAOqDmA.o:dns-sd.c:(.text+0x8a): more undefined references to `strcasecmp' follow
/tmp/ccAOqDmA.o: In function `GetRRType':
dns-sd.c:(.text+0x48a): undefined reference to `atoi'
/tmp/ccAOqDmA.o: In function `printtimestamp':
dns-sd.c:(.text+0x4a8): undefined reference to `gettimeofday'
dns-sd.c:(.text+0x4b6): undefined reference to `localtime_r'
dns-sd.c:(.text+0x4e2): undefined reference to `printf'
/tmp/ccAOqDmA.o: In function `GetNextLabel':
dns-sd.c:(.text+0x51e): undefined reference to `__ctype_b_loc'
dns-sd.c:(.text+0x53a): undefined reference to `__ctype_b_loc'
dns-sd.c:(.text+0x554): undefined reference to `__ctype_b_loc'
/tmp/ccAOqDmA.o: In function `enum_reply':
dns-sd.c:(.text+0x692): undefined reference to `printf'
dns-sd.c:(.text+0x6ae): undefined reference to `printf'
dns-sd.c:(.text+0x6c6): undefined reference to `puts'
dns-sd.c:(.text+0x70e): undefined reference to `printf'
dns-sd.c:(.text+0x73c): undefined reference to `printf'
dns-sd.c:(.text+0x754): undefined reference to `printf'
dns-sd.c:(.text+0x762): undefined reference to `printf'
dns-sd.c:(.text+0x856): undefined reference to `putchar'
dns-sd.c:(.text+0x868): undefined reference to `printf'
dns-sd.c:(.text+0x884): undefined reference to `putchar'
dns-sd.c:(.text+0x898): undefined reference to `printf'
dns-sd.c:(.text+0x8ac): undefined reference to `printf'
dns-sd.c:(.text+0x8f4): undefined reference to `printf'
dns-sd.c:(.text+0x91c): undefined reference to `stdout'
dns-sd.c:(.text+0x920): undefined reference to `stdout'
dns-sd.c:(.text+0x928): undefined reference to `fflush'
/tmp/ccAOqDmA.o: In function `browse_reply':
dns-sd.c:(.text+0x9a4): undefined reference to `printf'
dns-sd.c:(.text+0x9bc): undefined reference to `printf'
dns-sd.c:(.text+0x9dc): undefined reference to `printf'
dns-sd.c:(.text+0x9ea): undefined reference to `stdout'
dns-sd.c:(.text+0x9ee): undefined reference to `stdout'
dns-sd.c:(.text+0x9f6): undefined reference to `fflush'
/tmp/ccAOqDmA.o: In function `ShowTXTRecord':
dns-sd.c:(.text+0xa3a): undefined reference to `printf'
dns-sd.c:(.text+0xa50): undefined reference to `putchar'
dns-sd.c:(.text+0xa64): undefined reference to `strchr'
dns-sd.c:(.text+0xa70): undefined reference to `putchar'
dns-sd.c:(.text+0xa84): undefined reference to `printf'
dns-sd.c:(.text+0xa98): undefined reference to `putchar'
dns-sd.c:(.text+0xaac): undefined reference to `printf'
/tmp/ccAOqDmA.o: In function `resolve_reply':
dns-sd.c:(.text+0xb04): undefined reference to `printf'
dns-sd.c:(.text+0xb18): undefined reference to `printf'
dns-sd.c:(.text+0xb2c): undefined reference to `printf'
dns-sd.c:(.text+0xb38): undefined reference to `putchar'
dns-sd.c:(.text+0xb48): undefined reference to `putchar'
dns-sd.c:(.text+0xb56): undefined reference to `stdout'
dns-sd.c:(.text+0xb5a): undefined reference to `stdout'
dns-sd.c:(.text+0xb62): undefined reference to `fflush'
/tmp/ccAOqDmA.o: In function `myTimerCallBack':
dns-sd.c:(.text+0xbb4): undefined reference to `puts'
dns-sd.c:(.text+0xbfe): undefined reference to `puts'
dns-sd.c:(.text+0xc48): undefined reference to `puts'
dns-sd.c:(.text+0xcf2): undefined reference to `printf'
dns-sd.c:(.text+0xd34): undefined reference to `puts'
dns-sd.c:(.text+0xd84): undefined reference to `stderr'
dns-sd.c:(.text+0xd88): undefined reference to `stderr'
dns-sd.c:(.text+0xd9a): undefined reference to `fprintf'
/tmp/ccAOqDmA.o: In function `reg_reply':
dns-sd.c:(.text+0xdd0): undefined reference to `printf'
dns-sd.c:(.text+0xde2): undefined reference to `puts'
dns-sd.c:(.text+0xe34): undefined reference to `puts'
dns-sd.c:(.text+0xe3c): undefined reference to `exit'
dns-sd.c:(.text+0xe4a): undefined reference to `printf'
dns-sd.c:(.text+0xe58): undefined reference to `stdout'
dns-sd.c:(.text+0xe5c): undefined reference to `stdout'
dns-sd.c:(.text+0xe64): undefined reference to `fflush'
/tmp/ccAOqDmA.o: In function `qr_reply':
dns-sd.c:(.text+0xf16): undefined reference to `printf'
dns-sd.c:(.text+0xf36): undefined reference to `printf'
dns-sd.c:(.text+0xf80): undefined reference to `sprintf'
dns-sd.c:(.text+0x1062): undefined reference to `sprintf'
dns-sd.c:(.text+0x1094): undefined reference to `sprintf'
dns-sd.c:(.text+0x10d0): undefined reference to `printf'
dns-sd.c:(.text+0x10f8): undefined reference to `printf'
dns-sd.c:(.text+0x110a): undefined reference to `putchar'
dns-sd.c:(.text+0x1162): undefined reference to `stdout'
dns-sd.c:(.text+0x1166): undefined reference to `stdout'
dns-sd.c:(.text+0x116e): undefined reference to `fflush'
/tmp/ccAOqDmA.o: In function `HandleEvents':
dns-sd.c:(.text+0x12f4): undefined reference to `select'
dns-sd.c:(.text+0x13c8): undefined reference to `stderr'
dns-sd.c:(.text+0x13cc): undefined reference to `stderr'
dns-sd.c:(.text+0x13e0): undefined reference to `fprintf'
dns-sd.c:(.text+0x1400): undefined reference to `__errno_location'
dns-sd.c:(.text+0x1408): undefined reference to `__errno_location'
dns-sd.c:(.text+0x1412): undefined reference to `strerror'
dns-sd.c:(.text+0x1426): undefined reference to `printf'
dns-sd.c:(.text+0x142a): undefined reference to `__errno_location'
/tmp/ccAOqDmA.o: In function `getfirstoption':
dns-sd.c:(.text+0x1474): undefined reference to `getopt'
dns-sd.c:(.text+0x147a): undefined reference to `optind'
dns-sd.c:(.text+0x147e): undefined reference to `optind'
/tmp/ccAOqDmA.o: In function `MyRegisterRecordCallback':
dns-sd.c:(.text+0x14b0): undefined reference to `printf'
dns-sd.c:(.text+0x14ce): undefined reference to `puts'
dns-sd.c:(.text+0x14dc): undefined reference to `puts'
dns-sd.c:(.text+0x14e4): undefined reference to `exit'
dns-sd.c:(.text+0x14f2): undefined reference to `printf'
dns-sd.c:(.text+0x1502): undefined reference to `stdout'
dns-sd.c:(.text+0x1506): undefined reference to `stdout'
dns-sd.c:(.text+0x150e): undefined reference to `fflush'
/tmp/ccAOqDmA.o: In function `getip':
dns-sd.c:(.text+0x1536): undefined reference to `memset'
dns-sd.c:(.text+0x154a): undefined reference to `getaddrinfo'
dns-sd.c:(.text+0x1566): undefined reference to `freeaddrinfo'
/tmp/ccAOqDmA.o: In function `RegisterProxyAddressRecord':
dns-sd.c:(.text+0x1596): undefined reference to `stderr'
dns-sd.c:(.text+0x159a): undefined reference to `stderr'
dns-sd.c:(.text+0x15ac): undefined reference to `fprintf'
/tmp/ccAOqDmA.o: In function `RegisterService':
dns-sd.c:(.text+0x1628): undefined reference to `atoi'
dns-sd.c:(.text+0x165e): undefined reference to `memset'
dns-sd.c:(.text+0x1700): undefined reference to `printf'
dns-sd.c:(.text+0x1722): undefined reference to `printf'
dns-sd.c:(.text+0x1732): undefined reference to `printf'
dns-sd.c:(.text+0x17b8): undefined reference to `__ctype_b_loc'
dns-sd.c:(.text+0x17d8): undefined reference to `__ctype_b_loc'
dns-sd.c:(.text+0x19c8): undefined reference to `putchar'
/tmp/ccAOqDmA.o: In function `main':
dns-sd.c:(.text+0x1a54): undefined reference to `strrchr'
dns-sd.c:(.text+0x1a8c): undefined reference to `strcmp'
dns-sd.c:(.text+0x1ac0): undefined reference to `puts'
dns-sd.c:(.text+0x1ade): undefined reference to `strcmp'
dns-sd.c:(.text+0x1af2): undefined reference to `atoi'
dns-sd.c:(.text+0x1b06): undefined reference to `atoi'
dns-sd.c:(.text+0x1b40): undefined reference to `printf'
dns-sd.c:(.text+0x1bf8): undefined reference to `puts'
dns-sd.c:(.text+0x1c30): undefined reference to `puts'
dns-sd.c:(.text+0x1cf4): undefined reference to `printf'
dns-sd.c:(.text+0x1dc6): undefined reference to `printf'
dns-sd.c:(.text+0x1fee): undefined reference to `atoi'
dns-sd.c:(.text+0x2078): undefined reference to `puts'
dns-sd.c:(.text+0x2142): undefined reference to `puts'
dns-sd.c:(.text+0x21a4): undefined reference to `getpid'
dns-sd.c:(.text+0x21ca): undefined reference to `puts'
dns-sd.c:(.text+0x2268): undefined reference to `getpid'
dns-sd.c:(.text+0x228e): undefined reference to `puts'
dns-sd.c:(.text+0x2334): undefined reference to `stderr'
dns-sd.c:(.text+0x2338): undefined reference to `stderr'
dns-sd.c:(.text+0x234c): undefined reference to `fprintf'
dns-sd.c:(.text+0x23b8): undefined reference to `stderr'
dns-sd.c:(.text+0x23bc): undefined reference to `stderr'
dns-sd.c:(.text+0x23d0): undefined reference to `fprintf'
dns-sd.c:(.text+0x23d4): undefined reference to `stderr'
dns-sd.c:(.text+0x23d8): undefined reference to `stderr'
dns-sd.c:(.text+0x23ec): undefined reference to `fprintf'
dns-sd.c:(.text+0x23f0): undefined reference to `stderr'
dns-sd.c:(.text+0x23f4): undefined reference to `stderr'
dns-sd.c:(.text+0x2408): undefined reference to `fprintf'
dns-sd.c:(.text+0x240c): undefined reference to `stderr'
dns-sd.c:(.text+0x2410): undefined reference to `stderr'
dns-sd.c:(.text+0x2424): undefined reference to `fprintf'
dns-sd.c:(.text+0x2428): undefined reference to `stderr'
dns-sd.c:(.text+0x242c): undefined reference to `stderr'
dns-sd.c:(.text+0x2440): undefined reference to `fprintf'
dns-sd.c:(.text+0x2444): undefined reference to `stderr'
dns-sd.c:(.text+0x2448): undefined reference to `stderr'
dns-sd.c:(.text+0x245c): undefined reference to `fprintf'
dns-sd.c:(.text+0x2460): undefined reference to `stderr'
dns-sd.c:(.text+0x2464): undefined reference to `stderr'
dns-sd.c:(.text+0x2478): undefined reference to `fprintf'
dns-sd.c:(.text+0x247c): undefined reference to `stderr'
dns-sd.c:(.text+0x2480): undefined reference to `stderr'
dns-sd.c:(.text+0x2494): undefined reference to `fprintf'
dns-sd.c:(.text+0x2498): undefined reference to `stderr'
dns-sd.c:(.text+0x249c): undefined reference to `stderr'
dns-sd.c:(.text+0x24b0): undefined reference to `fprintf'
dns-sd.c:(.text+0x24b4): undefined reference to `stderr'
dns-sd.c:(.text+0x24b8): undefined reference to `stderr'
dns-sd.c:(.text+0x24cc): undefined reference to `fprintf'
dns-sd.c:(.text+0x24d0): undefined reference to `stderr'
dns-sd.c:(.text+0x24d4): undefined reference to `stderr'
dns-sd.c:(.text+0x24e8): undefined reference to `fprintf'
dns-sd.c:(.text+0x24ec): undefined reference to `stderr'
dns-sd.c:(.text+0x24f0): undefined reference to `stderr'
dns-sd.c:(.text+0x2504): undefined reference to `fprintf'
dns-sd.c:(.text+0x2508): undefined reference to `stderr'
dns-sd.c:(.text+0x250c): undefined reference to `stderr'
dns-sd.c:(.text+0x2520): undefined reference to `fprintf'
dns-sd.c:(.text+0x2524): undefined reference to `stderr'
dns-sd.c:(.text+0x2528): undefined reference to `stderr'
dns-sd.c:(.text+0x253c): undefined reference to `fprintf'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `strcpy'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `recv'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `connect'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `memmove'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `memcpy'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `malloc'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `sleep'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `socket'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `send'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `accept'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `bind'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `umask'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `strncmp'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `strncpy'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `unlink'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `listen'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `__aeabi_uidiv'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `syslog'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `__aeabi_uidivmod'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `strlen'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `close'
../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `free'
collect2: error: ld returned 1 exit status
make[1]: *** [build/dns-sd] Error 1
make[1]: Leaving directory `/media/sf_Share/mDNSResponder-107.6/Clients'
make: *** [../Clients/build/dns-sd] Error 2

  • This is a general Linux question so I'm moving it to the Linux forum.

  • Hi Justin,

    Please try adding the "-lc" flag to the linker (ld) command line in your Makefile.

    Best regards,
    Miroslav

  • Hello Miroslav

    Thank you!!

    I added the -lc flag to the makefile,and it changed to other error message

    Best Regards,

    [linux-devkit]:/media/sf_Share/mDNSResponder-107.6/mDNSPosix> make os=linux
    Responder daemon done
    Client library done
    make[1]: Entering directory `/media/sf_Share/mDNSResponder-107.6/Clients'
    arm-linux-gnueabihf-gcc -nostdlib dns-sd.c -L../mDNSPosix/build/prod/ -lc -ldns_sd -L /sitara/ti-sdk-am335x-evm/linux-devkit/sysroots/armv7ahf-vfp-neon-3.2-oe-linux-gnueabi/lib -I../mDNSShared -o build/dns-sd
    /sitara/ti-sdk-am335x-evm/linux-devkit/sysroots/i686-arago-linux/usr/bin/../lib/gcc/arm-linux-gnueabihf/4.7.3/../../../../arm-linux-gnueabihf/bin/ld: warning: cannot find entry symbol _start; defaulting to 00008bb8
    ../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `__aeabi_uidiv'
    ../mDNSPosix/build/prod//libdns_sd.so: undefined reference to `__aeabi_uidivmod'
    collect2: error: ld returned 1 exit status
    make[1]: *** [build/dns-sd] Error 1
    make[1]: Leaving directory `/media/sf_Share/mDNSResponder-107.6/Clients'
    make: *** [../Clients/build/dns-sd] Error 2

  • Hi,

    Try to replace the -lc flag with -lgcc and if it doesn't work try to add the path to the libgcc.a library (-Lpath_to_libgcc.a).

    Best regards,
    Miroslav

  • Hi Miroslav

    i added -lgcc (Replacement -lc flag  will cause problems )

    it still have a link error

    [linux-devkit]:/media/sf_Share/mDNSResponder-107.6/mDNSPosix> make os=linux
    Responder daemon done
    Client library done
    make[1]: Entering directory `/media/sf_Share/mDNSResponder-107.6/Clients'
    arm-linux-gnueabihf-gcc -nostdlib dns-sd.c -L../mDNSPosix/build/prod/ -ldns_sd -lc -lgcc -L /sitara/ti-sdk-am335x-evm/linux-devkit/sysroots/armv7ahf-vfp-neon-3.2-oe-linux-gnueabi/lib -L /sitara/ti-sdk-am335x-evm/linux-devkit/sysroots/i686-arago-linux/usr/lib/gcc/arm-linux-gnueabihf/4.7.3 -I../mDNSShared -o build/dns-sd
    /sitara/ti-sdk-am335x-evm/linux-devkit/sysroots/i686-arago-linux/usr/bin/../lib/gcc/arm-linux-gnueabihf/4.7.3/../../../../arm-linux-gnueabihf/bin/ld: warning: cannot find entry symbol _start; defaulting to 00008be8
    /sitara/ti-sdk-am335x-evm/linux-devkit/sysroots/i686-arago-linux/usr/bin/../lib/gcc/arm-linux-gnueabihf/4.7.3/../../../../arm-linux-gnueabihf/bin/ld: build/dns-sd: hidden symbol `__aeabi_uidiv' in /sitara/ti-sdk-am335x-evm/linux-devkit/sysroots/i686-arago-linux/usr/lib/gcc/arm-linux-gnueabihf/4.7.3/libgcc.a(_udivsi3.o) is referenced by DSO
    /sitara/ti-sdk-am335x-evm/linux-devkit/sysroots/i686-arago-linux/usr/bin/../lib/gcc/arm-linux-gnueabihf/4.7.3/../../../../arm-linux-gnueabihf/bin/ld: final link failed: Bad value
    collect2: error: ld returned 1 exit status
    make[1]: *** [build/dns-sd] Error 1
    make[1]: Leaving directory `/media/sf_Share/mDNSResponder-107.6/Clients'
    make: *** [../Clients/build/dns-sd] Error 2

  • Justin, I'm sorry, but I'm out of ideas. This is a general gcc toolchain issue, so maybe you can get a better answer if you ask in a more programmer oriented forum, like StackOverflow.

    Best regards,
    Miroslav