rstudio / tensorflow

TensorFlow for R
https://tensorflow.rstudio.com
Apache License 2.0
1.33k stars 320 forks source link

address 0x50, cause 'memory not mapped' #548

Open BillyChen123 opened 1 year ago

BillyChen123 commented 1 year ago

Hi tensorflow team, I've been trying to debug installing tensorflow (as described here: https://github.com/greta-dev/greta/issues/565) and it looks like the issue is regarding installing a specific version of tensorflow with code like the following: reticulate::conda_install(envname = 'greta-env', packages = c('numpy==1.16.4', 'tensorflow-probability==0.7.0', 'tensorflow==1.14.0'))

Then I run the reprex code:

reprex::reprex({
    greta:::have_tf()
},
si = TRUE,
std_out_err = TRUE)

It has an error. This reprex appears to crash R. See standard output and standard error for more details.

Standard output and error


 *** caught segfault ***
address 0x50, cause 'memory not mapped'

Traceback:
 1: py_module_import(module, convert = convert)
 2: import(module)
 3: doTryCatch(return(expr), name, parentenv, handler)
 4: tryCatchOne(expr, names, parentenv, handlers[[1L]])
 5: tryCatchList(expr, classes, parentenv, handlers)
 6: tryCatch({    import(module)    TRUE}, error = clear_error_handler(FALSE))
 7: reticulate::py_module_available("tensorflow")
 8: greta:::have_tf()
 9: eval(expr, envir, enclos)
