[Compilation Error] Given paths must be relative

Irvanda Kurniadi irvanda.k at gmail.com
Fri Jan 24 02:10:47 CET 2014


Hi Johan,

Thanks for the solution. The problem is really from missing $.

regards,
Irvanda


On Thu, Jan 23, 2014 at 7:18 PM, Johan Dams <johan.dams at wrdsystems.co.uk>wrote:

> Hi,
>
> No sure if this will solve your problem, but your line:
>
> (patsubst $(PKGDIR)/%.c, %.c, $(filter-out
> $(PKGDIR)/lib/src/ompi/mca/pml/csum/pml_csum_endpoint.c...
>
> Is missing the '$' sign at the beginning, i.e, $(patsubst...
>
>
> Best regards,
> Johan
>
> On Thu, 2014-01-23 at 16:34 +0900, Irvanda Kurniadi wrote:
> > Hi,
> >
> >
> > I'm trying to port openmpi. I follow libsdl Makefile structure. This
> > is my Makefile:
> >
> >         PKGDIR          ?= ../..
> >         L4DIR           ?= $(PKGDIR)/../..
> >
> >         TARGET          = libmpi.a libmpi.so
> >
> >         CONTRIB_INCDIR  = libompi
> >         REQUIRES_LIBS   = libc_support_misc l4re_c-util libpthread
> >
> >         SRC_C = $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/attribute/*.c)) \
> >                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/class/*.c)) \
> >                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/communicator/*.c)) \
> >                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/errhandler/*.c)) \
> >                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/file/*.c)) \
> >                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/group/*.c)) \
> >                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/info/*.c)) \
> >                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/allocator/base/*.c)) \
> >                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/allocator/basic/*.c)) \
> >                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/allocator/bucket/*.c)) \
> >                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/bml/base/*.c)) \
> >                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/bml/r2/*.c)) \
> >                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/btl/base/*.c)) \
> >                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/btl/ofud/*.c)) \
> >                 $(patsubst $(PKGDIR)/%.c, %.c, $(filter-out
> >         $(PKGDIR)/lib/src/ompi/mca/btl/openib/btl_openib_failover.c,
> >         $(wildcard $(PKGDIR)/lib/src/ompi/mca/btl/base/connect/*.c)))
> >         \
> >                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/btl/self/*.c)) \
> >                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/btl/sm/*.c)) \
> >                 $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/btl/tcp/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(filter-out
> >
> $(PKGDIR)/lib/src/ompi/mca/btl/openib/connect/btl_openib_connect_rdmacm.c
> $(PKGDIR)/lib/src/ompi/mca/bml/openib/connect/btl_openib_connect_sl.c
> $(PKGDIR)/lib/src/ompi/mca/bml/openib/connect/btl_openib_connect_xoob.c,
> $(wildcard $(PKGDIR)/lib/src/ompi/mca/btl/openib/connect/*.c))) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/coll/base/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/coll/basic/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/coll/hierarch/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/coll/inter/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/coll/self/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/coll/sm/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/coll/sync/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/coll/tuned/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/crcp/base/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/crcp/bkmrk/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/dpm/base/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/dpm/orte/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/io/based/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/io/romio/romio/adio/common/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/io/romio/romio/mpi-io/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >
> $(PKGDIR)/lib/src/ompi/mca/io/romio/romio/mpi-io/glue/openmpi/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/mpool/base/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/mpool/fake/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/mpool/rdma/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/mpool/sm/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/mtl/base/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/op/base/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/osc/base/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/osc/pt2pt/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/osc/rdma/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/pml/base/*.c)) \
> >             (patsubst $(PKGDIR)/%.c, %.c, $(filter-out
> >         $(PKGDIR)/lib/src/ompi/mca/pml/csum/pml_csum_endpoint.c,
> >         $(wildcard $(PKGDIR)/lib/src/ompi/mca/pml/csum/*.c))) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/pml/cm/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/pml/crcpw/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/pml/ob1/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/pml/v/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/pml/v/mca/vprotocol/base/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/pml/v/mca/vprotocol/pessimist/*.c))
> >         \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/pubsub/base/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/pubsub/orte/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/rcache/base/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/rcache/vma/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/topo/base/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mca/topo/unity/*.c)) \
> >             lib/src/ompi/mpi/c/attr_fn.c \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/mpi/c/profile/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/op/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/proc/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/request/*.c)) \
> >             $(patsubst $(PKGDIR)/%.c, %.c, $(wildcard
> >         $(PKGDIR)/lib/src/ompi/runtime/*.c))
> >
> >         PRIVATE_INCDIR    = $(PKGDIR)/lib/src/ompi/attribute/ \
> >                           $(PKGDIR)/lib/src/ompi/class \
> >                           $(PKGDIR)/lib/src/ompi/communictor \
> >                           $(PKGDIR)/lib/src/ompi/errhandler \
> >                           $(PKGDIR)/lib/src/ompi/file \
> >                           $(PKGDIR)/lib/src/ompi/group \
> >                           $(PKGDIR)/lib/src/ompi/info \
> >                           $(PKGDIR)/lib/src/ompi/mca/allocator/base \
> >                           $(PKGDIR)/lib/src/ompi/mca/allocator/basic \
> >                           $(PKGDIR)/lib/src/ompi/mca/allocator/bucket
> >         \
> >                           $(PKGDIR)/lib/src/ompi/mca/bml/base \
> >                           $(PKGDIR)/lib/src/ompi/mca/bml/r2 \
> >                           $(PKGDIR)/lib/src/ompi/mca/btl/base \
> >                           $(PKGDIR)/lib/src/ompi/mca/btl/ofud \
> >                           $(PKGDIR)/lib/src/ompi/mca/btl/openib \
> >
> >         $(PKGDIR)/lib/src/ompi/mca/btl/openib/connect \
> >                           $(PKGDIR)/lib/src/ompi/mca/btl/self \
> >                           $(PKGDIR)/lib/src/ompi/mca/btl/sm \
> >                           $(PKGDIR)/lib/src/ompi/mca/btl/tcp \
> >                           $(PKGDIR)/lib/src/ompi/mca/coll/base \
> >                           $(PKGDIR)/lib/src/ompi/mca/coll/basic \
> >                           $(PKGDIR)/lib/src/ompi/mca/coll/hierarch \
> >                           $(PKGDIR)/lib/src/ompi/mca/coll/inter \
> >                           $(PKGDIR)/lib/src/ompi/mca/coll/self \
> >                           $(PKGDIR)/lib/src/ompi/mca/coll/sm \
> >                           $(PKGDIR)/lib/src/ompi/mca/coll/sync \
> >                           $(PKGDIR)/lib/src/ompi/mca/coll/tuned \
> >                           $(PKGDIR)/lib/src/ompi/mca/crcp/base \
> >                           $(PKGDIR)/lib/src/ompi/mca/crcp/bkmrk \
> >                           $(PKGDIR)/lib/src/ompi/mca/dpm/base \
> >                           $(PKGDIR)/lib/src/ompi/mca/dpm/orte \
> >                           $(PKGDIR)/lib/src/ompi/mca/io/base \
> >
> >         $(PKGDIR)/lib/src/ompi/mca/io/romio/romio/adio/common \
> >
> >         $(PKGDIR)/lib/src/ompi/mca/io/romio/romio/mpi-io \
> >
> >         $(PKGDIR)/lib/src/ompi/mca/io/romio/romio/mpi-io/glue/openmpi
> >         \
> >                           $(PKGDIR)/lib/src/ompi/mca/mpool/base \
> >                           $(PKGDIR)/lib/src/ompi/mca/mpool/fake \
> >                           $(PKGDIR)/lib/src/ompi/mca/mpool/rdma \
> >                           $(PKGDIR)/lib/src/ompi/mca/mpool/sm \
> >                           $(PKGDIR)/lib/src/ompi/mca/mtl/base \
> >                           $(PKGDIR)/lib/src/ompi/mca/op/base \
> >                           $(PKGDIR)/lib/src/ompi/mca/osc/base \
> >                           $(PKGDIR)/lib/src/ompi/mca/osc/pt2pt \
> >                           $(PKGDIR)/lib/src/ompi/mca/osc/rdma \
> >                           $(PKGDIR)/lib/src/ompi/mca/pml/base \
> >                           $(PKGDIR)/lib/src/ompi/mca/pml/cm \
> >                           $(PKGDIR)/lib/src/ompi/mca/pml/crcpw \
> >                           $(PKGDIR)/lib/src/ompi/mca/pml/csum \
> >                           $(PKGDIR)/lib/src/ompi/mca/pml/ob1 \
> >                           $(PKGDIR)/lib/src/ompi/mca/pml/v \
> >
> >         $(PKGDIR)/lib/src/ompi/mca/pml/v/mca/vprotocol/base \
> >
> >         $(PKGDIR)/lib/src/ompi/mca/pml/v/mca/vprotocol/pessimist \
> >                           $(PKGDIR)/lib/src/ompi/mca/pubsub/base \
> >                           $(PKGDIR)/lib/src/ompi/mca/pubsub/orte \
> >                           $(PKGDIR)/lib/src/ompi/mca/rcache/base \
> >                           $(PKGDIR)/lib/src/ompi/mca/rcache/vma \
> >                           $(PKGDIR)/lib/src/ompi/mca/topo/base \
> >                           $(PKGDIR)/lib/src/ompi/mca/topo/unity \
> >                           $(PKGDIR)/lib/src/ompi/mpi/c \
> >                           $(PKGDIR)/lib/src/ompi/mpi/c/profile \
> >                           $(PKGDIR)/lib/src/ompi/op \
> >                           $(PKGDIR)/lib/src/ompi/proc \
> >                           $(PKGDIR)/lib/src/ompi/request \
> >                           $(PKGDIR)/lib/src/ompi/runtime
> >
> >
> >         vpath %.c $(PKGDIR)
> >
> >         include $(L4DIR)/mk/lib.mk
> >
> >         CFLAGS := $(filter-out -Wextra -Wall -Wstrict-prototypes
> >         -Wmissing-prototypes -Wmissing-declarations,$(CFLAGS))
> >
> >
> >
> > Then, I got this error message:
> >
> > "given paths must be relative"
> >
> >
> > I can't figure out what is wrong with my Makefile. If you notice
> > something, please let me know. Thank you
> >
> >
> > regards,
> >
> > Irvanda
> >
> > _______________________________________________
> > l4-hackers mailing list
> > l4-hackers at os.inf.tu-dresden.de
> > http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
>
> --
>
> PGP Public Key:
> http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x08EDE1CD977FD2AB
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://os.inf.tu-dresden.de/pipermail/l4-hackers/attachments/20140124/6c9543a8/attachment.html>


More information about the l4-hackers mailing list