1/^dl_load_file/a 2. 3/SaveError(aTHX_ "%s",dlerror())/c 4 { 5 char *error = dlerror(); 6#ifdef __LP64__ 7 char *cp; 8 char *err = NULL; 9#endif /* __LP64__ */ 10 if (!error) error = "Unknown dlopen error"; 11#ifdef __LP64__ 12 else if ((cp = strstr(error, ": no matching architecture in universal wrapper")) != NULL) { 13 char *p = strchr(error, '\t'); 14 if (p && ++p < cp) { 15 asprintf(&err, "%.*s: no appropriate 64-bit architecture (see \"man perl\" for running in 32-bit mode)", (cp - p), p); 16 if (err) error = err; 17 } 18 } 19#endif /* __LP64__ */ 20 SaveError(aTHX_ "%s", error); 21#ifdef __LP64__ 22 if (err) free(err); 23#endif /* __LP64__ */ 24 } 25. 26w 27