diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 31fe917389dfacd7c17682c3ca2d0bb8d707af7b..dcf70b95484f61ea2d4c11142770b73b48a991df 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,4 +1,4 @@
-image: hpclib/hiepacs
+nimage: hpclib/hiepacs
 
 stages:
   - build
@@ -34,6 +34,7 @@ test_spm:
       - spm.lcov
       - spm-gcov.log
   script:
+    - source install/bin/spm_env.sh
     - (cd build &&
        eval "ctest
              $TESTS_RESTRICTION
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f86c8d0a5d76da21bcb80cd42b33c440ca5af74c..1f8fea6b75c26c51890bcddf97b108d7caa9ae68 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -93,7 +93,6 @@ endif()
 
 
 list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake_modules")
-include(GenSPMPkgConfig)
 include(AddSourceFiles)
 
 # The current version number
@@ -246,6 +245,11 @@ install(TARGETS spm
 install(FILES include/spm.h
   DESTINATION include )
 
+### Build pkg-config and environment file
+include(GenSPMPkgConfig)
+spm_generate_pkgconfig_file()
+spm_generate_env_file()
+
 ### Add documented files to the global property
 add_documented_files(
   DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
diff --git a/cmake_modules/GenSPMPkgConfig.cmake b/cmake_modules/GenSPMPkgConfig.cmake
index 0a1fc3357f858da57a46796620dc495080a3d9b1..935b432f3b3df4aa1eb9fd34509c4c162e815cfb 100644
--- a/cmake_modules/GenSPMPkgConfig.cmake
+++ b/cmake_modules/GenSPMPkgConfig.cmake
@@ -78,7 +78,7 @@
 # GENERATE_PKGCONFIG_FILE: generate files spm.pc
 #
 ###
-macro(GENERATE_SPM_PKGCONFIG_FILE)
+macro(spm_generate_pkgconfig_file)
 
   set(SPM_PKGCONFIG_LIBS "-lspm")
   set(SPM_PKGCONFIG_LIBS_PRIVATE "-lm")
@@ -89,7 +89,7 @@ macro(GENERATE_SPM_PKGCONFIG_FILE)
 
   set(_output_spm_file "${CMAKE_BINARY_DIR}/spm.pc")
   configure_file(
-    "${CMAKE_CURRENT_SOURCE_DIR}/lib/pkgconfig/spm.pc.in"
+    "${CMAKE_CURRENT_SOURCE_DIR}/tools/spm.pc.in"
     "${_output_spm_file}"
     @ONLY
     )
@@ -98,19 +98,19 @@ macro(GENERATE_SPM_PKGCONFIG_FILE)
     DESTINATION lib/pkgconfig
     )
 
-endmacro(GENERATE_SPM_PKGCONFIG_FILE)
+endmacro(spm_generate_pkgconfig_file)
 
 ###
 #
 # generate_env_file: generate files pastix.pc
 #
 ###
-macro(generate_env_file)
+macro(spm_generate_env_file)
 
     # Create .sh file
     # ---------------
     configure_file(
-      "${CMAKE_CURRENT_SOURCE_DIR}/spm_env.sh.in"
+      "${CMAKE_CURRENT_SOURCE_DIR}/tools/spm_env.sh.in"
       "${CMAKE_BINARY_DIR}/bin/spm_env.sh" @ONLY)
 
     # installation
@@ -118,7 +118,7 @@ macro(generate_env_file)
     install(FILES "${CMAKE_BINARY_DIR}/bin/spm_env.sh"
       DESTINATION bin)
 
-endmacro(generate_env_file)
+endmacro(spm_generate_env_file)
 
 ##
 ## @end file GenPkgConfig.cmake
diff --git a/lib/pkgconfig/spm.pc.in b/tools/spm.pc.in
similarity index 100%
rename from lib/pkgconfig/spm.pc.in
rename to tools/spm.pc.in
diff --git a/tools/spm_env.sh.in b/tools/spm_env.sh.in
new file mode 100644
index 0000000000000000000000000000000000000000..1ae1a3813e0cf805866a2bc7a4db061d4661174b
--- /dev/null
+++ b/tools/spm_env.sh.in
@@ -0,0 +1,36 @@
+#
+#  @file spm_env.sh
+#
+#  @copyright 2016-2017 Bordeaux INP, CNRS (LaBRI UMR 5800), Inria,
+#                       Univ. Bordeaux. All rights reserved.
+#
+#  @version 6.0.0
+#  @author Mathieu Faverge
+#  @date 2017-06-24
+#
+#!/bin/sh
+
+LIB=spm
+
+export SPM_DIR=@CMAKE_INSTALL_PREFIX@
+
+for i in PATH DYLD_LIBRARY_PATH LD_LIBRARY_PATH LIBRARY_PATH LD_RUN_PATH INCLUDE INCLUDE_PATH PKG_CONFIG_PATH PYTHONPATH
+do
+
+  for j in /spm
+  do
+    cmd1="echo \\\"\$$i\\\" | sed -E 's+^(\(.*:|\))[^:]*${j}[^:]*(\(|:.*\))$+\1\2+' | sed 's/::/:/' | sed 's/^://' | sed 's/:$//' "
+    temp=`eval $cmd1`;
+    eval "$i=$temp";
+  done
+done
+
+export PATH=$PATH:$SPM_DIR/bin
+export LD_RUN_PATH=$LD_RUN_PATH:$SPM_DIR/lib
+export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$SPM_DIR/lib
+export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:$SPM_DIR/lib
+export LIBRARY_PATH=$LIBRARY_PATH:$SPM_DIR/lib
+export PYTHONPATH=$PYTHONPATH:$SPM_DIR/lib/python
+export INCLUDE=$INCLUDE:$SPM_DIR/include
+export INCLUDE_PATH=$INCLUDE_PATH:$SPM_DIR/include
+export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$SPM_DIR/lib/pkgconfig