Hi
I am trying to integrate the Boingo Embedded Wireless Toolkit (BEWT)
[see http://sourceforge.net/projects/boingowifitool/ ] to
compile under ptxdist-1.0.0 for an arm-based target. I am trying to
write
rules/bewt.make in my local project rules directory.
BEWT has dependencies on the wireless-tools and libcurl (I have
integrated
this into my configuration for my local project). BEWT comes with
auto-tools
Support for building. I have successfully
done
ptxdist get bewt -OK
ptxdist prepare bewt - OK
But
ptxdist compile bewt - BREAKS
My compiler is arm-linux-gcc version 4.1.1 supplied by my reference
board vendor.
Configuration step appears to be OK.
However an assembler complains during complilation ...
<SNIP...>
ptxdist compile bewt
<SNIP...>
arm-linux-gcc: unrecognized option '-02'
arm-linux-g++ -DPACKAGE_NAME=\"boingowifitoolkit\"
-DPACKAGE_TARNAME=\"boingowifitoolkit\" -DPACKAGE_VERSION=\"1.0\"
"-DPACKAGE_STRING=\"boingowifitoolkit 1.0\""
-DPACKAGE_BUGREPORT=\"[EMAIL PROTECTED]" -DPACKAGE=\"boingowifitoolkit\"
-DVERSION=\"1.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1
-DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1
-DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1
-DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DHAVE_LIBM=1
-DHAVE_LIBIW=1 -DHAVE_LIBCURL=1 -DHAVE_LIBPTHREAD=1 -DLINUX=1
-DWIFI_DEVICE=1 -D_REENTRANT=1 -I. -I. -pipe -I/usr/include
-I./../../lib/proxies/include -I./../../lib/storage/include
-I./../../lib/platform/include -I./../../lib/wifiengine/include
-I./../../lib/interpreter/include -I./../../lib/http/include -I./include
-I./. -I./../../lib/updater/include -I./../../lib/xml/include
-I./../../lib/networkreporter/include -DPAL_EXPORTS -DPLATFORM_EXPORTS
-isystem /home/wrap/pxaproj1/local/arm-linux/include -isystem
/home/wrap/pxaproj1/local/arm-linux/usr/include -02 -Os -MT
PalLogging.lo -MD -MP -MF .deps/PalLogging.Tpo -c src/PalLogging.cpp -o
PalLogging.o >/dev/null 2>&1
src/ping_host.c: In function 'ping_host':
src/ping_host.c:240: error: impossible constraint in 'asm'
{standard input}: Assembler messages:
{standard input}:392: Error: bad instruction `btsl r2,[r3,#-176]'
make[3]: *** [ping_host.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: Leaving directory
`/home/wrap/pxaproj1/build-target/bewt2_rev101/pal/linux'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory
`/home/wrap/pxaproj1/build-target/bewt2_rev101/pal'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/home/wrap/pxaproj1/build-target/bewt2_rev101'
make: *** [/home/wrap/pxaproj1/state/bewt.compile] Error 2
<SNIP>
A fragment from ping_host.c surrounding the errored line is
---ping_host.c fragment begin ----------------------------------
if (timeout.tv_sec < 0)
{
timeout.tv_sec = timeout.tv_usec = 0;
}
FD_ZERO(&fdset); /* <=== assembler error here */
FD_SET(sock_out,&fdset);
int n = select(fdmax,&fdset,NULL,NULL,&timeout);
---ping_host.c fragment end ------------------------------------
The initial sections of my rules/bewt.make [ created by cd
<projectdir>/rules ; ptxdist newpacket target ]
looks like
PACKAGES-$(PTXCONF_BEWT) += bewt
#
# Paths and names
#
BEWT_VERSION := rev101
BEWT := bewt2_$(BEWT_VERSION)
BEWT_SUFFIX := tgz
BEWT_URL :=
http://kent.dl.sourceforge.net/sourceforge/boingowifitool/$(BEWT).$(BEWT
_SUFFIX)
BEWT_SOURCE := $(SRCDIR)/$(BEWT).$(BEWT_SUFFIX)
BEWT_DIR := $(BUILDDIR)/$(BEWT)
#
------------------------------------------------------------------------
----
# Get
#
------------------------------------------------------------------------
----
bewt_get: $(STATEDIR)/bewt.get
$(STATEDIR)/bewt.get: $(bewt_get_deps_default)
@$(call targetinfo, $@)
@$(call touch, $@)
$(BEWT_SOURCE):
@$(call targetinfo, $@)
# @$(call get, BEWT)
#
------------------------------------------------------------------------
----
# Extract
#
------------------------------------------------------------------------
----
bewt_extract: $(STATEDIR)/bewt.extract
$(STATEDIR)/bewt.extract: $(bewt_extract_deps_default)
@$(call targetinfo, $@)
@$(call clean, $(BEWT_DIR))
@$(call extract, BEWT)
@$(call patchin, BEWT)
@$(call touch, $@)
#
------------------------------------------------------------------------
----
# Prepare
#
------------------------------------------------------------------------
----
bewt_prepare: $(STATEDIR)/bewt.prepare
BEWT_PATH := PATH=$(CROSS_PATH)
BEWT_ENV := $(CROSS_ENV)
#
# autoconf
#
BEWT_AUTOCONF := $(CROSS_AUTOCONF_USR)
$(STATEDIR)/bewt.prepare: $(bewt_prepare_deps_default)
@$(call targetinfo, $@)
@$(call clean, $(BEWT_DIR)/config.cache)
cd $(BEWT_DIR) && \
$(BEWT_PATH) $(BEWT_ENV) \
./configure $(BEWT_AUTOCONF)
cd $(BEWT_DIR) && \
$(BEWT_PATH) $(BEWT_ENV) \
./configure $(BEWT_AUTOCONF)
@$(call touch, $@)
#
------------------------------------------------------------------------
----
# Compile
#
------------------------------------------------------------------------
----
bewt_compile: $(STATEDIR)/bewt.compile
$(STATEDIR)/bewt.compile: $(bewt_compile_deps_default)
@$(call targetinfo, $@)
cd $(BEWT_DIR) && $(BEWT_PATH) $(MAKE) $(PARALLELMFLAGS)
@$(call touch, $@)
<SNIP>
I have been able to cross-compile bewt under the scratchbox tool
successfully (same version as here,
Same dependent packages as here). However my ptxdist effort is broken !
Can anyone point me as to how to track this error down ?
Thanks
Graeme
Dr Graeme N Brown
Mobility Research R & V
BT Group Chief Technology Office
B28 pp 2B
Adastral Park
Ipswich
Suffolk
United Kingdom
IP5 3RE
___________________________
Office: +44 (0) 1473 646931
Fax : +44 (0) 1473 646885
Email: [EMAIL PROTECTED]
British Telecommunications plc
Registered office: 81 Newgate Street London EC1A 7AJ
Registered in England no. 1800000
This electronic message contains information from British
Telecommunications plc which may be privileged or confidential. The
information is intended to be for the use of the individual(s) or entity
named above. If you are not the intended recipient be aware that any
disclosure, copying, distribution or use of the contents of this
information is prohibited. If you have received this electronic message
in error, please notify us by telephone or email (to the numbers or
address above) immediately.
Activity and use of the British Telecommunications plc email system is
monitored to secure its effective operation and for other lawful
business purposes. Communications using this system will also be
monitored and may be recorded to secure effective operation and for
other lawful business purposes.
--
ptxdist mailing list
[email protected]