diff --git a/libparistraceroute/libparistraceroute/algorithms/mda.c b/libparistraceroute/libparistraceroute/algorithms/mda.c
index 9815673..698fab4 100644
--- a/libparistraceroute/libparistraceroute/algorithms/mda.c
+++ b/libparistraceroute/libparistraceroute/algorithms/mda.c
@@ -447,7 +447,7 @@ static void mda_handler_init(pt_loop_t * loop, event_t * event, mda_data_t ** pd
     /*
     // DEBUG
     probe_dump(skel);
-    printf("min_ttl = %d max_ttl = %d num_probes = %lu dst_ip = %s bound = %d max_branch = %d\n",
+    printf("min_ttl = %d max_ttl = %d num_probes = %u dst_ip = %s bound = %d max_branch = %d\n",
         options->traceroute_options.min_ttl,
         options->traceroute_options.max_ttl,
         options->traceroute_options.num_probes,
diff --git a/libparistraceroute/libparistraceroute/field.c b/libparistraceroute/libparistraceroute/field.c
index 68e4d1c..eb82347 100644
--- a/libparistraceroute/libparistraceroute/field.c
+++ b/libparistraceroute/libparistraceroute/field.c
@@ -269,7 +269,7 @@ void value_dump(const value_t * value, fieldtype_t type) {
             printf("%-10u", value->int32);
             break;
         case TYPE_UINT64:
-            printf("%lu", value->int64);
+            printf("%llu", (unsigned long long)value->int64);
             break;
         case TYPE_DOUBLE:
             printf("%lf", value->dbl);
diff --git a/libparistraceroute/libparistraceroute/layer.c b/libparistraceroute/libparistraceroute/layer.c
index 3156d0a..7b6e148 100644
--- a/libparistraceroute/libparistraceroute/layer.c
+++ b/libparistraceroute/libparistraceroute/layer.c
@@ -378,7 +378,7 @@ void layer_dump(const layer_t * layer, unsigned int indent) {
     if (!layer->protocol) {
         print_indent(indent);
         size = layer->segment_size;
-        printf("%-15s %lu\n", "size", size);
+        printf("%-15s %u\n", "size", (unsigned int)size);
         print_indent(indent);
         printf("%-15s", "data");
         for (i = 0; i < size; i++) {
diff --git a/libparistraceroute/libparistraceroute/network.c b/libparistraceroute/libparistraceroute/network.c
index 56bf2a5..efe2a1a 100644
--- a/libparistraceroute/libparistraceroute/network.c
+++ b/libparistraceroute/libparistraceroute/network.c
@@ -132,7 +132,7 @@ static void network_flying_probes_dump(network_t * network) {
     uint16_t   tag_probe;
     probe_t  * probe;
 
-    printf("\n%lu flying probe(s) :\n", num_flying_probes);
+    printf("\n%u flying probe(s) :\n", (unsigned int)num_flying_probes);
     for (i = 0; i < num_flying_probes; i++) {
         probe = dynarray_get_ith_element(network->probes, i);
         probe_extract_tag(probe, &tag_probe) ?
@@ -437,7 +437,7 @@ bool network_tag_probe(network_t * network, probe_t * probe)
      * encode information. */
 
     if (num_layers < 2 || !(last_layer = probe_get_layer(probe, num_layers - 2))) {
-        fprintf(stderr, "network_tag_probe: not enough layer (num_layers = %ld)\n", num_layers);
+        fprintf(stderr, "network_tag_probe: not enough layer (num_layers = %d)\n", (unsigned int)num_layers);
         goto ERR_GET_LAYER;
     }
 
@@ -455,7 +455,7 @@ bool network_tag_probe(network_t * network, probe_t * probe)
         probe_write_field(probe, "body", &tag, tag_size);
     } else {
         if (payload_size < tag_size) {
-            fprintf(stderr, "Payload too short (payload_size = %lu tag_size = %lu)\n", payload_size, tag_size);
+            fprintf(stderr, "Payload too short (payload_size = %u tag_size = %u)\n", (unsigned int)payload_size, (unsigned int)tag_size);
             goto ERR_INVALID_PAYLOAD;
         }
 
diff --git a/libparistraceroute/libparistraceroute/probe.c b/libparistraceroute/libparistraceroute/probe.c
index bef04e8..0b3bdbb 100644
--- a/libparistraceroute/libparistraceroute/probe.c
+++ b/libparistraceroute/libparistraceroute/probe.c
@@ -169,7 +169,7 @@ static bool probe_update_length(probe_t * probe)
             offset += layer->protocol->get_header_size(layer->segment);
         } else {
             // Update payload size
-            layer_set_segment_size(layer, packet_size - offset); 
+            layer_set_segment_size(layer, packet_size - offset);
         }
     }
 
@@ -424,7 +424,7 @@ void probe_dump(const probe_t * probe)
     if (probe->delay) {
         printf("probe delay \n\n");
         field_dump(probe->delay);
-        printf("number of probes left to send: (%ld) \n\n", probe->left_to_send);
+        printf("number of probes left to send: (%d) \n\n", (int)probe->left_to_send);
         printf("probe structure\n\n");
     }
 
@@ -819,7 +819,7 @@ static field_t * probe_create_metafield_ext(const probe_t * probe, const char *
 
     // TODO We've hardcoded the flow-id in the src_port and we only support the "flow_id" metafield
     // In IPv6, flow_id should be set thanks to probe_set_field
-    // We substract 24000 to the port (see probe_set_metafield_ext) 
+    // We substract 24000 to the port (see probe_set_metafield_ext)
     return probe_extract(probe, "src_port", &src_port) ?
         IMAX("flow_id", src_port - 24000) :
         NULL;
@@ -1025,7 +1025,7 @@ bool probe_extract_ext(const probe_t * probe, const char * name, size_t depth, v
 
         if ((layer = probe_get_layer(probe, i))
         &&   layer_extract(layer, name, value)) {
-            return true; 
+            return true;
         }
     }
 
diff --git a/libparistraceroute/paris-traceroute/paris-traceroute.c b/libparistraceroute/paris-traceroute/paris-traceroute.c
index 48743aa..1c05f38 100644
--- a/libparistraceroute/paris-traceroute/paris-traceroute.c
+++ b/libparistraceroute/paris-traceroute/paris-traceroute.c
@@ -47,7 +47,7 @@
 #define UDP_DEFAULT_DST_PORT  33456
 #define UDP_DST_PORT_USING_U  53
 
-#define TCP_DEFAULT_SRC_PORT  16449 
+#define TCP_DEFAULT_SRC_PORT  16449
 #define TCP_DEFAULT_DST_PORT  16963
 #define TCP_DST_PORT_USING_T  80
 
@@ -120,7 +120,7 @@ ERR_OPTIONS_CREATE:
 }
 
 //---------------------------------------------------------------------------
-// Options checking 
+// Options checking
 //---------------------------------------------------------------------------
 
 static bool check_ip_version(bool is_ipv4, bool is_ipv6)
@@ -432,9 +432,9 @@ int main(int argc, char ** argv)
 
     printf("traceroute to %s (", dst_ip);
     address_dump(&dst_addr);
-    printf("), %u hops max, %ld bytes packets\n",
+    printf("), %u hops max, %u bytes packets\n",
         ptraceroute_options->max_ttl,
-        packet_get_size(probe->packet)
+        (unsigned int)packet_get_size(probe->packet)
     );
 
     // Add an algorithm instance in the main loop
