Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
be more verbose when dlopen fails
authorMartin Quinson <martin.quinson@loria.fr>
Thu, 20 Apr 2017 12:35:52 +0000 (14:35 +0200)
committerMartin Quinson <martin.quinson@loria.fr>
Thu, 20 Apr 2017 12:36:00 +0000 (14:36 +0200)
src/smpi/smpi_global.cpp

index 5910e15..3ba9c79 100644 (file)
@@ -463,7 +463,7 @@ static void smpi_init_options(){
       smpi_privatize_global_variables = SMPI_PRIVATIZE_NONE;
 
     else
-      xbt_die("Invalid value for smpi/privatization: %s", smpi_privatize_option);
+      xbt_die("Invalid value for smpi/privatization: '%s'", smpi_privatize_option);
 
     if (smpi_cpu_threshold < 0)
       smpi_cpu_threshold = DBL_MAX;
@@ -603,7 +603,7 @@ int smpi_main(const char* executable, int argc, char *argv[])
         void* handle = dlopen(target_executable.c_str(), RTLD_LAZY | RTLD_LOCAL | RTLD_DEEPBIND);
         unlink(target_executable.c_str());
         if (handle == nullptr)
-          xbt_die("dlopen failed");
+          xbt_die(bprintf("dlopen failed. Errno: %d (%s)", errno, strerror(errno)));
         smpi_entry_point_type entry_point = smpi_resolve_function(handle);
         if (!entry_point)
           xbt_die("Could not resolve entry point");