diff --git a/CMakeLists.txt b/CMakeLists.txt
index 10cdcea4266606b011b1a3fa8eb2b3456b24f000..cdd9be81eb77476e1fbe6e7bc5938cdcc76fa942 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -17,8 +17,8 @@ IF (NOT CMAKE_BUILD_TYPE)
  SET(CMAKE_BUILD_TYPE "DEBUG") 
 ENDIF (NOT CMAKE_BUILD_TYPE)
 
-SET(CMAKE_C_FLAGS_DEBUG "-g -Wall")
-SET(CMAKE_C_FLAGS_RELEASE "-O3")
+SET(CMAKE_CXX_FLAGS_DEBUG "-g -Wall")
+SET(CMAKE_CXX_FLAGS_RELEASE "-O3")
 
 ADD_SUBDIRECTORY(src)
 
diff --git a/src/examples/test_threads.cpp b/src/examples/test_threads.cpp
index 63c2754029d9aaae2d2f35879302f470edca1c08..1b21c7ead9176acb65d81b0447441abeebde2f43 100644
--- a/src/examples/test_threads.cpp
+++ b/src/examples/test_threads.cpp
@@ -61,6 +61,7 @@ void *my_thread_function2(void *param)
     i++;
     sleep(1);
   }
+  pthread_exit(NULL);
 }
 
 /// Function with parameters
diff --git a/src/examples/test_threadserver.cpp b/src/examples/test_threadserver.cpp
index 8ee5ac10695ba24fee1a88592316053c0a9c4e6a..db2e1ba02acd36e70dcabd38881ddfba433b3413 100644
--- a/src/examples/test_threadserver.cpp
+++ b/src/examples/test_threadserver.cpp
@@ -52,6 +52,7 @@ void *my_thread_function1(void *param)
     i++;
     sleep(1);
   }  
+  pthread_exit(NULL);
 }
 
 /**
diff --git a/src/logs/log.h b/src/logs/log.h
index 719a5eac5d7d7adb1d8d410b0d5741d9170aa795..8214581847f382bb0cec6980e34381cba7407905 100644
--- a/src/logs/log.h
+++ b/src/logs/log.h
@@ -233,7 +233,7 @@ class CLog
     template<class T>
     void log_vector(const std::vector<T>& values)
     {
-      int i=0;
+      unsigned int i=0;
 
       this->access.enter();
       this->time_stamp.set();