diff --git a/sflphone-client-gnome/src/actions.c b/sflphone-client-gnome/src/actions.c
index c92f3e67a2fec46eb01b0ca3619fbbcb9e0360f1..008592f7b231ae230d6b6563dff7874a8feac25a 100644
--- a/sflphone-client-gnome/src/actions.c
+++ b/sflphone-client-gnome/src/actions.c
@@ -1199,7 +1199,6 @@ void sflphone_fill_call_list (void)
 {
 
     gchar** calls = (gchar**) dbus_get_call_list();
-    gchar** pl;
     GHashTable *call_details;
     callable_obj_t *c;
     gchar *callID;
@@ -1207,7 +1206,7 @@ void sflphone_fill_call_list (void)
     DEBUG ("sflphone_fill_call_list");
 
     if (calls) {
-        for (pl=calls; *calls; calls++) {
+        for (; *calls; calls++) {
             c = g_new0 (callable_obj_t, 1);
             callID = (gchar*) (*calls);
             call_details = dbus_get_call_details (callID);
@@ -1229,7 +1228,6 @@ void sflphone_fill_conference_list (void)
     // TODO Fetch the active conferences at client startup
 
     gchar** conferences;
-    gchar** pl;
     GHashTable *conference_details;
     gchar* conf_id;
     conference_obj_t* conf;
@@ -1239,7 +1237,7 @@ void sflphone_fill_conference_list (void)
     conferences = dbus_get_conference_list();
 
     if (conferences) {
-        for (pl = conferences; *conferences; conferences++) {
+        for (; *conferences; conferences++) {
             conf = g_new0 (conference_obj_t, 1);
             conf_id = (gchar*) (*conferences);
 
diff --git a/sflphone-client-gnome/src/codeclist.c b/sflphone-client-gnome/src/codeclist.c
index b17be65c68146875baff446702788c251986d79a..4d263df510cbea0969b963e4f6a3319091b15079 100644
--- a/sflphone-client-gnome/src/codeclist.c
+++ b/sflphone-client-gnome/src/codeclist.c
@@ -70,7 +70,7 @@ void codec_list_init (GQueue **queue)
 void codec_capabilities_load (void)
 {
 
-    gchar **codecs = NULL, **pl = NULL, **specs = NULL;
+    gchar **codecs = NULL, **specs = NULL;
     guint payload;
 
     // Create the queue object that will contain the global list of audio codecs
@@ -84,7 +84,7 @@ void codec_capabilities_load (void)
 
     if (codecs != NULL) {
         // Add the codecs in the list
-        for (pl=codecs; *codecs; codecs++) {
+        for (; *codecs; codecs++) {
 
             codec_t *c;
             payload = atoi (*codecs);
diff --git a/sflphone-client-gnome/src/config/accountconfigdialog.c b/sflphone-client-gnome/src/config/accountconfigdialog.c
index 4eccca7a3b806a6a76eb28cfa9e7b07579da40b7..4b86dad105a00d167b715066775ab27e0ee61176 100644
--- a/sflphone-client-gnome/src/config/accountconfigdialog.c
+++ b/sflphone-client-gnome/src/config/accountconfigdialog.c
@@ -285,8 +285,6 @@ static GtkWidget* create_basic_tab (account_t **a)
 #endif
 
     // Default settings
-    gchar *curAccountID = "";
-    gchar *curAccountEnabled = "true";
     gchar *curAccountType = "SIP";
     gchar *curAlias = "";
     gchar *curUsername = "";
@@ -305,9 +303,7 @@ static GtkWidget* create_basic_tab (account_t **a)
 
     // Load from SIP/IAX/Unknown ?
     if (currentAccount) {
-        curAccountID = currentAccount->accountID;
         curAccountType = g_hash_table_lookup (currentAccount->properties, ACCOUNT_TYPE);
-        curAccountEnabled = g_hash_table_lookup (currentAccount->properties, ACCOUNT_ENABLED);
         curAlias = g_hash_table_lookup (currentAccount->properties, ACCOUNT_ALIAS);
         curHostname = g_hash_table_lookup (currentAccount->properties, ACCOUNT_HOSTNAME);
         curPassword = g_hash_table_lookup (currentAccount->properties, ACCOUNT_PASSWORD);
diff --git a/sflphone-client-gnome/src/config/addressbook-config.c b/sflphone-client-gnome/src/config/addressbook-config.c
index 74852236a908136ac74a6ecf7ab33ee5f87cfd00..f2da4d5a28e5fca7455b70851ac8d40000b0cf65 100644
--- a/sflphone-client-gnome/src/config/addressbook-config.c
+++ b/sflphone-client-gnome/src/config/addressbook-config.c
@@ -314,7 +314,6 @@ create_addressbook_settings()
 
     GtkListStore *store;
     GtkCellRenderer *renderer;
-    GtkTreeSelection *tree_selection;
     GtkTreeViewColumn *tree_view_column;
 
     // Load the user value
@@ -408,9 +407,6 @@ create_addressbook_settings()
     // Create tree view with list store
     book_tree_view = gtk_tree_view_new_with_model (GTK_TREE_MODEL (store));
 
-    // Get tree selection manager
-    tree_selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (book_tree_view));
-
     // Active column
     renderer = gtk_cell_renderer_toggle_new();
     tree_view_column = gtk_tree_view_column_new_with_attributes ("", renderer, "active", COLUMN_BOOK_ACTIVE, NULL);
diff --git a/sflphone-client-gnome/src/config/audioconf.c b/sflphone-client-gnome/src/config/audioconf.c
index 581264a7bb75dcb7983c45fb8bad406d68b77583..069e0c4285d1874077f86d69d29bf9d8b5086333 100644
--- a/sflphone-client-gnome/src/config/audioconf.c
+++ b/sflphone-client-gnome/src/config/audioconf.c
@@ -146,7 +146,6 @@ preferences_dialog_fill_output_audio_device_list()
 
     GtkTreeIter iter;
     gchar** list;
-    gchar** audioDevice;
     int index;
 
     gtk_list_store_clear (outputlist);
@@ -157,7 +156,7 @@ preferences_dialog_fill_output_audio_device_list()
     // For each device name included in list
     int c = 0;
 
-    for (audioDevice = list; *list ; list++) {
+    for (; *list ; list++) {
         index = dbus_get_audio_device_index (*list);
         gtk_list_store_append (outputlist, &iter);
         gtk_list_store_set (outputlist, &iter, 0, *list, 1, index, -1);
@@ -176,7 +175,6 @@ preferences_dialog_fill_ringtone_audio_device_list()
 
     GtkTreeIter iter;
     gchar** list;
-    gchar** audioDevice;
     int index;
 
     gtk_list_store_clear (ringtonelist);
@@ -187,7 +185,7 @@ preferences_dialog_fill_ringtone_audio_device_list()
     // For each device name in the list
     int c = 0;
 
-    for (audioDevice = list; *list; list++) {
+    for (; *list; list++) {
         index = dbus_get_audio_device_index (*list);
         gtk_list_store_append (ringtonelist, &iter);
         gtk_list_store_set (ringtonelist, &iter, 0, *list, 1, index, -1);
@@ -285,7 +283,6 @@ preferences_dialog_fill_input_audio_device_list()
 
     GtkTreeIter iter;
     gchar** list;
-    gchar** audioDevice;
     int index ;
     gtk_list_store_clear (inputlist);
 
@@ -294,7 +291,7 @@ preferences_dialog_fill_input_audio_device_list()
 
     // For each device name included in list
     //int c = 0;
-    for (audioDevice = list; *list; list++) {
+    for (; *list; list++) {
         index = dbus_get_audio_device_index (*list);
         gtk_list_store_append (inputlist, &iter);
         gtk_list_store_set (inputlist, &iter, 0, *list, 1, index, -1);
@@ -799,8 +796,9 @@ active_echo_cancel(void)
 }
 
 void
-echo_tail_length_changed(GtkRange *range, gpointer  user_data)
+echo_tail_length_changed(GtkRange *range, gpointer user_data)
 {
+    (void) user_data; /* UNUSED */
     gint value;
     value = (gint)gtk_range_get_value(range);
 
@@ -810,6 +808,7 @@ echo_tail_length_changed(GtkRange *range, gpointer  user_data)
 void
 echo_delay_changed(GtkRange *range, gpointer  user_data)
 {
+    (void) user_data; /* UNUSED */
     gint value;
     value = (gint)gtk_range_get_value(range);
 
@@ -963,8 +962,6 @@ GtkWidget* create_audio_configuration()
     GtkWidget *frame;
     GtkWidget *enableNoiseReduction;
     GtkWidget *enableEchoCancel;
-    GtkWidget *echoTailLength;
-    GtkWidget *echoDelay;
     gboolean noisesuppressActive;
     gboolean echoCancelActive;
     gchar *state;
diff --git a/sflphone-client-gnome/src/config/audioconf.h b/sflphone-client-gnome/src/config/audioconf.h
index 6563ebc5135f2b22c3caad65b5e1233e48fa46e1..7df80871c71703cd61595615efa8d9ec4fed591a 100644
--- a/sflphone-client-gnome/src/config/audioconf.h
+++ b/sflphone-client-gnome/src/config/audioconf.h
@@ -31,7 +31,7 @@
 #ifndef __AUDIO_CONF_H
 #define __AUDIO_CONF_H
 
-#include <actions.h>
+#include "actions.h"
 
 GtkWidget* create_audio_configuration (void);
 GtkWidget* create_codecs_configuration (account_t **a);
diff --git a/sflphone-client-gnome/src/config/preferencesdialog.c b/sflphone-client-gnome/src/config/preferencesdialog.c
index 96e3ee0347ca77a8acb312e7a7314af6f9c9973b..53f449959404c04fb005666f8f16ae591f553076 100644
--- a/sflphone-client-gnome/src/config/preferencesdialog.c
+++ b/sflphone-client-gnome/src/config/preferencesdialog.c
@@ -35,15 +35,15 @@
 #include <stdlib.h>
 #include <stdio.h>
 #include <string.h>
-#include <eel-gconf-extensions.h>
+#include "eel-gconf-extensions.h"
 
-#include <accountconfigdialog.h>
-#include <addressbook-config.h>
-#include <shortcuts-config.h>
-#include <audioconf.h>
-#include <hooks-config.h>
-#include <audioconf.h>
-#include <uimanager.h>
+#include "accountconfigdialog.h"
+#include "addressbook-config.h"
+#include "shortcuts-config.h"
+#include "audioconf.h"
+#include "hooks-config.h"
+#include "audioconf.h"
+#include "uimanager.h"
 
 /**
  * Local variables
@@ -341,7 +341,7 @@ selection_changed_cb (GtkIconView *view, gpointer user_data UNUSED)
 /**
  * Show configuration window with tabs
  */
-void
+guint
 show_preferences_dialog ()
 {
     GtkDialog * dialog;
@@ -429,6 +429,7 @@ show_preferences_dialog ()
     dialogOpen = FALSE;
 
     gtk_widget_destroy (GTK_WIDGET (dialog));
+    return result;
 }
 
 
diff --git a/sflphone-client-gnome/src/config/preferencesdialog.h b/sflphone-client-gnome/src/config/preferencesdialog.h
index 075eed23c46354bf1cf648745feecc90c7e10f9a..2fe6885b81d77bab6a92486cc980ccb38f85dc86 100644
--- a/sflphone-client-gnome/src/config/preferencesdialog.h
+++ b/sflphone-client-gnome/src/config/preferencesdialog.h
@@ -99,12 +99,6 @@ GtkWidget * create_codec_table();
  */
 GtkWidget * create_accounts_tab (GtkDialog * dialog);
 
-/**
- * Create the audio configuration tab and add it to the main configuration window
- * @return GtkWidget* The widget created
- */
-GtkWidget * create_audio_tab();
-
 /**
  * Create the recording configuration tab and add it to the main configuration window
  */
@@ -113,7 +107,7 @@ GtkWidget * create_recording_settings();
 /**
  * Display the main configuration window
  */
-void show_preferences_dialog();
+guint show_preferences_dialog();
 
 void preferences_dialog_set_stun_visible();
 
diff --git a/sflphone-client-gnome/src/contacts/addressbook/eds.c b/sflphone-client-gnome/src/contacts/addressbook/eds.c
index 625d6f53f894aeb1f214853860384f31330b0c70..e58679cda88c438fe3b801a91dc7fadda75c08d5 100644
--- a/sflphone-client-gnome/src/contacts/addressbook/eds.c
+++ b/sflphone-client-gnome/src/contacts/addressbook/eds.c
@@ -497,6 +497,8 @@ init_eds_mutex() {
 static void
 authenticate_source (EBook *book)
 {
+    (void) book; /* unused */
+    /*
     const gchar *auth_domain;
     const gchar *password = NULL;
     const gchar *component_name;
@@ -538,7 +540,6 @@ authenticate_source (EBook *book)
     if (auth) {
         component_name = auth_domain ? auth_domain : "Addressbook";
 
-/*
         password = e_passwords_get_password (component_name, uri);
 
         if (e_book_authenticate_user (book, user, password, auth, &err)) {
@@ -547,8 +548,9 @@ authenticate_source (EBook *book)
         else {
             ERROR ("Addressbook: authentication error");
         }
-*/
+
     }
+*/
 }
 
 /**
@@ -559,7 +561,6 @@ fill_books_data ()
 {
     GSList *list, *l;
     ESourceList *source_list = NULL;
-    gboolean default_found;
 
     DEBUG ("Addressbook: Fill books data");
 
@@ -584,10 +585,6 @@ fill_books_data ()
         books_data = NULL;
     }
 
-
-    // in case default property is not set for any addressbook
-    default_found = FALSE;
-
     for (l = list; l != NULL; l = l->next) {
 
         ESourceGroup *group = l->data;
@@ -611,7 +608,6 @@ fill_books_data ()
             if (prop) {
                 if (strcmp (prop, "true") == 0) {
                     book_data->isdefault = TRUE;
-                    default_found = TRUE;
                 } else {
                     book_data->isdefault = FALSE;
                 }
diff --git a/sflphone-client-gnome/src/uimanager.c b/sflphone-client-gnome/src/uimanager.c
index a603725b30380dd1888cb23af55e563e70a7c63c..30f37ab51fdee31d6ce761e6c2c288ff08604de7 100644
--- a/sflphone-client-gnome/src/uimanager.c
+++ b/sflphone-client-gnome/src/uimanager.c
@@ -51,7 +51,6 @@
 void show_edit_number (callable_obj_t *call);
 
 static GtkWidget *toolbar;
-static GtkWidget *toolbarWindows;
 
 guint transfertButtonConnId; //The button toggled signal connection ID
 guint recordButtonConnId; //The button toggled signal connection ID
@@ -1107,8 +1106,8 @@ show_popup_menu (GtkWidget *my_widget, GdkEventButton *event)
     // TODO update the selection to make sure the call under the mouse is the call selected
 
     // call type boolean
-    gboolean pickup = FALSE, hangup = FALSE, hold = FALSE, copy = FALSE, record =
-                                          FALSE, detach = FALSE, im = FALSE;
+    gboolean pickup = FALSE, hangup = FALSE, hold = FALSE, copy = FALSE,
+             record = FALSE, im = FALSE;
     gboolean accounts = FALSE;
 
     // conference type boolean
@@ -1128,16 +1127,13 @@ show_popup_menu (GtkWidget *my_widget, GdkEventButton *event)
                 case CALL_STATE_INCOMING:
                     pickup = TRUE;
                     hangup = TRUE;
-                    detach = TRUE;
                     break;
                 case CALL_STATE_HOLD:
                     hangup = TRUE;
                     hold = TRUE;
-                    detach = TRUE;
                     break;
                 case CALL_STATE_RINGING:
                     hangup = TRUE;
-                    detach = TRUE;
                     break;
                 case CALL_STATE_DIALING:
                     pickup = TRUE;
@@ -1149,7 +1145,6 @@ show_popup_menu (GtkWidget *my_widget, GdkEventButton *event)
                     hangup = TRUE;
                     hold = TRUE;
                     record = TRUE;
-                    detach = TRUE;
                     im = TRUE;
                     break;
                 case CALL_STATE_BUSY:
diff --git a/sflphone-common/libs/iax2/iax.c b/sflphone-common/libs/iax2/iax.c
index 67f9db7b0de8292232075eed9c72456cdde5aacf..3ae3c25b82df55487b1ae934f36afca477ccec39 100644
--- a/sflphone-common/libs/iax2/iax.c
+++ b/sflphone-common/libs/iax2/iax.c
@@ -1289,7 +1289,7 @@ static int send_command_samples(struct iax_session *i, char type, int command, u
 
 int iax_transfer(struct iax_session *session, const char *number)
 {
-	static int res;				//Return Code
+	//static int res;				//Return Code
 	struct iax_ie_data ied;			//IE Data Structure (Stuff To Send)
 
 	// Clear The Memory Used For IE Buffer
@@ -1299,7 +1299,7 @@ int iax_transfer(struct iax_session *session, const char *number)
 	iax_ie_append_str(&ied, IAX_IE_CALLED_NUMBER, number);
 
 	// Send The Transfer Command - Asterisk Will Handle The Rest!
-	res = send_command(session, AST_FRAME_IAX, IAX_COMMAND_TRANSFER, 0, ied.buf, ied.pos, -1);
+	/*res =*/ send_command(session, AST_FRAME_IAX, IAX_COMMAND_TRANSFER, 0, ied.buf, ied.pos, -1);
 
 	// Return Success
 	return 0;
diff --git a/sflphone-common/libs/pjproject/pjlib/src/pj/ssl_sock_ossl.c b/sflphone-common/libs/pjproject/pjlib/src/pj/ssl_sock_ossl.c
index 3f25e0ba98094d88900397750f9bbf836adcbf3e..9e2833f65deeebc82dc523efc8c11c6849a03839 100644
--- a/sflphone-common/libs/pjproject/pjlib/src/pj/ssl_sock_ossl.c
+++ b/sflphone-common/libs/pjproject/pjlib/src/pj/ssl_sock_ossl.c
@@ -312,8 +312,8 @@ static pj_status_t init_openssl(void)
 	    meth = (SSL_METHOD*)TLSv1_server_method();
 	if (!meth)
 	    meth = (SSL_METHOD*)SSLv3_server_method();
-	if (!meth)
-	    meth = (SSL_METHOD*)SSLv2_server_method();
+	/*if (!meth)
+	    meth = (SSL_METHOD*)SSLv2_server_method();*/
 	pj_assert(meth);
 
 	ctx=SSL_CTX_new(meth);
@@ -389,8 +389,10 @@ static pj_status_t create_ssl_ctx(pj_ssl_sock_t *ssock, SSL_CTX **p_ctx)
 	ssl_method = (SSL_METHOD*)TLSv1_method();
 	break;
     case PJ_SSL_SOCK_PROTO_SSL2:
+    /*
 	ssl_method = (SSL_METHOD*)SSLv2_method();
-	break;
+    */
+	return PJ_EINVAL;
     case PJ_SSL_SOCK_PROTO_SSL3:
 	ssl_method = (SSL_METHOD*)SSLv3_method();
 	break;
diff --git a/sflphone-common/libs/pjproject/pjsip/src/pjsip/sip_transport_tls_ossl.c b/sflphone-common/libs/pjproject/pjsip/src/pjsip/sip_transport_tls_ossl.c
index ba4e638c7aa8153350017561a55f9a5c19cb9535..ed8c13d64cc3ecc6d128a031c41f430c84e88399 100644
--- a/sflphone-common/libs/pjproject/pjsip/src/pjsip/sip_transport_tls_ossl.c
+++ b/sflphone-common/libs/pjproject/pjsip/src/pjsip/sip_transport_tls_ossl.c
@@ -365,8 +365,10 @@ static pj_status_t create_ctx( struct tls_listener *lis, SSL_CTX **p_ctx)
 	ssl_method = TLSv1_method();
 	break;
     case PJSIP_SSLV2_METHOD:
-	ssl_method = SSLv2_method();
-	break;
+	/* ssl_method = SSLv2_method(); */
+	ssl_report_error(lis_name, 4, PJSIP_TLS_EINVMETHOD,
+			 "Error creating SSL context: SSLv2 not supported");
+	return PJSIP_TLS_EINVMETHOD;
     case PJSIP_SSLV3_METHOD:
 	ssl_method = SSLv3_method();
 	break;
diff --git a/sflphone-common/src/audio/audiorecord.cpp b/sflphone-common/src/audio/audiorecord.cpp
index e92e23464027b4058e848d6e07007d1f281cfa87..690a364dfc6d78116ec5471dc9c22896e5a23a5c 100644
--- a/sflphone-common/src/audio/audiorecord.cpp
+++ b/sflphone-common/src/audio/audiorecord.cpp
@@ -131,7 +131,7 @@ void AudioRecord::initFileName (std::string peerNumber)
     savePath_.append (fName);
 }
 
-void AudioRecord::openFile()
+bool AudioRecord::openFile()
 {
 
     bool result = false;
@@ -156,6 +156,8 @@ void AudioRecord::openFile()
             result = openExistingWavFile();
         }
     }
+
+    return result;
 }
 
 
diff --git a/sflphone-common/src/audio/audiorecord.h b/sflphone-common/src/audio/audiorecord.h
index 499691b907cf4d4d025dd1a5dd0efb9373534f07..ed08882f38316bbbe1b065f1649103687fde441f 100644
--- a/sflphone-common/src/audio/audiorecord.h
+++ b/sflphone-common/src/audio/audiorecord.h
@@ -64,8 +64,9 @@ class AudioRecord
          * @param fileName A string containing teh file (with/without extension)
          * @param type     The sound file format (FILE_RAW, FILE_WAVE)
          * @param format   Internal sound format (INT16 / INT32)
+         * @return bool    True if file was opened
          */
-        void openFile();
+        bool openFile();
 
         /**
          * Close the opend recording file. If wave: cout the number of byte
diff --git a/sflphone-common/src/audio/audiortp/AudioRtpRecordHandler.cpp b/sflphone-common/src/audio/audiortp/AudioRtpRecordHandler.cpp
index e9f9117b4a5caf8de9097f01fe76e7c38e496e07..02aa5ee387e1412aeaaa93cf7c09f3a41893729e 100644
--- a/sflphone-common/src/audio/audiortp/AudioRtpRecordHandler.cpp
+++ b/sflphone-common/src/audio/audiortp/AudioRtpRecordHandler.cpp
@@ -255,7 +255,7 @@ int AudioRtpRecordHandler::processDataEncode (void)
 {
     SFLDataFormat *micData = _audioRtpRecord._micData;
     unsigned char *micDataEncoded = _audioRtpRecord._micDataEncoded;
-    SFLDataFormat *micDataEchoCancelled = _audioRtpRecord._micDataEchoCancelled;
+    //SFLDataFormat *micDataEchoCancelled = _audioRtpRecord._micDataEchoCancelled;
     SFLDataFormat *micDataConverted = _audioRtpRecord._micDataConverted;
 
     int codecFrameSize = getCodecFrameSize();
diff --git a/sflphone-common/src/audio/codecs/celtcodec.cpp b/sflphone-common/src/audio/codecs/celtcodec.cpp
index 17f9577f5d29aa983c6d4acb7fe8667d6b2d1cfa..6db7d29fb623620bb610b3be65255ec1d29fb7ff 100644
--- a/sflphone-common/src/audio/codecs/celtcodec.cpp
+++ b/sflphone-common/src/audio/codecs/celtcodec.cpp
@@ -127,12 +127,12 @@ class Celt : public AudioCodec
 
         virtual int decode (short *dst, unsigned char *src, unsigned int size) {
 #ifdef BUILD_CELT_91 // == 91
-            int err = 0;
-            err = celt_decode (_dec, src, size, (celt_int16*) dst, size);
+            //int err = 0;
+            /*err =*/ celt_decode (_dec, src, size, (celt_int16*) dst, size);
 #endif
 #ifdef BUILD_CELT_71
-            int err = 0;
-            err = celt_decode (_dec, src, size, (celt_int16*) dst);
+            //int err = 0; // FIXME: check error code
+            /*err =*/ celt_decode (_dec, src, size, (celt_int16*) dst);
 #endif
             return _frameSize * sizeof (celt_int16);
         }
diff --git a/sflphone-common/src/audio/sound/audiofile.cpp b/sflphone-common/src/audio/sound/audiofile.cpp
index d0c231ff98cb69ea7c8351f176711058c333e75c..b1ae79afb0c37ea9a18aae3c2c045d1fc37a0fca 100644
--- a/sflphone-common/src/audio/sound/audiofile.cpp
+++ b/sflphone-common/src/audio/sound/audiofile.cpp
@@ -453,7 +453,7 @@ bool WaveFile::openExistingWaveFile (const std::string& fileName, int audioSampl
 }
 
 
-bool WaveFile::loadFile (const std::string& filename, AudioCodec *codec , unsigned int sampleRate)
+bool WaveFile::loadFile (const std::string& filename, AudioCodec * /*codec*/, unsigned int sampleRate)
 {
     openFile (filename, sampleRate);
 
diff --git a/sflphone-common/src/audio/speexechocancel.cpp b/sflphone-common/src/audio/speexechocancel.cpp
index ad171c4d6dcd46a71a55dafc76dc19d9b9d3cb26..1d5a17384d1d47bcb3c4ee7e67d4e55b5aaf310d 100644
--- a/sflphone-common/src/audio/speexechocancel.cpp
+++ b/sflphone-common/src/audio/speexechocancel.cpp
@@ -119,7 +119,7 @@ void SpeexEchoCancel::putData (SFLDataFormat *inputData, int nbBytes)
     _debug("EchoCancel: Put spkrData data, updated size %d, put nbBytes", _spkrData->AvailForGet());
 }
 
-int SpeexEchoCancel::getData(SFLDataFormat *outputData) { return 0; }
+int SpeexEchoCancel::getData(SFLDataFormat * /*outputData*/) { return 0; }
 
 void SpeexEchoCancel::process (SFLDataFormat *data UNUSED, int nbBytes UNUSED) {}
 
diff --git a/sflphone-common/src/config/config.cpp b/sflphone-common/src/config/config.cpp
index 08a14e50ffcf3c6c08658fd7b6b78b711b6682e0..58335732fc15a8c171980b4d53b94d927ee34cd7 100644
--- a/sflphone-common/src/config/config.cpp
+++ b/sflphone-common/src/config/config.cpp
@@ -321,8 +321,6 @@ ConfigTree::saveConfigTree (const std::string& fileName)
 int
 ConfigTree::populateFromFile (const std::string& fileName)
 {
-    bool out = false;
-
     _debug ("ConfigTree: Populate from file %s", fileName.c_str());
 
     if (fileName.empty()) {
@@ -335,7 +333,6 @@ ConfigTree::populateFromFile (const std::string& fileName)
 
     if (!file.is_open()) {
         file.open (fileName.data(), std::fstream::out);
-        out = true;
 
         if (!file.is_open()) {
             return 0;
diff --git a/sflphone-common/src/config/yamlnode.cpp b/sflphone-common/src/config/yamlnode.cpp
index 010b4e66ef75254d811de565e93d34e2827ee05c..8b79a4625c9b579f00622db1f3f373e4ce86e810 100644
--- a/sflphone-common/src/config/yamlnode.cpp
+++ b/sflphone-common/src/config/yamlnode.cpp
@@ -43,7 +43,6 @@ void YamlDocument::addNode (YamlNode *node)
 
 YamlNode *YamlDocument::popNode()
 {
-    Sequence::iterator it = doc.begin();
     YamlNode *node = doc.front();
 
     //removed element's destructor is called
diff --git a/sflphone-common/src/dbus/callmanager.h b/sflphone-common/src/dbus/callmanager.h
index 8bea67b486b4094892d1e91054608756e6cfd27b..b1931ad652bb78630189ac146210660e3a5dd7b4 100644
--- a/sflphone-common/src/dbus/callmanager.h
+++ b/sflphone-common/src/dbus/callmanager.h
@@ -33,6 +33,7 @@
 
 #pragma GCC diagnostic ignored "-Wignored-qualifiers"
 #pragma GCC diagnostic ignored "-Wunused-parameter"
+#pragma GCC diagnostic ignored "-Wunused-but-set-variable"
 #include "callmanager-glue.h"
 #pragma GCC diagnostic warning "-Wignored-qualifiers"
 #pragma GCC diagnostic warning "-Wunused-parameter"
diff --git a/sflphone-common/src/dbus/configurationmanager.h b/sflphone-common/src/dbus/configurationmanager.h
index c00a1d8ff930f742be6f27335bc9e6a84ae70ca5..c8dca7d2a1f7cfed16bb9e8aa958d0ae333b71bb 100644
--- a/sflphone-common/src/dbus/configurationmanager.h
+++ b/sflphone-common/src/dbus/configurationmanager.h
@@ -36,6 +36,7 @@
 
 #pragma GCC diagnostic ignored "-Wignored-qualifiers"
 #pragma GCC diagnostic ignored "-Wunused-parameter"
+#pragma GCC diagnostic ignored "-Wunused-but-set-variable"
 #include "configurationmanager-glue.h"
 #pragma GCC diagnostic warning "-Wignored-qualifiers"
 #pragma GCC diagnostic warning "-Wunused-parameter"
diff --git a/sflphone-common/src/dbus/instance.h b/sflphone-common/src/dbus/instance.h
index c8bcf36d9717b20eddb6d766a96c269f040c47c7..93920e40e2c5b1276d7636adefc124406fecb7bc 100644
--- a/sflphone-common/src/dbus/instance.h
+++ b/sflphone-common/src/dbus/instance.h
@@ -33,6 +33,7 @@
 
 #pragma GCC diagnostic ignored "-Wignored-qualifiers"
 #pragma GCC diagnostic ignored "-Wunused-parameter"
+#pragma GCC diagnostic ignored "-Wunused-but-set-variable"
 #include "instance-glue.h"
 #pragma GCC diagnostic warning "-Wignored-qualifiers"
 #pragma GCC diagnostic warning "-Wunused-parameter"
diff --git a/sflphone-common/src/iax/iaxvoiplink.cpp b/sflphone-common/src/iax/iaxvoiplink.cpp
index 275b9cda000f788baed00eb0b27402f86205d60b..fac27823de13bd1d0b1ba38fd9c20196e15f9f62 100644
--- a/sflphone-common/src/iax/iaxvoiplink.cpp
+++ b/sflphone-common/src/iax/iaxvoiplink.cpp
@@ -645,7 +645,7 @@ IAXVoIPLink::transfer (const CallID& id, const std::string& to) throw (VoipLinkE
 }
 
 bool
-IAXVoIPLink::attendedTransfer(const CallID& transferID, const CallID& targetID)
+IAXVoIPLink::attendedTransfer(const CallID& /*transferID*/, const CallID& /*targetID*/)
 {
 	// TODO implement attended transfer for IAX
 	return false;
@@ -684,7 +684,9 @@ IAXVoIPLink::carryingDTMFdigits (const CallID& id, char code)
 }
 
 bool
-IAXVoIPLink::sendTextMessage (sfl::InstantMessaging *module, const std::string& callID, const std::string& message, const std::string& from)
+IAXVoIPLink::sendTextMessage (sfl::InstantMessaging *module,
+        const std::string& callID, const std::string& message,
+        const std::string& /*from*/)
 {
     IAXCall* call = getIAXCall (callID);
 
diff --git a/sflphone-common/src/managerimpl.cpp b/sflphone-common/src/managerimpl.cpp
index 3d580a3985c49d901f2a7d7e3ca8641626484b2e..6a6a53382e5be3515713b2a9f50c5f2fb55df674 100644
--- a/sflphone-common/src/managerimpl.cpp
+++ b/sflphone-common/src/managerimpl.cpp
@@ -41,7 +41,7 @@
 #include "global.h"
 #include "sip/sipaccount.h"
 
-#include "audio/audiolayer.h"
+//#include "audio/audiolayer.h"
 #include "audio/alsa/alsalayer.h"
 #include "audio/pulseaudio/pulselayer.h"
 #include "audio/sound/tonelist.h"
@@ -277,7 +277,7 @@ bool ManagerImpl::outgoingCall (const std::string& account_id,
         _debug ("Manager: Has current call (%s) put it onhold", current_call_id.c_str());
 
         // std::string currentCallState = getCallDetails(current_call_id).find("CALL_STATE")->second;
-        Call *call = getAccountLink(getAccountFromCall(current_call_id))->getCall(current_call_id);
+        //Call *call = getAccountLink(getAccountFromCall(current_call_id))->getCall(current_call_id);
 
         // if this is not a conferenceand this and is not a conference participant
         if (!isConference (current_call_id) && !participToConference (current_call_id)) {
@@ -2214,7 +2214,6 @@ bool ManagerImpl::playATone (Tone::TONEID toneId)
 {
 
     bool hasToPlayTone;
-    AudioLayer *audiolayer;
 
     // _debug ("Manager: Play tone %d", toneId);
 
diff --git a/sflphone-common/src/sip/SdesNegotiator.cpp b/sflphone-common/src/sip/SdesNegotiator.cpp
index b2bf3dca2198b7b7ca22a7b609a68d9d6d61e863..a8827cbd2c626bdc3261218c4162d130acbab5e5 100644
--- a/sflphone-common/src/sip/SdesNegotiator.cpp
+++ b/sflphone-common/src/sip/SdesNegotiator.cpp
@@ -60,8 +60,7 @@ std::vector<CryptoAttribute *> SdesNegotiator::parse (void)
     * generalSyntaxPattern,
     * tagPattern,
     * cryptoSuitePattern,
-    * keyParamsPattern,
-    * sessionParamPattern;
+    * keyParamsPattern;
 
     try {
 
@@ -83,6 +82,7 @@ std::vector<CryptoAttribute *> SdesNegotiator::parse (void)
             "(?P<mkiValue>[0-9]+)\\:"			 \
             "(?P<mkiLength>[0-9]{1,3})\\;?)?", "g");
 
+        /*
         sessionParamPattern = new Pattern (
             "(?P<sessionParam>(kdr\\=[0-9]{1,2}|" \
             "UNENCRYPTED_SRTP|" \
@@ -92,6 +92,7 @@ std::vector<CryptoAttribute *> SdesNegotiator::parse (void)
             "FEC_KEY=(?P<fecKey>" + keyParamsPattern->getPattern() + ")|" \
             "WSH=(?P<wsh>[0-9]{1,2})|" \
             "(?<!\\-)[[:graph:]]+))*", "g"); // srtp-session-extension
+        */
 
     } catch (compile_error& exception) {
         throw parse_error ("A compile exception occured on a pattern.");