10: eval(expr, envir, enclos)
11: eval_with_user_handlers(expr, envir, enclos, user_handlers)
12: withVisible(eval_with_user_handlers(expr, envir, enclos, user_handlers))
13: withCallingHandlers(withVisible(eval_with_user_handlers(expr,     envir, enclos, user_handlers)), warning = wHandler, error = eHandler,     message = mHandler)
14: doTryCatch(return(expr), name, parentenv, handler)
15: tryCatchOne(expr, names, parentenv, handlers[[1L]])
16: tryCatchList(expr, classes, parentenv, handlers)
17: 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        sm <- strsplit(conditionMessage(e), "\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 && isTRUE(getOption("show.error.messages"))) {        cat(msg, file = outFile)        .Internal(printDeferredWarnings())    }    invisible(structure(msg, class = "try-error", condition = e))})
18: try(f, silent = TRUE)
19: handle(ev <- withCallingHandlers(withVisible(eval_with_user_handlers(expr,     envir, enclos, user_handlers)), warning = wHandler, error = eHandler,     message = mHandler))
20: timing_fn(handle(ev <- withCallingHandlers(withVisible(eval_with_user_handlers(expr,     envir, enclos, user_handlers)), warning = wHandler, error = eHandler,     message = mHandler)))
21: evaluate_call(expr, parsed$src[[i]], envir = envir, enclos = enclos,     debug = debug, last = i == length(out), use_try = stop_on_error !=         2L, keep_warning = keep_warning, keep_message = keep_message,     output_handler = output_handler, include_timing = include_timing)
22: evaluate::evaluate(...)
23: evaluate(code, envir = env, new_device = FALSE, keep_warning = !isFALSE(options$warning),     keep_message = !isFALSE(options$message), stop_on_error = if (is.numeric(options$error)) options$error else {        if (options$error && options$include)             0L        else 2L    }, output_handler = knit_handlers(options$render, options))
24: in_dir(input_dir(), expr)
25: in_input_dir(evaluate(code, envir = env, new_device = FALSE,     keep_warning = !isFALSE(options$warning), keep_message = !isFALSE(options$message),     stop_on_error = if (is.numeric(options$error)) options$error else {        if (options$error && options$include)             0L        else 2L    }, output_handler = knit_handlers(options$render, options)))
26: eng_r(options)
27: block_exec(params)
28: call_block(x)
29: process_group.block(group)
30: process_group(group)
31: withCallingHandlers(if (tangle) process_tangle(group) else process_group(group),     error = function(e) {        setwd(wd)        cat(res, sep = "\n", file = output %n% "")        message("Quitting from lines ", paste(current_lines(i),             collapse = "-"), " (", knit_concord$get("infile"),             ") ")    })
32: process_file(text, output)
33: knitr::knit(knit_input, knit_output, envir = envir, quiet = quiet)
34: rmarkdown::render(input, quiet = TRUE, envir = globalenv(), encoding = "UTF-8")
35: (function (input) {    rmarkdown::render(input, quiet = TRUE, envir = globalenv(),         encoding = "UTF-8")})(input = base::quote("sane-eyas_reprex.R"))
36: (function (what, args, quote = FALSE, envir = parent.frame()) {    if (!is.list(args))         stop("second argument must be a list")    if (quote)         args <- lapply(args, enquote)    .Internal(do.call(what, args, envir))})(base::quote(function (input) {    rmarkdown::render(input, quiet = TRUE, envir = globalenv(),         encoding = "UTF-8")}), base::quote(list(input = "sane-eyas_reprex.R")), envir = base::quote(<environment>),     quote = base::quote(TRUE))
37: do.call(do.call, c(readRDS("/tmp/RtmpKk0QhA/callr-fun-497929e2d840"),     list(envir = .GlobalEnv, quote = TRUE)), envir = .GlobalEnv,     quote = TRUE)
38: saveRDS(do.call(do.call, c(readRDS("/tmp/RtmpKk0QhA/callr-fun-497929e2d840"),     list(envir = .GlobalEnv, quote = TRUE)), envir = .GlobalEnv,     quote = TRUE), file = "/tmp/RtmpKk0QhA/callr-res-49797239d88c",     compress = FALSE)
39: withCallingHandlers({    NULL    saveRDS(do.call(do.call, c(readRDS("/tmp/RtmpKk0QhA/callr-fun-497929e2d840"),         list(envir = .GlobalEnv, quote = TRUE)), envir = .GlobalEnv,         quote = TRUE), file = "/tmp/RtmpKk0QhA/callr-res-49797239d88c",         compress = FALSE)    flush(stdout())    flush(stderr())    NULL    invisible()}, error = function(e) {    {        callr_data <- as.environment("tools:callr")$`__callr_data__`        err <- callr_data$err        if (FALSE) {            assign(".Traceback", .traceback(4), envir = callr_data)            dump.frames("__callr_dump__")            assign(".Last.dump", .GlobalEnv$`__callr_dump__`,                 envir = callr_data)            rm("__callr_dump__", envir = .GlobalEnv)        }        e <- err$process_call(e)        e2 <- err$new_error("error in callr subprocess")        class(e2) <- c("callr_remote_error", class(e2))        e2 <- err$add_trace_back(e2)        cut <- which(e2$trace$scope == "global")[1]        if (!is.na(cut)) {            e2$trace <- e2$trace[-(1:cut), ]        }        saveRDS(list("error", e2, e), file = paste0("/tmp/RtmpKk0QhA/callr-res-49797239d88c",             ".error"))    }}, interrupt = function(e) {    {        callr_data <- as.environment("tools:callr")$`__callr_data__`        err <- callr_data$err        if (FALSE) {            assign(".Traceback", .traceback(4), envir = callr_data)            dump.frames("__callr_dump__")            assign(".Last.dump", .GlobalEnv$`__callr_dump__`,                 envir = callr_data)            rm("__callr_dump__", envir = .GlobalEnv)        }        e <- err$process_call(e)        e2 <- err$new_error("error in callr subprocess")        class(e2) <- c("callr_remote_error", class(e2))        e2 <- err$add_trace_back(e2)        cut <- which(e2$trace$scope == "global")[1]        if (!is.na(cut)) {            e2$trace <- e2$trace[-(1:cut), ]        }        saveRDS(list("error", e2, e), file = paste0("/tmp/RtmpKk0QhA/callr-res-49797239d88c",             ".error"))    }}, callr_message = function(e) {    try(signalCondition(e))})
40: doTryCatch(return(expr), name, parentenv, handler)
41: tryCatchOne(expr, names, parentenv, handlers[[1L]])
42: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
43: doTryCatch(return(expr), name, parentenv, handler)
44: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]),     names[nh], parentenv, handlers[[nh]])
45: tryCatchList(expr, classes, parentenv, handlers)
46: tryCatch(withCallingHandlers({    NULL    saveRDS(do.call(do.call, c(readRDS("/tmp/RtmpKk0QhA/callr-fun-497929e2d840"),         list(envir = .GlobalEnv, quote = TRUE)), envir = .GlobalEnv,         quote = TRUE), file = "/tmp/RtmpKk0QhA/callr-res-49797239d88c",         compress = FALSE)    flush(stdout())    flush(stderr())    NULL    invisible()}, error = function(e) {    {        callr_data <- as.environment("tools:callr")$`__callr_data__`        err <- callr_data$err        if (FALSE) {            assign(".Traceback", .traceback(4), envir = callr_data)            dump.frames("__callr_dump__")            assign(".Last.dump", .GlobalEnv$`__callr_dump__`,                 envir = callr_data)            rm("__callr_dump__", envir = .GlobalEnv)        }        e <- err$process_call(e)        e2 <- err$new_error("error in callr subprocess")        class(e2) <- c("callr_remote_error", class(e2))        e2 <- err$add_trace_back(e2)        cut <- which(e2$trace$scope == "global")[1]        if (!is.na(cut)) {            e2$trace <- e2$trace[-(1:cut), ]        }        saveRDS(list("error", e2, e), file = paste0("/tmp/RtmpKk0QhA/callr-res-49797239d88c",             ".error"))    }}, interrupt = function(e) {    {        callr_data <- as.environment("tools:callr")$`__callr_data__`        err <- callr_data$err        if (FALSE) {            assign(".Traceback", .traceback(4), envir = callr_data)            dump.frames("__callr_dump__")            assign(".Last.dump", .GlobalEnv$`__callr_dump__`,                 envir = callr_data)            rm("__callr_dump__", envir = .GlobalEnv)        }        e <- err$process_call(e)        e2 <- err$new_error("error in callr subprocess")        class(e2) <- c("callr_remote_error", class(e2))        e2 <- err$add_trace_back(e2)        cut <- which(e2$trace$scope == "global")[1]        if (!is.na(cut)) {            e2$trace <- e2$trace[-(1:cut), ]        }        saveRDS(list("error", e2, e), file = paste0("/tmp/RtmpKk0QhA/callr-res-49797239d88c",             ".error"))    }}, callr_message = function(e) {    try(signalCondition(e))}), error = function(e) {    NULL    try(stop(e))}, interrupt = function(e) {    NULL    e})
An irrecoverable exception occurred. R is aborting now ...
t-kalinowski commented 1 year ago

