diff --git a/Inputs/DetectorConfiguration/e530.detector b/Inputs/DetectorConfiguration/e530.detector
index 5216e7a33ab6075249158d29adc46c004231b23f..9eae88d6be1d875d8e6d56a6f05a2713e79b02c5 100644
--- a/Inputs/DetectorConfiguration/e530.detector
+++ b/Inputs/DetectorConfiguration/e530.detector
@@ -25,7 +25,7 @@ Target
 	ANGLE= 0
 	X= 0
 	Y= 0
-	Z= -50
+	Z= 0
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%	
 AnnularS1
         Z=    -158.7
diff --git a/Inputs/EventGenerator/60Fe.reaction b/Inputs/EventGenerator/60Fe.reaction
index e15f59d708103f24b2d7046f890d305479e45dd7..92f87dfaa4c8cf1ff78e94b9d0f21feeca32902c 100644
--- a/Inputs/EventGenerator/60Fe.reaction
+++ b/Inputs/EventGenerator/60Fe.reaction
@@ -17,6 +17,6 @@ Transfert
 	SigmaPhiY= 0
 	CrossSectionPath= fe61_p3_2gs.n
 	ShootLight= 1
-	ShootHeavy= 1
+	ShootHeavy= 0
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
diff --git a/NPAnalysis/Gaspard/src/Analysis.cc b/NPAnalysis/Gaspard/Analysis.cxx
similarity index 98%
rename from NPAnalysis/Gaspard/src/Analysis.cc
rename to NPAnalysis/Gaspard/Analysis.cxx
index ca71dac2b4bf942804f578bcbf5c97010e259186..01edddb4663d15c07bf2c9f0a6e7bfabc09c6d17 100644
--- a/NPAnalysis/Gaspard/src/Analysis.cc
+++ b/NPAnalysis/Gaspard/Analysis.cxx
@@ -1,5 +1,4 @@
-#include "ObjectManager.hh"
-
+#include "Analysis.h"
 using namespace std;
 
 
@@ -62,7 +61,7 @@ int main(int argc,char** argv)
    RootOutput::getInstance()->GetTree()->Branch("Y",&Y,"Y/D") ;
 
    // Get GaspardTracker pointer
-   GaspardTracker* GPDTrack = (GaspardTracker*) myDetector->m_Detector["GASPARD"];
+   GaspardTracker* GPDTrack = (GaspardTracker*) myDetector->GetDetector("GASPARD");
 
    // Get the input TChain and treat it
    TChain* Chain = RootInput:: getInstance()->GetChain();
diff --git a/NPAnalysis/Gaspard/include/ObjectManager.hh b/NPAnalysis/Gaspard/Analysis.h
similarity index 100%
rename from NPAnalysis/Gaspard/include/ObjectManager.hh
rename to NPAnalysis/Gaspard/Analysis.h
diff --git a/NPAnalysis/Gaspard/Makefile b/NPAnalysis/Gaspard/Makefile
index 215794b2868b46e37601e95c6dedb6b1f84d7c11..702853b4ce67b172ee870654abb867771b47cce8 100644
--- a/NPAnalysis/Gaspard/Makefile
+++ b/NPAnalysis/Gaspard/Makefile
@@ -1,10 +1,31 @@
+# include same architecture file than for NPLib
+# so that consistency is ensured
+include $(NPLIB)/Makefile.arch
 
-Analyse:
-	make -C ./src
+# additional libraries
+LIBRARY  = `$(NPLIB)/liblist`
+LIBRARY += -L$(CLHEP_LIB_DIR) -l$(CLHEP_LIB)
+
+PROGRAMS	= Analysis
+
+all:	$(PROGRAMS)
+
+Analysis:	Analysis.o
+	$(LD) $(LDFLAGS) $^ $(LIBS) $(LIBRARY) $(OutPutOpt) $@
+	@echo "$@ done"
 	
+
+# rule for creating .o from .cxx
+.SUFFIXES: .$(SrcSuf)
+.$(SrcSuf).$(ObjSuf):
+	$(CXX) $(CXXFLAGS) $(INCLUDE) -c $<
+
+# some cleaning
 clean:
-	make clean -C ./src
+	rm -rf *.o
 
 distclean:
