[Compilation Error] Given paths must be relative

Johan Dams johan.dams at wrdsystems.co.uk
Thu Jan 23 11:18:02 CET 2014


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 --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part
URL: <http://os.inf.tu-dresden.de/pipermail/l4-hackers/attachments/20140123/9913799b/attachment.asc>


More information about the l4-hackers mailing list