Skip to content

Unable to Compile RcppParallel on windows on ARM64 platform: TBB Library Issue #239

Open

Description

@Akash9824

I am trying to install RcppParallel on my Snapdragon X laptop, which has an ARM64-based processor, but the installation is failing with the error shown below,

install.packages("RcppParallel", type = "source")
--- Please select a CRAN mirror for use in this session ---
trying URL 'https://cloud.r-project.org/src/contrib/RcppParallel_5.1.11-1.tar.gz'
Content type 'application/x-gzip' length 1633955 bytes (1.6 MB)
downloaded 1.6 MB

  • installing source package 'RcppParallel' ...
    ** this is package 'RcppParallel' version '5.1.11-1'
    ** package 'RcppParallel' successfully unpacked and MD5 sums checked
    ** using staged installation
    ** preparing to configure package 'RcppParallel' ...
    *** configured file: 'R/tbb-autodetected.R.in' => 'R/tbb-autodetected.R'
    *** configured file: 'src/Makevars.in' => 'src/Makevars'
    *** configured file: 'src/install.libs.R.in' => 'src/install.libs.R'
    ** finished configure for package 'RcppParallel'
    ** libs
    (tbb) Building TBB using bundled sources ...
    make[1]: Entering directory '/c/Users/HCKTest/AppData/Local/Temp/Rtmps5DsVa/R.INSTALL3c745d3e22f3/RcppParallel/src/tbb/src'
    OS: windows
    arch=unknown
    compiler=gcc
    runtime=mingw19.1.7
    tbb_build_prefix=windows_unknown_gcc_mingw19.1.7
    work_dir=/c/Users/HCKTest/AppData/Local/Temp/Rtmps5DsVa/R.INSTALL3c745d3e22f3/RcppParallel/src/build/windows_unknown_gcc_mingw19.1.7_release
    make[1]: Leaving directory '/c/Users/HCKTest/AppData/Local/Temp/Rtmps5DsVa/R.INSTALL3c745d3e22f3/RcppParallel/src/tbb/src'
    make[1]: Entering directory '/c/Users/HCKTest/AppData/Local/Temp/Rtmps5DsVa/R.INSTALL3c745d3e22f3/RcppParallel/src/tbb/src'
    Created ../build/lib_release directory
    make -C "../build/lib_release" -r -f ../../build/Makefile.tbb cfg=release
    make[2]: Entering directory '/c/Users/HCKTest/AppData/Local/Temp/Rtmps5DsVa/R.INSTALL3c745d3e22f3/RcppParallel/src/tbb/build/lib_release'
    expr: syntax error: unexpected argument '19.1.7'
    expr: syntax error: unexpected argument '19.1.7'
    ../../build/Makefile.tbb:28: CONFIG: cfg=release arch=unknown compiler=gcc target=windows runtime=mingw19.1.7
    aarch64-w64-mingw32.static.posix-clang++ -o concurrent_hash_map.o -c -MMD -O2 -DUSE_WINTHREAD -D_WIN32_WINNT=0x0502 -DMINGW_HAS_SECURE_API=1 -msse -mthreads -D__TBB_BUILD=1 -Wall -std=gnu++11 -O2 -Wall -DTBB_NO_LEGACY=1 -DTBB_USE_GCC_BUILTINS -I../../src -I../../src/rml/include -I../../include ../../src/tbb/concurrent_hash_map.cpp
    clang-19: error: unsupported option '-msse' for target 'aarch64-w64-mingw32'
    clang-19: warning: argument unused during compilation: '-mthreads' [-Wunused-command-line-argument]
    make[2]: *** [../../build/common_rules.inc:116: concurrent_hash_map.o] Error 1
    make[2]: Leaving directory '/c/Users/HCKTest/AppData/Local/Temp/Rtmps5DsVa/R.INSTALL3c745d3e22f3/RcppParallel/src/tbb/build/lib_release'
    make[1]: *** [Makefile:100: tbb_release] Error 2
    make[1]: Leaving directory '/c/Users/HCKTest/AppData/Local/Temp/Rtmps5DsVa/R.INSTALL3c745d3e22f3/RcppParallel/src/tbb/src'
    aarch64-w64-mingw32.static.posix-clang++ -std=gnu++17 -I"C:/PROGRA1/R-AARC1/R-451.0/include" -DNDEBUG -I../inst/include -DTBB_USE_GCC_BUILTINS -I"C:/rtools45-aarch64/aarch64-w64-mingw32.static.posix/include" -std=gnu++11 -DRCPP_PARALLEL_USE_TBB=1 -DTBB_SUPPRESS_DEPRECATED_MESSAGES=1 -O2 -Wall -c init.cpp -o init.o
    aarch64-w64-mingw32.static.posix-clang++ -std=gnu++17 -I"C:/PROGRA
    1/R-AARC1/R-451.0/include" -DNDEBUG -I../inst/include -DTBB_USE_GCC_BUILTINS -I"C:/rtools45-aarch64/aarch64-w64-mingw32.static.posix/include" -std=gnu++11 -DRCPP_PARALLEL_USE_TBB=1 -DTBB_SUPPRESS_DEPRECATED_MESSAGES=1 -O2 -Wall -c options.cpp -o options.o
    aarch64-w64-mingw32.static.posix-clang++ -std=gnu++17 -I"C:/PROGRA1/R-AARC1/R-451.0/include" -DNDEBUG -I../inst/include -DTBB_USE_GCC_BUILTINS -I"C:/rtools45-aarch64/aarch64-w64-mingw32.static.posix/include" -std=gnu++11 -DRCPP_PARALLEL_USE_TBB=1 -DTBB_SUPPRESS_DEPRECATED_MESSAGES=1 -O2 -Wall -c tbb.cpp -o tbb.o
    aarch64-w64-mingw32.static.posix-clang++ -std=gnu++17 -shared -s -static-libgcc -o RcppParallel.dll tmp.def init.o options.o tbb.o -Ltbb/build/lib_release -ltbb -ltbbmalloc -LC:/rtools45-aarch64/aarch64-w64-mingw32.static.posix/lib -LC:/rtools45-aarch64/aarch64-w64-mingw32.static.posix/lib -LC:/PROGRA
    1/R-AARC1/R-451.0/bin -lR
    lld: error: unable to find library -ltbb
    clang-19: error: linker command failed with exit code 1 (use -v to see invocation)
    installing via 'install.libs.R' to C:/Program Files/R-aarch64/R-4.5.0/library/00LOCK-RcppParallel/00new/RcppParallel
    ** R
    ** inst
    ** byte-compile and prepare package for lazy loading
    ** help
    *** installing help indices
    ** building package indices
    ** testing if installed package can be loaded from temporary location
    Error: package or namespace load failed for 'RcppParallel':
    .onLoad failed in loadNamespace() for 'RcppParallel', details:
    call: library.dynam("RcppParallel", pkgname, libname, local = FALSE)
    error: DLL 'RcppParallel' not found: maybe not installed for this architecture?
    Error: loading failed
    Execution halted
    ERROR: loading failed
  • removing 'C:/Program Files/R-aarch64/R-4.5.0/library/RcppParallel'