-	make clean -C ./src
-	rm Analysis
+	make clean; rm $(PROGRAMS)
+
+# dependences
+Analysis.o:	Analysis.cxx	Analysis.h
diff --git a/NPAnalysis/Gaspard/src/GNUmakefile b/NPAnalysis/Gaspard/src/GNUmakefile
deleted file mode 100644
index f6161b9f82e029dc18fb7568942a73af11abc948..0000000000000000000000000000000000000000
--- a/NPAnalysis/Gaspard/src/GNUmakefile
+++ /dev/null
@@ -1,42 +0,0 @@
-###Make file made by Adrien MATTA/ Institut de Physique Nucleaire d'Orsay IPNO###
-#			Made to compile the ROOT Analyser for MUST2 experiment
-
-CPP=g++
-EXEC=Analysis
-
-# local includes
-NPAINCLUDES = ../include
-
-# ROOT includes
-CXXFLAGS += `root-config --cflags`
-
-# CLHEP includes
-CXXFLAGS += -I$(CLHEP_INCLUDE_DIR)
-CXXFLAGS += -I$(NPAINCLUDES)
-CXXFLAGS += -I$(NPLIB)/include
-
-LDFLAGS  = `root-config --libs` -lMathMore
-LDFLAGS+= `$(NPLIB)/liblist`
-LDFLAGS+= -L$(CLHEP_LIB_DIR) -l$(CLHEP_LIB) 
-
-SRC= $(wildcard *.cc)
-INC= $(wildcard $(NPAINCLUDES)/*.hh)
-OBJ=$(SRC:.cc=.o)
-
-#all:$(EXEC)
-#	@$(CPP) -o $@ -c $< $(CXXFLAGS)
-
-Analysis:	Analysis.o $(INC)
-	@$(CPP) $(CXXFLAGS) -o $@ $^ $(LDFLAGS)
-	mv Analysis  ../Analysis
-
-%.o: %.cc
-	@$(CPP) $(CXXFLAGS) -o $@ -c $<
-	
-.PHONY: clean mrproper
-
-clean:
-	rm -rf *.o
-
-mrproper: clean
-	rm -rf $(EXEC)
diff --git a/NPLib/Makefile.arch b/NPLib/Makefile.arch
index c789cefaef5225636985973578c17b3bed39c388..2968bd84f174b090a47bf44233c8087ec18b80c6 100644
--- a/NPLib/Makefile.arch
+++ b/NPLib/Makefile.arch
@@ -366,7 +366,7 @@ ifeq ($(ARCH),macosx)
 CXX           = g++
 CXXFLAGS      = $(OPT2) -pipe -Wall -W -Woverloaded-virtual
 LD            = g++
-LDFLAGS       = $(OPT2) -mmacosx-version-min=$(MACOSXTARGET)
+LDFLAGS       = $(OPT2) -mmacosx-version-min=$(MACOSXTARGET) -bind_at_load
 # The SOFLAGS will be used to create the .dylib,
 # the .so will be created separately
 ifeq ($(subst $(MACOSX_MINOR),,1234),1234)
@@ -379,7 +379,8 @@ ifneq ($(subst $(MACOSX_MINOR),,12),12)
 UNDEFOPT      = suppress
 LD            = g++
 endif
-SOFLAGS       = -dynamiclib -single_module -undefined $(UNDEFOPT) -install_name $(CURDIR)/
+#SOFLAGS       = -dynamiclib -single_module -undefined $(UNDEFOPT) -install_name $(CURDIR)/
+SOFLAGS       = -dynamiclib -single_module -undefined $(UNDEFOPT)
 endif
 
 ifeq ($(ARCH),macosxicc)
@@ -398,7 +399,8 @@ DllSuf        = so
 else
 DllSuf        = dylib
 endif
-SOFLAGS       = -dynamiclib -single_module -undefined dynamic_lookup -install_name $(CURDIR)/
+#SOFLAGS       = -dynamiclib -single_module -undefined dynamic_lookup -install_name $(CURDIR)/
+SOFLAGS       = -dynamiclib -single_module -undefined $(UNDEFOPT)
 endif
 
 ifeq ($(ARCH),macosx64)
@@ -407,7 +409,7 @@ ifeq ($(ARCH),macosx64)
 CXX           = g++
 CXXFLAGS      = $(OPT2) -pipe -Wall -W -Woverloaded-virtual
 LD            = g++
-LDFLAGS       = $(OPT2) -mmacosx-version-min=$(MACOSXTARGET)
+LDFLAGS       = $(OPT2) -mmacosx-version-min=$(MACOSXTARGET) -bind_at_load
 # The SOFLAGS will be used to create the .dylib,
 # the .so will be created separately
 ifeq ($(subst $(MACOSX_MINOR),,1234),1234)
@@ -415,7 +417,8 @@ DllSuf        = so
 else
 DllSuf        = dylib
 endif
-SOFLAGS       = -dynamiclib -single_module -undefined dynamic_lookup -install_name $(CURDIR)/
+#SOFLAGS       = -dynamiclib -single_module -undefined dynamic_lookup -install_name $(CURDIR)/
+SOFLAGS       = -dynamiclib -single_module -undefined $(UNDEFOPT)
 endif
 
 ifeq ($(ARCH),win32)
@@ -480,6 +483,8 @@ LDFLAGS      += $(ROOTLDFLAGS)
 LIBS          = $(ROOTLIBS) $(SYSLIBS)
 GLIBS         = $(ROOTGLIBS) $(SYSLIBS)
 
+INCLUDE		= -I$(CLHEP_BASE_DIR)/include -I$(NPLIB)/include
+
 ifneq ($(ALTCC),)
    CC  = $(ALTCC)
 endif
@@ -497,11 +502,3 @@ ifneq ($(findstring g++, $(CXX)),)
 GCC_MAJOR := $(shell $(CXX) -dumpversion 2>&1 | cut -d'.' -f1)
 GCC_MINOR := $(shell $(CXX) -dumpversion 2>&1 | cut -d'.' -f2)
 endif
-
-CXXFLAGS     += $(ROOTCFLAGS)
-LDFLAGS      += $(ROOTLDFLAGS)
-LIBS          = $(ROOTLIBS) $(SYSLIBS)
-GLIBS         = $(ROOTGLIBS) $(SYSLIBS)
-
-INCLUDE		= -I$(CLHEP_BASE_DIR)/include -I$(NPLIB)/include
-
diff --git a/NPSimulation/GNUmakefile b/NPSimulation/GNUmakefile
index 48cda1a954be9eaea11353c4a0c336428ece48a0..08256961e27652015ac90c72986404f9905a68e5 100644
--- a/NPSimulation/GNUmakefile
+++ b/NPSimulation/GNUmakefile
@@ -15,7 +15,7 @@ endif
 # Result of compilation is put in (./$G4WORKDIR/bin/$G4SYSTEM/)
 # to execute your programm : ./$G4WORKDIR/bin/$G4SYSTEM/Simulation xx.reaction xx.detector
 G4WORKDIR = ./
-G4BIN = ./
+G4BIN = ./bin
 
 CPPFLAGS += $(shell root-config --cflags) 
 CPPFLAGS += -I$(NPLIB)/include