FYI, the conda install command fails for me, for an unrelated reason:

R> reticulate::conda_install(envname = 'greta-env', packages = c('numpy==1.16.4', 'tensorflow-probability==0.7.0', 'tensorflow==1.14.0'))
+ '/home/tomasz/.local/share/r-miniconda/bin/conda' 'create' '--yes' '--name' 'greta-env' 'python' '--quiet' '-c' 'conda-forge'
Collecting package metadata (current_repodata.json): ...working... done
Solving environment: ...working... done

## Package Plan ##

  environment location: /home/tomasz/.local/share/r-miniconda/envs/greta-env

  added / updated specs:
    - python

The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    ld_impl_linux-64-2.39      |       hc81fddc_0         759 KB  conda-forge
    libgcc-ng-12.2.0           |      h65d4601_18         936 KB  conda-forge
    libgomp-12.2.0             |      h65d4601_18         455 KB  conda-forge
    pip-22.3                   |     pyhd8ed1ab_0         1.5 MB  conda-forge
    python-3.10.6              |ha86cf86_0_cpython        29.0 MB  conda-forge
    setuptools-65.5.0          |     pyhd8ed1ab_0         768 KB  conda-forge
    tzdata-2022e               |       h191b570_0         118 KB  conda-forge
    ------------------------------------------------------------
                                           Total:        33.4 MB

