--- Python-2.7.1/Python/dynload_shlib.c.orig 2011-12-05 00:00:00.000000000 +0100 +++ Python-2.7.1/Python/dynload_shlib.c 2011-12-05 00:02:51.000000000 +0100 @@ -84,6 +84,15 @@ PyOS_snprintf(funcname, sizeof(funcname), LEAD_UNDERSCORE "init%.200s", shortname); + /* On IOS, dlopen crash as soon as we try to open one of our library. + * Instead, we have done a redirection of linking to convert our .so into a + * .a. Then the main executable is linked with theses symbol. So, instead + * of trying to dlopen, directly do the dlsym. + * -- Mathieu + */ + return (dl_funcptr) dlsym(RTLD_MAIN_ONLY, funcname); + +#if 0 if (fp != NULL) { int i; struct stat statb; @@ -140,4 +149,5 @@ handles[nhandles++].handle = handle; p = (dl_funcptr) dlsym(handle, funcname); return p; +#endif }