I second this. So far, I've been putting abstractions / libs in a top level folder and add a declare to them in the main patch. I *only* use [decalre -stdpath] in an abstraction as a simple replacement for [import] in vanilla.

for now, the solution i found is to organised things like this :

projet/
dir1/
abstraction1/
foo
patch1.pd

dir2/
abstraction2
bar
patch2.pd
all/
patch.pd

and using declare -path ../patch1/abstraction1 in patch1.
but i don't really like that.

Yeah, this is what I do. A similar setup:

project/
    libs/
        lib_declares.pd <-- has one big [declare -lib lib1 -lib lib2 ...etc] inside for all the needed pd-ext externals
        rjlib
        rc-patches
        ... etc
    Unit-Control.pd <--- main pd patch that opens and closes song patches
    songs/
       Song1.pd <---- [declare -path . -path ../../libs/rj -path ../../libs/rc-patches] + include [../../libs/lib_declare.pd]
       Song2.pd <-- same deal
       Song 3.pd <--- loading some of the shared samples via ../../samples/drums/kick1.wav, etc
       etc ...
    samples/
        drums/kick1.wav etc
        effects/

On Oct 8, 2013, at 10:39 AM, pd-list-request@iem.at wrote:

From: Frank Barknecht <fbar@footils.org>
Subject: Re: [PD] declare and abstraction
Date: October 8, 2013 10:30:38 AM EDT
To: pd-list@iem.at


Hi Cyrille,

I struggled with that for a long time myself. Unless something changed in
0.44/0.45 the only really reliable solution I found was to *only* use [declare]
in a *toplevel* file, and never in any abstraction.  So for your layout I would
only put a [declare] into "patch.pd" like: 

In patch.pd: 
  [declare -path . 
      -path dir1 -path dir2 
      -path dir1/abstraction1 -path dir2/abstraction2]

Note that the first path that I always set is to the current directory (".") -
it's useful to have as well.

Ciao
-- 
Frank

--------
Dan Wilcox
@danomatika