The following NEW packages will be INSTALLED:

  _libgcc_mutex      conda-forge/linux-64::_libgcc_mutex-0.1-conda_forge None
  _openmp_mutex      conda-forge/linux-64::_openmp_mutex-4.5-2_gnu None
  bzip2              conda-forge/linux-64::bzip2-1.0.8-h7f98852_4 None
  ca-certificates    conda-forge/linux-64::ca-certificates-2022.9.24-ha878542_0 None
  ld_impl_linux-64   conda-forge/linux-64::ld_impl_linux-64-2.39-hc81fddc_0 None
  libffi             conda-forge/linux-64::libffi-3.4.2-h7f98852_5 None
  libgcc-ng          conda-forge/linux-64::libgcc-ng-12.2.0-h65d4601_18 None
  libgomp            conda-forge/linux-64::libgomp-12.2.0-h65d4601_18 None
  libnsl             conda-forge/linux-64::libnsl-2.0.0-h7f98852_0 None
  libsqlite          conda-forge/linux-64::libsqlite-3.39.4-h753d276_0 None
  libuuid            conda-forge/linux-64::libuuid-2.32.1-h7f98852_1000 None
  libzlib            conda-forge/linux-64::libzlib-1.2.13-h166bdaf_4 None
  ncurses            conda-forge/linux-64::ncurses-6.3-h27087fc_1 None
  openssl            conda-forge/linux-64::openssl-3.0.5-h166bdaf_2 None
  pip                conda-forge/noarch::pip-22.3-pyhd8ed1ab_0 None
  python             conda-forge/linux-64::python-3.10.6-ha86cf86_0_cpython None
  readline           conda-forge/linux-64::readline-8.1.2-h0f457ee_0 None
  setuptools         conda-forge/noarch::setuptools-65.5.0-pyhd8ed1ab_0 None
  tk                 conda-forge/linux-64::tk-8.6.12-h27826a3_0 None
  tzdata             conda-forge/noarch::tzdata-2022e-h191b570_0 None
  wheel              conda-forge/noarch::wheel-0.37.1-pyhd8ed1ab_0 None
  xz                 conda-forge/linux-64::xz-5.2.6-h166bdaf_0 None

