Dear users,

In trying to use tcltk, svDialogs and gsubfn I have encountered an error that seems to stem from package Tcl/Tk.

I can load tcltk, everything looks fine, but if I try ?tk_choose.dir or whatever, then R hangs and I have to force exit.

I have tried with svDialogs as well and here is what happens:

> sessionInfo()
R version 2.15.2 (2012-10-26)
Platform: i386-apple-darwin9.8.0/i386 (32-bit)
locale:
[1] fr_FR.UTF-8/fr_FR.UTF-8/fr_FR.UTF-8/C/fr_FR.UTF-8/fr_FR.UTF-8
attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

> library(svDialogs)
Le chargement a nécessité le package : svGUI
Le chargement a nécessité le package : svMisc
Le chargement a nécessité le package : tcltk
Chargement de Tcl/Tk...
 *** caught bus error ***
address 0x1, cause 'non-existent physical address'

Traceback:
 1: sys.parent()
 2: sys.function(sys.parent())
 3: formals(sys.function(sys.parent()))
 4: match.arg(encoding)
 5: match(match.arg(encoding), c("", "bytes", "UTF-8"))
 6: textConnection("rval", "w", local = TRUE)
 7: capture.output(print(args(dlgDir)))
 8: paste(capture.output(print(args(dlgDir))), collapse = "")
9: gsub("\\s+", " ", paste(capture.output(print(args(dlgDir))), collapse = ""))
10: doTryCatch(return(expr), name, parentenv, handler)
11: tryCatchOne(expr, names, parentenv, handlers[[1L]])
12: tryCatchList(expr, classes, parentenv, handlers)
13: tryCatch(expr, error = function(e) { call <- conditionCall(e) if (!is.null(call)) { if (identical(call[[1L]], quote(doTryCatch))) call <- sys.call(-4L) dcall <- deparse(call)[1L] prefix <- paste("Error in", dcall, ": ") LONG <- 75L msg <- conditionMessage(e) sm <- strsplit(msg, "\n")[[1L]] w <- 14L + nchar(dcall, type = "w") + nchar(sm[1L], type = "w") if (is.na(w)) w <- 14L + nchar(dcall, type = "b") + nchar(sm[1L], type = "b") if (w > LONG) prefix <- paste0(prefix, "\n ") } else prefix <- "Error : " msg <- paste0(prefix, conditionMessage(e), "\n") .Internal(seterrmessage(msg[1L])) if (!silent && identical(getOption("show.error.messages"), TRUE)) { cat(msg, file = stderr()) .Internal(printDeferredWarnings()) } invisible(structure(msg, class = "try-error", condition = e))}) 14: try(gsub("\\s+", " ", paste(capture.output(print(args(dlgDir))), collapse = "")), silent = TRUE)

Possible actions:
1: abort (with core dump, if enabled)
2: normal R exit
3: exit R without saving workspace
4: exit R saving workspace

> mydir <- dlgDir()

Everything from ***caught bus error*** appears only when I type the last line (mydir <- dlgDir()).

I have the same problem with any function from gsubfn, i.e. any function that uses tcltk...

Can anyone help me?

Ivan

--
Ivan CALANDRA
Université de Bourgogne
UMR CNRS/uB 6282 Biogéosciences
6 Boulevard Gabriel
21000 Dijon, FRANCE
+33(0)3.80.39.63.06
[email protected]
http://biogeosciences.u-bourgogne.fr/calandra

_______________________________________________
R-SIG-Mac mailing list
[email protected]
https://stat.ethz.ch/mailman/listinfo/r-sig-mac

Reply via email to