base-foc: contrib compile errors
Martin Stein
martin.stein at ...1...
Tue Nov 13 13:51:07 CET 2012
A similar problem occurs when building on fiasco:
The error
Program bootstrap/bootstrap
make[6]: Nothing to be done for `all'.
... Generating bootstrap.ld
cc1: error: missing argument to "-P"
is caused by the '-P' in
$(LDSCRIPT): $(LDSCRIPT).in $(SRC_DIR)/Makefile $(BOOTSTRAP_LD_dep)
@$(GEN_MESSAGE)
$(VERBOSE)cpp -P $(CPPFLAGS) -DLINKADDR=$(DEFAULT_RELOC_$(ARCH)) $< $@;
in
base-fiasco/contrib/fiasco/snapshot/l4/pkg/bootstrap/server/src/Makefile
and can be solved by using '-P="$(CPPFLAGS)"'
then the error
/usr/local/genode-gcc/bin/genode-x86-ld:bootstrap.ld:1: ignoring invalid
character `#' in expression
/usr/local/genode-gcc/bin/genode-x86-ld:bootstrap.ld:1: syntax error
leds to <BUILD_DIR>/l4/pkg/bootstrap/server/src/OBJ-x86_586/bootstrap.ld
where removing the faulty comment style is again the problem.
After this the build and run succeeds.
The problems do not occur with other L4 based kernels.
On 11/12/2012 11:39 AM, Martin Stein wrote:
> Hi,
>
> I have an obscure little error that kept me from running Genode
> with base-foc. I have a freshly cloned Genode repo on the master branch
> with a freshly 'make prepare'd base-foc/contrib. The build dir is also
> freshly created and not modified (no 'MAKE+=j' or something).
> I'm using Linux 3.0.0-23 x86_64 and GCC 4.7.2 and i already built
> with FOC on GCC 4.6.x some time ago. The error:
>
>
> [ "222" -lt "218" ] && \
> CPP_ARGS="-DMAXPAGESIZE=0x1000 -DCOMMONPAGESIZE=0x1000
> -DCONSTANT(x)=x"; \
> cpp -nostdinc -include
> /home/hyronimo/LokaleDaten1/GenodeLabs/genode/test/base-foc/contrib/l4/pkg/ldscripts/generic.h
> \
> -Wno-trigraphs -Ui386 -P $CPP_ARGS
> /home/hyronimo/LokaleDaten1/GenodeLabs/genode/test/base-foc/contrib/l4/pkg/ldscripts/ARCH-arm/main_dyn.ld
> main_dyn.ld
> cc1: error: missing argument to "-P"
>
>
> led me to 'base-foc/contrib/l4/pkg/ldscripts/Makefile' where
>
>
> %.ld: $(PKGDIR)/ARCH-$(ARCH)/%.ld $(SRC_DIR)/Makefile $(SRC_DIR)/generic.h
> -@$(GEN_MESSAGE)
> $(VERBOSE)[ "$(LDVERSION)" -lt "218" ] && \
> CPP_ARGS="-DMAXPAGESIZE=$(MAXPAGESIZE_$(ARCH))
> -DCOMMONPAGESIZE=$(COMMONPAGESIZE_$(ARCH)) -DCONSTANT(x)=x"; \
> cpp -nostdinc -include $(SRC_DIR)/generic.h \
> -Wno-trigraphs -Ui386 -P $$CPP_ARGS $< $@
>
>
> checks the LD version that is 222 and not 218 in my scenario, thus
> CPP_ARGS is empty. But even with a not empty CPP_ARGS i get the error.
> Thus i removed anything before the cpp-call and inserted the CPP_ARGS
> directly, one times with the 222-version and another with the 218 version.
>
> Now the build was going on until this came up:
>
> /usr/local/genode-gcc/bin/genode-arm-ld:/home/hyronimo/LokaleDaten1/GenodeLabs/genode/build.test/l4/lib/arm_armv7a/main_rel.ld:1:
> ignoring invalid character `#' in expression
> /usr/local/genode-gcc/bin/genode-arm-ld:/home/hyronimo/LokaleDaten1/GenodeLabs/genode/build.test/l4/lib/arm_armv7a/main_rel.ld:1:
> syntax error
>
> that was caused by comments that were preceeded by '#' instead of '/*',
> thus i removed all of these faulty comments and now the demo builds and
> runs fine.
>
> I'm a little confused with this, has anybody a hint for me?
>
More information about the users
mailing list