Subject: [dtn-users] compiling ibr-dtn on windows via cygwin

From: Tom Sparks <[email-masked]>
Date: Sun, 11 Aug 2013 19:16:11 -0700 (PDT)

--- On Sat, 10/8/13, Tom Sparks <[email-masked]> wrote:
I have send a email to ibr-dtn mailing list, but I got no reply

> I am attempting to compile ibr-dtn
> 0.10.0 on  windows via cygwin and it stops with
> "
> File.cpp: In member function 'std::string
> ibrcommon::File::getBasename() const':
> File.cpp:174:44: error: 'basename' was not declared in this
> scope
>    return
> std::string(basename(_path.c_str()));
>                
>                
>             ^
> Makefile:420: recipe for target `File.lo' failed
> "
> ./config and make output bellow
> -----cut-here-------
> configure: WARNING: unrecognized options: --with-curl,
> --with-sqlite, --with-dtnsec, --with-compression,
> --with-tls
> configure: WARNING: Libtool does not cope well with
> whitespace in `pwd`
> checking build system type... x86_64-unknown-cygwin
> checking host system type... x86_64-unknown-cygwin
> checking how to print strings... printf
> checking for gcc... gcc
> checking whether the C compiler works... yes
> checking for C compiler default output file name... a.exe
> checking for suffix of executables... .exe
> checking whether we are cross compiling... no
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... yes
> checking whether gcc accepts -g... yes
> checking for gcc option to accept ISO C89... none needed
> checking for a sed that does not truncate output...
> /usr/bin/sed
> checking for grep that handles long lines and -e...
> /usr/bin/grep
> checking for egrep... /usr/bin/grep -E
> checking for fgrep... /usr/bin/grep -F
> checking for ld used by gcc...
> /usr/x86_64-pc-cygwin/bin/ld.exe
> checking if the linker (/usr/x86_64-pc-cygwin/bin/ld.exe) is
> GNU ld... yes
> checking for BSD- or MS-compatible name lister (nm)...
> /usr/bin/nm -B
> checking the name lister (/usr/bin/nm -B) interface... BSD
> nm
> checking whether ln -s works... yes
> checking the maximum length of command line arguments...
> 8192
> checking whether the shell understands some XSI
> constructs... yes
> checking whether the shell understands "+="... yes
> checking how to convert x86_64-unknown-cygwin file names to
> x86_64-unknown-cygwin format... func_convert_file_noop
> checking how to convert x86_64-unknown-cygwin file names to
> toolchain format... func_convert_file_noop
> checking for /usr/x86_64-pc-cygwin/bin/ld.exe option to
> reload object files... -r
> checking for objdump... objdump
> checking how to recognize dependent libraries... file_magic
> ^x86 archive import|^x86 DLL
> checking for dlltool... dlltool
> checking how to associate runtime and link libraries...
> func_cygming_dll_for_implib
> checking for ar... ar
> checking for archiver @FILE support... @
> checking for strip... strip
> checking for ranlib... ranlib
> checking for gawk... gawk
> checking command to parse /usr/bin/nm -B output from gcc
> object... ok
> checking for sysroot... no
> checking for mt... mt
> checking if mt is a manifest tool... no
> checking how to run the C preprocessor... gcc -E
> checking for ANSI C header files... yes
> checking for sys/types.h... yes
> checking for sys/stat.h... yes
> checking for stdlib.h... yes
> checking for string.h... yes
> checking for memory.h... yes
> checking for strings.h... yes
> checking for inttypes.h... yes
> checking for stdint.h... yes
> checking for unistd.h... yes
> checking for dlfcn.h... yes
> checking for objdir... .libs
> checking if gcc supports -fno-rtti -fno-exceptions... no
> checking for gcc option to produce PIC... -DDLL_EXPORT
> -DPIC
> checking if gcc PIC flag -DDLL_EXPORT -DPIC works... yes
> checking if gcc static flag -static works... yes
> checking if gcc supports -c -o file.o... yes
> checking if gcc supports -c -o file.o... (cached) yes
> checking whether the gcc linker
> (/usr/x86_64-pc-cygwin/bin/ld.exe) supports shared
> libraries... yes
> checking whether -lc should be explicitly linked in... yes
> checking dynamic linker characteristics... Win32 ld.exe
> checking how to hardcode library paths into programs...
> immediate
> checking whether stripping libraries is possible... yes
> checking if libtool supports shared libraries... yes
> checking whether to build shared libraries... yes
> checking whether to build static libraries... yes
> checking for cppunit-config... /usr/bin/cppunit-config
> checking for Cppunit - version >= 1.9.6... 1.12.1
> checking for a BSD-compatible install... /usr/bin/install
> -c
> checking whether build environment is sane... yes
> checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
> checking whether make sets $(MAKE)... yes
> checking for style of include used by make... GNU
> checking dependency style of gcc... gcc3
> checking whether to enable maintainer-specific portions of
> Makefiles... no
> checking whether make supports nested variables... yes
> checking for g++... g++
> checking whether we are using the GNU C++ compiler... yes
> checking whether g++ accepts -g... yes
> checking how to run the C++ preprocessor... g++ -E
> checking for ld used by g++...
> /usr/x86_64-pc-cygwin/bin/ld.exe
> checking if the linker (/usr/x86_64-pc-cygwin/bin/ld.exe) is
> GNU ld... yes
> checking whether the g++ linker
> (/usr/x86_64-pc-cygwin/bin/ld.exe) supports shared
> libraries... yes
> checking for g++ option to produce PIC... -DDLL_EXPORT
> -DPIC
> checking if g++ PIC flag -DDLL_EXPORT -DPIC works... yes
> checking if g++ static flag -static works... yes
> checking if g++ supports -c -o file.o... yes
> checking if g++ supports -c -o file.o... (cached) yes
> checking whether the g++ linker
> (/usr/x86_64-pc-cygwin/bin/ld.exe) supports shared
> libraries... yes
> checking dynamic linker characteristics... Win32 ld.exe
> checking how to hardcode library paths into programs...
> immediate
> checking dependency style of g++... gcc3
> checking for gcc... (cached) gcc
> checking whether we are using the GNU C compiler... (cached)
> yes
> checking whether gcc accepts -g... (cached) yes
> checking for gcc option to accept ISO C89... (cached) none
> needed
> checking whether build environment is sane... yes
> checking whether time.h and sys/time.h may both be
> included... yes
> checking for sys/time.h... yes
> checking for unistd.h... (cached) yes
> checking for alarm... yes
> checking for pkg-config... /usr/bin/pkg-config
> checking pkg-config is at least version 0.9.0... yes
> checking for clock_gettime in -lrt... yes
> checking for bzero... yes
> checking for clock_gettime... yes
> checking for gethostname... yes
> checking for gettimeofday... yes
> checking for inet_ntoa... yes
> checking for memset... yes
> checking for mkdir... yes
> checking for pow... yes
> checking for rmdir... yes
> checking for socket... yes
> checking arpa/inet.h usability... yes
> checking arpa/inet.h presence... yes
> checking for arpa/inet.h... yes
> checking fcntl.h usability... yes
> checking fcntl.h presence... yes
> checking for fcntl.h... yes
> checking netdb.h usability... yes
> checking netdb.h presence... yes
> checking for netdb.h... yes
> checking netinet/in.h usability... yes
> checking netinet/in.h presence... yes
> checking for netinet/in.h... yes
> checking sys/socket.h usability... yes
> checking sys/socket.h presence... yes
> checking for sys/socket.h... yes
> checking for sys/time.h... (cached) yes
> checking syslog.h usability... yes
> checking syslog.h presence... yes
> checking for syslog.h... yes
> checking features.h usability... yes
> checking features.h presence... yes
> checking for features.h... yes
> checking mach/mach_time.h usability... no
> checking mach/mach_time.h presence... no
> checking for mach/mach_time.h... no
> checking sys/semaphore.h usability... no
> checking sys/semaphore.h presence... no
> checking for sys/semaphore.h... no
> checking semaphore.h usability... yes
> checking semaphore.h presence... yes
> checking for semaphore.h... yes
> checking for sys/semaphore.h... (cached) no
> checking for inline... inline
> checking for error_at_line... yes
> checking for working mktime... yes
> checking for stdbool.h that conforms to C99... yes
> checking for _Bool... no
> checking for int64_t... yes
> checking for size_t... yes
> checking for uint16_t... yes
> checking for uint32_t... yes
> checking for uint8_t... yes
> checking for NL... no
> checking for NL... no
> checking for pthread_attr_init in -lpthread... yes
> checking for pthread_create in -lpthread... yes
> checking for pthread_mutex_init in -lpthread... yes
> checking for pthread_cond_init in -lpthread... yes
> checking for pthread_condattr_setclock in -lpthread... yes
> checking for pthread_setconcurrency in -lpthread... yes
> checking for pthread_yield in -lpthread... yes
> checking for pthread_delay in -lpthread... no
> checking for pthread_delay_np in -lpthread... no
> checking for pthread_setschedprio in -lpthread... yes
> checking for OPENSSL... yes
> configure: WARNING: lowpan extension requested, but no libnl
> library is found. lowpan support is disabled.
> configure: creating ./config.status
> config.status: creating Makefile
> config.status: creating ibrcommon.pc
> config.status: creating ibrcommon/Makefile
> config.status: creating ibrcommon/data/Makefile
> config.status: creating ibrcommon/link/Makefile
> config.status: creating ibrcommon/net/Makefile
> config.status: creating ibrcommon/thread/Makefile
> config.status: creating ibrcommon/ssl/Makefile
> config.status: creating ibrcommon/ssl/gcm/Makefile
> config.status: creating ibrcommon/xml/Makefile
> config.status: creating tests/Makefile
> config.status: creating tests/unittests/Makefile
> config.status: creating tests/stress/Makefile
> config.status: creating ibrcommon/config.h
> config.status: executing libtool commands
> config.status: executing depfiles commands
> ---cut-here---------
> configure: WARNING: unrecognized options: --with-curl,
> --with-sqlite, --with-dtnsec, --with-compression,
> --with-tls
> Making all in ibrcommon
> make[1]: Entering directory `/home/Tom
> Sparks/ibrcommon-0.10.0/ibrcommon'
> make  all-recursive
> make[2]: Entering directory `/home/Tom
> Sparks/ibrcommon-0.10.0/ibrcommon'
> Making all in data
> make[3]: Entering directory `/home/Tom
> Sparks/ibrcommon-0.10.0/ibrcommon/data'
>   CXX    BLOB.lo
>   CXX    ConfigFile.lo
>   CXX    File.lo
> File.cpp: In member function 'std::string
> ibrcommon::File::getBasename() const':
> File.cpp:174:44: error: 'basename' was not declared in this
> scope
>    return
> std::string(basename(_path.c_str()));
>                
>                
>             ^
> Makefile:420: recipe for target `File.lo' failed
> make[3]: *** [File.lo] Error 1
> make[3]: Leaving directory `/home/Tom
> Sparks/ibrcommon-0.10.0/ibrcommon/data'
> Makefile:545: recipe for target `all-recursive' failed
> make[2]: *** [all-recursive] Error 1
> make[2]: Leaving directory `/home/Tom
> Sparks/ibrcommon-0.10.0/ibrcommon'
> Makefile:395: recipe for target `all' failed
> make[1]: *** [all] Error 2
> make[1]: Leaving directory `/home/Tom
> Sparks/ibrcommon-0.10.0/ibrcommon'
> Makefile:422: recipe for target `all-recursive' failed
> make: *** [all-recursive] Error 1
> error while compiling ibrcommon
> -----cut-here------------
> 
> ---
> tom_a_sparks "It's a nerdy thing I like to do"
> Child of the Internet born 1983
> PGP ID: A7EF6006
> Please use ISO approved file formats excluding Office Open
> XML - http://www.gnu.org/philosophy/no-word-attachments.html
> Ubuntu wiki page https://wiki.ubuntu.com/tomsparks
> 
>