The downloaded source packages are in
‘C:\Users\HCKTest\AppData\Local\Temp\RtmpKAHq1P\downloaded_packages’
Warning message:
In install.packages("RcppParallel", type = "source") :
installation of package ‘RcppParallel’ had non-zero exit status

Activity

  1. kevinushey commented on Sep 19, 2025

    @kevinushey
    Contributor

    Are you able to install the development version of RcppParallel successfully?

  2. rafaelguariento commented on Sep 22, 2025

    @rafaelguariento

    Same problem here, no Intel TBB available.

  3. benediktschfr commented on Oct 18, 2025

    @benediktschfr

    e4e33f4 seems to fix this. The development version installs just fine with:

    pak::pak("RcppCore/RcppParallel")
  4. bbachilles commented on Jan 13, 2026

    @bbachilles

    The workaround proposed by @benediktclaus allowed me to install RcppParallel. But is there a way to make it so that RTools can compile RcppParallel without the workaround?

  5. eddelbuettel commented on Jan 13, 2026

    @eddelbuettel
    Member

    I suspect that if you pulled the development version from github (via git, as a source tarball or zipfile, ...) and installed manually it should work the same way. pak isn't altering the sources or commands, it is just one of several ways to access the current sources containing the commit e4e33f4 fixing the arm compilation options.

  6. kevinushey commented on Jan 13, 2026

    @kevinushey
    Contributor

    So I suspect this is more of a "can we please submit an updated version of RcppParallel to CRAN with the current fixes"?

    I can give this a shot, but some of the changes I've made are likely to require changes in reverse dependencies -- we'll have to see.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions