Mesa 7.6.1 error: 'struct intel_drm_batchbuffer' has no member named 'bo'

04/04/2015 20:43 9TAILS#1
Guten Abend,

Ich habe bei FreeBSD versucht "Devil" zu installieren mit:


PHP Code:
cd /usr/ports/graphics/devil && make install clean 
Und als Mesa 7.6.1 installiert werden sollte kam der error
(ganze Konsolenmeldungen)

PHP Code:
===>   devil-1.7.8_10,1 depends on file: /usr/local/bin/automake-1.12 found
===>   devil-1.7.8_10,1 depends on file: /usr/local/bin/autoconf-2.69 found
===>   devil-1.7.8_10,1 depends on packagelibtool>=2.4 found
===>   devil-1.7.8_10,1 depends on executablepkgconf found
===>   devil-1.7.8_10,1 depends on shared libraryjpeg.11 found
===>   devil-1.7.8_10,1 depends on shared libraryjasper.4 found
===>   devil-1.7.8_10,1 depends on shared librarylcms.1 found
===>   devil-1.7.8_10,1 depends on shared librarymng.1 found
===>   devil-1.7.8_10,1 depends on shared librarypng15 found
===>   devil-1.7.8_10,1 depends on shared librarytiff.4 found
===>   devil-1.7.8_10,1 depends on shared libraryglut.12 not found
===>    Verifying install for glut.12 in /usr/ports/graphics/freeglut
===>   freeglut-2.8.0 depends on file: /usr/local/libdata/pkgconfig/ice.pc found
===>   freeglut-2.8.0 depends on file: /usr/local/libdata/pkgconfig/xi.pc found
===>   freeglut-2.8.0 depends on file: /usr/local/libdata/pkgconfig/xxf86vm.pc found
===>   freeglut-2.8.0 depends on file: /usr/local/libdata/pkgconfig/xrandr.pc found
===>   freeglut-2.8.0 depends on packagelibtool>=2.4 found
===>   freeglut-2.8.0 depends on shared libraryGLU.1 not found
===>    Verifying install for GLU.1 in /usr/ports/graphics/libGLU
===>   libGLU-7.6.1_2 depends on executablemakedepend found
===>   libGLU-7.6.1_2 depends on file: /usr/local/lib/python2.7/site-packages/libxml2.py found
===>   libGLU-7.6.1_2 depends on file: /usr/local/bin/python2.7 found
===>   libGLU-7.6.1_2 depends on executablebison found
===>   libGLU-7.6.1_2 depends on executablegmake found
===>   libGLU-7.6.1_2 depends on file: /usr/local/libdata/pkgconfig/glproto.pc found
===>   libGLU-7.6.1_2 depends on file: /usr/local/libdata/pkgconfig/dri2proto.pc found
===>   libGLU-7.6.1_2 depends on file: /usr/local/libdata/pkgconfig/x11.pc found
===>   libGLU-7.6.1_2 depends on file: /usr/local/libdata/pkgconfig/xext.pc found
===>   libGLU-7.6.1_2 depends on file: /usr/local/libdata/pkgconfig/xxf86vm.pc found
===>   libGLU-7.6.1_2 depends on file: /usr/local/libdata/pkgconfig/xdamage.pc found
===>   libGLU-7.6.1_2 depends on file: /usr/local/libdata/pkgconfig/xfixes.pc found
===>   libGLU-7.6.1_2 depends on shared libraryGL.1 not found
===>    Verifying install for GL.1 in /usr/ports/graphics/libGL
===>  Building for libGL-7.6.1_3
gmake
[1]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src'
Making sources for autoconf
gmake[2]: Entering directory 
`/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/glx/x11'
gmake[2]: Nothing to be done for `default'
.
gmake[2]: Leaving directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/glx/x11'
gmake[2]: Entering directory 
`/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/mesa'
gmake[3]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/mesa/x86'
gmake[3]: Nothing to be done for `default'.
gmake[3]: Leaving directory 
`/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/mesa/x86'
gmake[3]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/mesa/drivers'
gmake[4]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/mesa/drivers/dri'
gmake[4]: Leaving directory 
`/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/mesa/drivers/dri'
gmake[3]: Leaving directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/mesa/drivers'
gmake[2]: Leaving directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/mesa'
gmake[2]: Entering directory 
`/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium'
gmake[3]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary'
gmake[4]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary/rbug'
gmake[4]: Nothing to be done for 
`default'.
gmake[4]: Leaving directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary/rbug'
gmake[4]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary/draw'
gmake[4]: Nothing to be done for 
`default'.
gmake[4]: Leaving directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary/draw'
gmake[4]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary/translate'
gmake[4]: Nothing to be done for 
`default'.
gmake[4]: Leaving directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary/translate'
gmake[4]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary/cso_cache'
gmake[4]: Nothing to be done for 
`default'.
gmake[4]: Leaving directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary/cso_cache'
gmake[4]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary/pipebuffer'
gmake[4]: Nothing to be done for 
`default'.
gmake[4]: Leaving directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary/pipebuffer'
gmake[4]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary/tgsi'
gmake[4]: Nothing to be done for 
`default'.
gmake[4]: Leaving directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary/tgsi'
gmake[4]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary/sct'
gmake[4]: Nothing to be done for 
`default'.
gmake[4]: Leaving directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary/sct'
gmake[4]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary/rtasm'
gmake[4]: Nothing to be done for 
`default'.
gmake[4]: Leaving directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary/rtasm'
gmake[4]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary/util'
gmake[4]: Nothing to be done for 
`default'.
gmake[4]: Leaving directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary/util'
gmake[4]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary/indices'
gmake[4]: Nothing to be done for 
`default'.
gmake[4]: Leaving directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary/indices'
gmake[3]: Leaving directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/auxiliary'
gmake[3]: Entering directory 
`/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/drivers'
gmake[4]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/drivers/softpipe'
gmake[4]: Nothing to be done for `default'.
gmake[4]: Leaving directory 
`/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/drivers/softpipe'
gmake[4]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/drivers/failover'
gmake[4]: Nothing to be done for `default'.
gmake[4]: Leaving directory 
`/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/drivers/failover'
gmake[4]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/drivers/trace'
gmake[4]: Nothing to be done for `default'.
gmake[4]: Leaving directory 
`/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/drivers/trace'
gmake[4]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/drivers/identity'
gmake[4]: Nothing to be done for `default'.
gmake[4]: Leaving directory 
`/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/drivers/identity'
gmake[4]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/drivers/i915simple'
gmake[4]: Nothing to be done for `default'.
gmake[4]: Leaving directory 
`/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/drivers/i915simple'
gmake[3]: Leaving directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/drivers'
gmake[3]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/state_trackers'
gmake[3]: Leaving directory 
`/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/state_trackers'
gmake[2]: Leaving directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium'
gmake[2]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/winsys'
gmake[3]: Entering directory 
`/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/winsys/drm'
gmake[4]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/winsys/drm/intel'
gmake[5]: Entering directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/winsys/drm/intel/gem'
cc -c -I. -I../../../../../../src/gallium/include -I../../../../../../src/gallium/auxiliary -I../../../../../../src/gallium/drivers -I/src/gallium/include -I/src/gallium/auxiliary -I/src/gallium/drivers -I/usr/local/include -I/usr/local/include/drm   -I/usr/local/include -O2 -fno-strict-aliasing -pipe -Wall -Wmissing-prototypes -std=c99  -fno-strict-aliasing  -fPIC  -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DHAVE_ALIAS -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING   intel_drm_batchbuffer.c -o intel_drm_batchbuffer.o
In file included from intel_drm_batchbuffer.c:2:
intel_drm_winsys.h:8:26: error: intel_bufmgr.h: No such file or directory
In file included from intel_drm_batchbuffer.c:2:
intel_drm_winsys.h:30: error: expected specifier-qualifier-list before 'drm_intel_bufmgr'
intel_drm_winsys.h:41: error: expected ')' before '*' token
intel_drm_winsys.h:56: error: expected specifier-qualifier-list before 'drm_intel_bo'
intel_drm_winsys.h:72: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
intel_drm_batchbuffer.c:23: error: expected specifier-qualifier-list before 'drm_intel_bo'
intel_drm_batchbuffer.c: In function 'intel_drm_batchbuffer_reset':
intel_drm_batchbuffer.c:37: error: 'struct intel_drm_batchbuffer' has no member named 'bo'
intel_drm_batchbuffer.c:38: warning: implicit declaration of function 'drm_intel_bo_unreference'
intel_drm_batchbuffer.c:38: error: 'struct intel_drm_batchbuffer' has no member named 'bo'
intel_drm_batchbuffer.c:39: error: 'struct intel_drm_batchbuffer' has no member named 'bo'
intel_drm_batchbuffer.c:39: warning: implicit declaration of function 'drm_intel_bo_alloc'
intel_drm_batchbuffer.c:39: error: 'struct <anonymous>' has no member named 'gem'
intel_drm_batchbuffer.c:43: warning: implicit declaration of function 'drm_intel_bo_map'
intel_drm_batchbuffer.c:43: error: 'struct intel_drm_batchbuffer' has no member named 'bo'
intel_drm_batchbuffer.c:44: error: 'struct intel_drm_batchbuffer' has no member named 'bo'
intel_drm_batchbuffer.c: In function 'intel_drm_batchbuffer_reloc':
intel_drm_batchbuffer.c:115: warning: implicit declaration of function 'drm_intel_bo_emit_reloc'
intel_drm_batchbuffer.c:115: error: 'struct intel_drm_batchbuffer' has no member named 'bo'
intel_drm_batchbuffer.c:116: warning: implicit declaration of function 'intel_bo'
intel_drm_batchbuffer.c:120: error: invalid type argument of '->'
intel_drm_batchbuffer.c: In function 'intel_drm_batchbuffer_flush':
intel_drm_batchbuffer.c:159: warning: implicit declaration of function 'drm_intel_bo_unmap'
intel_drm_batchbuffer.c:159: error: 'struct intel_drm_batchbuffer' has no member named 'bo'
intel_drm_batchbuffer.c:162: warning: implicit declaration of function 'drm_intel_bo_exec'
intel_drm_batchbuffer.c:162: error: 'struct intel_drm_batchbuffer' has no member named 'bo'
intel_drm_batchbuffer.c:167: error: 'struct intel_drm_batchbuffer' has no member named 'bo'
intel_drm_batchbuffer.c:168: error: 'struct intel_drm_batchbuffer' has no member named 'bo'
intel_drm_batchbuffer.c:175: error: 'struct intel_drm_batchbuffer' has no member named 'bo'
intel_drm_batchbuffer.c:190: warning: implicit declaration of function 'intel_drm_fence_create'
intel_drm_batchbuffer.c:190: error: 'struct intel_drm_batchbuffer' has no member named 'bo'
intel_drm_batchbuffer.c:190: warning: assignment makes pointer from integer without a cast
intel_drm_batchbuffer.c: In function 'intel_drm_batchbuffer_destroy':
intel_drm_batchbuffer.c:202: error: 'struct intel_drm_batchbuffer' has no member named 'bo'
intel_drm_batchbuffer.c:203: error: 'struct intel_drm_batchbuffer' has no member named 'bo'
gmake[5]: *** [intel_drm_batchbuffer.o] Error 1
gmake[5]: Leaving directory 
`/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/winsys/drm/intel/gem'
gmake[4]: *** [default] Error 1
gmake[4]: Leaving directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/winsys/drm/intel'
gmake[3]: *** [default] Error 1
gmake
[3]: Leaving directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/winsys/drm'
gmake[2]: *** [default] Error 1
gmake[2]: Leaving directory 
`/usr/ports/graphics/libGL/work/Mesa-7.6.1/src/gallium/winsys'
gmake[1]: *** [subdirs] Error 1
gmake[1]: Leaving directory `/usr/ports/graphics/libGL/work/Mesa-7.6.1/src'
gmake: *** [default] Error 1
*** Error code 1

Stop in 
/usr/ports/graphics/libGL.
*** 
Error code 1

Stop in 
/usr/ports/graphics/libGLU.
*** 
Error code 1

Stop in 
/usr/ports/graphics/freeglut.
*** 
Error code 1

Stop in 
/usr/ports/graphics/devil.
*** 
Error code 1

Stop in 
/usr/ports/graphics/devil
intel_drm_batchbuffer.c :
PHP Code:
#include "intel_drm_winsys.h"
#include "util/u_memory.h"

#include "i915_drm.h"

#define BATCH_RESERVED 16

#define INTEL_DEFAULT_RELOCS 100
#define INTEL_MAX_RELOCS 400

#define INTEL_BATCH_NO_CLIPRECTS 0x1
#define INTEL_BATCH_CLIPRECTS    0x2

#undef INTEL_RUN_SYNC

struct intel_drm_batchbuffer
{
   
struct intel_batchbuffer base;

   
size_t actual_size;

   
drm_intel_bo *bo;
};

static 
INLINE struct intel_drm_batchbuffer *
intel_drm_batchbuffer(struct intel_batchbuffer *batch)
{
   return (
struct intel_drm_batchbuffer *)batch;
}

static 
void
intel_drm_batchbuffer_reset
(struct intel_drm_batchbuffer *batch)
{
   
struct intel_drm_winsys *idws intel_drm_winsys(batch->base.iws);

   if (
batch->bo)
      
drm_intel_bo_unreference(batch->bo);
   
batch->bo drm_intel_bo_alloc(idws->pools.gem,
                                  
"gallium3d_batchbuffer",
                                  
batch->actual_size,
                                  
4096);
   
drm_intel_bo_map(batch->boTRUE);
   
batch->base.map batch->bo->virtual;

   
memset(batch->base.map0batch->actual_size);
   
batch->base.ptr batch->base.map;
   
batch->base.size batch->actual_size BATCH_RESERVED;
   
batch->base.relocs 0;
}

static 
struct intel_batchbuffer *
intel_drm_batchbuffer_create(struct intel_winsys *iws)
{
   
struct intel_drm_winsys *idws intel_drm_winsys(iws);
   
struct intel_drm_batchbuffer *batch CALLOC_STRUCT(intel_drm_batchbuffer);

   
batch->base.map NULL;
   
batch->base.ptr NULL;
   
batch->base.size 0;

   
batch->base.relocs 0;
   
batch->base.max_relocs 300;/*INTEL_DEFAULT_RELOCS;*/

   
batch->base.iws iws;

   
batch->actual_size idws->max_batch_size;

   
intel_drm_batchbuffer_reset(batch);

   return &
batch->base;
}

static 
int
intel_drm_batchbuffer_reloc
(struct intel_batchbuffer *ibatch,
                            
struct intel_buffer *buffer,
                            
enum intel_buffer_usage usage,
                            
unsigned pre_add)
{
   
struct intel_drm_batchbuffer *batch intel_drm_batchbuffer(ibatch);
   
unsigned write_domain 0;
   
unsigned read_domain 0;
   
unsigned offset;
   
int ret 0;

   
assert(batch->base.relocs batch->base.max_relocs);

   if (
usage == INTEL_USAGE_SAMPLER) {
      
write_domain 0;
      
read_domain I915_GEM_DOMAIN_SAMPLER;

   } else if (
usage == INTEL_USAGE_RENDER) {
      
write_domain I915_GEM_DOMAIN_RENDER;
      
read_domain I915_GEM_DOMAIN_RENDER;

   } else if (
usage == INTEL_USAGE_2D_TARGET) {
      
write_domain I915_GEM_DOMAIN_RENDER;
      
read_domain I915_GEM_DOMAIN_RENDER;

   } else if (
usage == INTEL_USAGE_2D_SOURCE) {
      
write_domain 0;
      
read_domain I915_GEM_DOMAIN_RENDER;

   } else if (
usage == INTEL_USAGE_VERTEX) {
      
write_domain 0;
      
read_domain I915_GEM_DOMAIN_VERTEX;

   } else {
      
assert(0);
      return -
1;
   }

   
offset = (unsigned)(batch->base.ptr batch->base.map);

   
ret drm_intel_bo_emit_reloc(batch->booffset,
                                 
intel_bo(buffer), pre_add,
                                 
read_domain,
                                 
write_domain);

   ((
uint32_t*)batch->base.ptr)[0] = intel_bo(buffer)->offset pre_add;
   
batch->base.ptr += 4;

   if (!
ret)
      
batch->base.relocs++;

   return 
ret;
}

static 
void
intel_drm_batchbuffer_flush
(struct intel_batchbuffer *ibatch,
                            
struct pipe_fence_handle **fence)
{
   
struct intel_drm_batchbuffer *batch intel_drm_batchbuffer(ibatch);
   
unsigned used 0;
   
int ret 0;
   
int i;

   
assert(intel_batchbuffer_space(ibatch) >= 0);

   
used batch->base.ptr batch->base.map;
   
assert((used 3) == 0);

   if (
used 4) {
      
// MI_FLUSH | FLUSH_MAP_CACHE;
      
intel_batchbuffer_dword(ibatch, (0x0<<29)|(0x4<<23)|(1<<0));
      
// MI_NOOP
      
intel_batchbuffer_dword(ibatch, (0x0<<29)|(0x0<<23));
      
// MI_BATCH_BUFFER_END;
      
intel_batchbuffer_dword(ibatch, (0x0<<29)|(0xA<<23));
   } else {
      
//MI_FLUSH | FLUSH_MAP_CACHE;
      
intel_batchbuffer_dword(ibatch, (0x0<<29)|(0x4<<23)|(1<<0));
      
// MI_BATCH_BUFFER_END;
      
intel_batchbuffer_dword(ibatch, (0x0<<29)|(0xA<<23));
   }

   
used batch->base.ptr batch->base.map;

   
drm_intel_bo_unmap(batch->bo);

   
/* Do the sending to HW */
   
ret drm_intel_bo_exec(batch->bousedNULL00);
   
assert(ret == 0);

   if (
intel_drm_winsys(ibatch->iws)->dump_cmd) {
      
unsigned *ptr;
      
drm_intel_bo_map(batch->boFALSE);
      
ptr = (unsigned*)batch->bo->virtual;

      
debug_printf("%s:\n"__func__);
      for (
0used 4i++, ptr++) {
         
debug_printf("\t%08x:    %08x\n"i*4, *ptr);
      }

      
drm_intel_bo_unmap(batch->bo);
   } else {
#ifdef INTEL_RUN_SYNC
      
drm_intel_bo_map(batch->boFALSE);
      
drm_intel_bo_unmap(batch->bo);
#endif
   
}

   if (
fence) {
      
ibatch->iws->fence_reference(ibatch->iwsfenceNULL);

#ifdef INTEL_RUN_SYNC
      /* we run synced to GPU so just pass null */
      
(*fence) = intel_drm_fence_create(NULL);
#else
      
(*fence) = intel_drm_fence_create(batch->bo);
#endif
   
}

   
intel_drm_batchbuffer_reset(batch);
}

static 
void
intel_drm_batchbuffer_destroy
(struct intel_batchbuffer *ibatch)
{
   
struct intel_drm_batchbuffer *batch intel_drm_batchbuffer(ibatch);

   if (
batch->bo)
      
drm_intel_bo_unreference(batch->bo);

   
free(batch);
}

void intel_drm_winsys_init_batchbuffer_functions(struct intel_drm_winsys *idws)
{
   
idws->base.batchbuffer_create intel_drm_batchbuffer_create;
   
idws->base.batchbuffer_reloc intel_drm_batchbuffer_reloc;
   
idws->base.batchbuffer_flush intel_drm_batchbuffer_flush;
   
idws->base.batchbuffer_destroy intel_drm_batchbuffer_destroy;

Ich würde mich freuen, wenn mir jemand weiter helfen kann.

lG Tom Jessel :o