Preparing transaction: ...working... done
Verifying transaction: ...working... done
Executing transaction: ...working... done
Retrieving notices: ...working... done
+ '/home/tomasz/.local/share/r-miniconda/bin/conda' 'install' '--yes' '--name' 'greta-env' '-c' 'conda-forge' 'numpy==1.16.4' 'tensorflow-probability==0.7.0' 'tensorflow==1.14.0'
Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Collecting package metadata (repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: | 
Found conflicts! Looking for incompatible packages.
This can take several minutes.  Press CTRL-C to abort.
failed                                                                                                                                                                                                              

UnsatisfiableError: The following specifications were found
to be incompatible with the existing python installation in your environment:

Specifications:

  - numpy==1.16.4 -> python[version='>=2.7,<2.8.0a0|>=3.6,<3.7.0a0|>=3.7,<3.8.0a0']
  - tensorflow==1.14.0 -> python[version='2.7.*|3.6.*|3.7.*']
  - tensorflow==1.14.0 -> python[version='>=2.7,<2.8.0a0|>=3.6,<3.7.0a0|>=3.7,<3.8.0a0|>=3.8,<3.9.0a0']

Your python: python=3.10

If python is on the left-most side of the chain, that's the version you've asked for.
When python appears to the right, that indicates that the thing on the left is somehow
not available for the python version you are constrained to. Note that conda will not
change your python version to a different minor version unless you explicitly specify
that.

The following specifications were found to be incompatible with each other:

Output in format: Requested package -> Available versions

Package mkl conflicts for:
numpy==1.16.4 -> libblas[version='>=3.8.0,<4.0a0'] -> mkl[version='2019.1.*|>=2019.0,<2020.0a0|>=2020.0,<2021.0a0|>=2020.4,<2021.0a0|>=2021.2.0,<2022.0a0|>=2021.3.0,<2022.0a0|>=2021.4.0,<2022.0a0|>=2022.0.1,<2023.0a0|>=2022.1.0,<2023.0a0|>=2020.2,<2021.0a0|>=2019.4,<2020.0a0|>=2019.3,<2020.0a0|>=2019.1,<2020.0a0|>=2019.4,<2021.0a0|>=2019.1,<2021.0a0|>=2018.0.3,<2019.0a0|>=2020.1,<2021.0a0']
numpy==1.16.4 -> mkl[version='>=2019.3,<2021.0a0']

Package liblapack conflicts for:
numpy==1.16.4 -> liblapack[version='>=3.8.0,<4.0.0a0']
numpy==1.16.4 -> blas=[build=openblas] -> liblapack[version='3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.9.0|3.9.0|3.9.0|3.9.0',build='5_openblas|7_openblas|12_openblas|16_openblas|5_openblas|6_openblas|7_openblas|10_openblas|11_linux64_openblas|16_linux64_openblas|15_linux64_openblas|14_linux64_openblas|13_linux64_openblas|12_linux64_openblas|9_openblas|8_openblas|17_openblas|15_openblas|14_openblas|13_openblas|11_openblas|10_openblas|9_openblas|8_openblas|6_openblas|4_openblas|3_openblas|2_openblas|0_openblas']

Package tzdata conflicts for:
tensorflow-probability==0.7.0 -> python -> tzdata
python=3.10 -> tzdata

Package _libgcc_mutex conflicts for:
python=3.10 -> libgcc-ng[version='>=12'] -> _libgcc_mutex[version='*|0.1',build='main|main|conda_forge']
numpy==1.16.4 -> libgcc-ng[version='>=7.3.0'] -> _libgcc_mutex[version='*|0.1|0.1',build='main|main|conda_forge']
tensorflow==1.14.0 -> libgcc-ng[version='>=5.4.0'] -> _libgcc_mutex[version='*|0.1|0.1',build='main|main|conda_forge']

Package libopenblas conflicts for:
numpy==1.16.4 -> libblas[version='>=3.8.0,<4.0a0'] -> libopenblas[version='>=0.3.10,<0.3.11.0a0|>=0.3.12,<0.3.13.0a0|>=0.3.15,<0.3.16.0a0|>=0.3.17,<0.3.18.0a0|>=0.3.18,<0.3.19.0a0|>=0.3.20,<0.3.21.0a0|>=0.3.21,<0.3.22.0a0|>=0.3.21,<1.0a0|>=0.3.20,<1.0a0|>=0.3.18,<1.0a0|>=0.3.17,<1.0a0|>=0.3.15,<1.0a0|>=0.3.12,<1.0a0|>=0.3.10,<1.0a0|>=0.3.9,<0.3.10.0a0|>=0.3.9,<1.0a0|>=0.3.8,<0.3.9.0a0|>=0.3.8,<1.0a0|>=0.3.7,<0.3.8.0a0|>=0.3.7,<1.0a0|>=0.3.6,<0.3.7.0a0|>=0.3.6,<1.0a0']
numpy==1.16.4 -> libopenblas[version='>=0.3.3,<1.0a0']

Package libblas conflicts for:
numpy==1.16.4 -> libcblas[version='>=3.8.0,<4.0a0'] -> libblas[version='3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0.*|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.9.0|3.9.0|3.9.0|3.9.0|3.9.0|3.9.0|3.9.0|3.9.0|3.9.0|3.9.0|3.9.0|3.9.0|3.9.0|3.9.0|3.9.0|3.9.0.*',build='4_blis|6_openblas|7_openblas|8_blis|9_blis|9_mkl|10_openblas|10_mkl|11_blis|11_mkl|13_mkl|13_openblas|13_blis|14_mkl|16_openblas|16_blis|16_mkl|18_mkl|0_blis|1_openblas|2_openblas|2_blis|3_blis|3_openblas|4_blis|4_mkl|5_blis|5_mkl|6_openblas|7_openblas|7_mkl|8_mkl|9_blis|10_mkl|11_linux64_blis|11_linux64_openblas|12_linux64_blis|12_linux64_mkl|13_linux64_blis|14_linux64_blis|14_linux64_openblas|14_linux64_mkl|16_linux64_blis|16_linux64_mkl|16_linux64_openblas|15_linux64_mkl|15_linux64_openblas|15_linux64_blis|13_linux64_mkl|13_linux64_openblas|12_linux64_openblas|11_linux64_mkl|10_openblas|10_blis|9_mkl|9_openblas|8_openblas|8_blis|7_blis|6_mkl|6_blis|5_openblas|4_openblas|1_blis|0_openblas|21_mkl|20_mkl|19_mkl|17_openblas|15_openblas|15_mkl|15_blis|14_blis|14_openblas|12_mkl|12_openblas|12_blis|11_openblas|10_blis|9_openblas|8_mkl|8_openblas|7_mkl|7_blis|6_mkl|6_blis|5_mkl|5_openblas|5_blis|4_mkl|4_openblas']
numpy==1.16.4 -> libblas[version='>=3.8.0,<4.0a0']

Package libcblas conflicts for:
numpy==1.16.4 -> libcblas[version='>=3.8.0,<4.0a0']
numpy==1.16.4 -> blas=[build=openblas] -> libcblas[version='3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.8.0|3.9.0|3.9.0|3.9.0|3.9.0',build='5_openblas|7_openblas|12_openblas|16_openblas|5_openblas|6_openblas|7_openblas|10_openblas|11_linux64_openblas|16_linux64_openblas|15_linux64_openblas|14_linux64_openblas|13_linux64_openblas|12_linux64_openblas|9_openblas|8_openblas|17_openblas|15_openblas|14_openblas|13_openblas|11_openblas|10_openblas|9_openblas|8_openblas|6_openblas|4_openblas|3_openblas|2_openblas|0_openblas']

Package blas conflicts for:
numpy==1.16.4 -> blas[version='*|1.0',build='openblas|mkl']
numpy==1.16.4 -> mkl_random[version='>=1.0.2,<2.0a0'] -> blas=[build=mkl]

Package mkl_random conflicts for:
tensorflow-probability==0.7.0 -> numpy[version='>=1.13.3'] -> mkl_random[version='>=1.0.2,<2.0a0|>=1.2.1,<2.0a0|>=1.0.4,<2.0a0']
numpy==1.16.4 -> mkl_random[version='>=1.0.2,<2.0a0']

Package numpy-base conflicts for:
numpy==1.16.4 -> numpy-base==1.16.4[build='py27h2f8d375_0|py36h2f8d375_0|py37h2f8d375_0|py37hde5b4d6_0|py27hde5b4d6_0|py36hde5b4d6_0']
numpy==1.16.4 -> mkl_fft[version='>=1.0.6,<2.0a0'] -> numpy-base[version='>=1.0.14,<2.0a0|>=1.0.6,<2.0a0|>=1.2.1,<2.0a0|>=1.0.2,<2.0a0|>=1.0.4,<2.0a0']

Package libgfortran-ng conflicts for:
numpy==1.16.4 -> libgfortran-ng[version='>=7,<8.0a0']
numpy==1.16.4 -> libblas[version='>=3.8.0,<4.0a0'] -> libgfortran-ng

Package numpy conflicts for:
tensorflow-probability==0.7.0 -> numpy[version='>=1.13.3']
tensorflow-probability==0.7.0 -> tensorflow-base[version='>=1.14.0'] -> numpy[version='>=1.14.6,<2.0a0|>=1.16.1,<2.0a0|>=1.18.5,<2.0a0|>=1.19.5,<2.0a0|>=1.20.3,<2.0a0|>=1.21.6,<2.0a0|>=1.21.5,<2.0a0|>=1.19.2,<1.20|>=1.19|>=1.23.1,<2.0a0|>=1.22.3,<2.0a0|>=1.20|>=1.16.6,<2.0a0|>=1.16.5,<2.0a0']
tensorflow==1.14.0 -> tensorflow-base==1.14.0=py36hc3e5e64_0 -> numpy[version='>=1.12.0|>=1.16.1,<2.0a0|>=1.14.6,<2.0a0|>=1.16.1']The following specifications were found to be incompatible with your system:

  - feature:/linux-64::__cuda==11.7=0
  - feature:/linux-64::__glibc==2.31=0
  - feature:|@/linux-64::__cuda==11.7=0
  - feature:|@/linux-64::__glibc==2.31=0
  - numpy==1.16.4 -> libgcc-ng[version='>=7.3.0'] -> __glibc[version='>=2.17']
  - tensorflow-probability==0.7.0 -> tensorflow-base[version='>=1.14.0'] -> __cuda
  - tensorflow-probability==0.7.0 -> tensorflow-base[version='>=1.14.0'] -> __glibc[version='>=2.17']
  - tensorflow==1.14.0 -> libgcc-ng[version='>=5.4.0'] -> __glibc[version='>=2.17']

Your installed version is: 11.7

Error: one or more Python packages failed to install [error code 1]