Closed PMassicotte closed 2 months ago
Hallo! Yes! We are very aware of this, and we are trying to handle it. Let me write back when we've got this resolved.
Hello again.. We just made a new patch release of extendr and all of its crates. If try to build again, and see what happens, that would be great.
Troubleshooting: You might need to go to src/rust/
folder in the terminal and run cargo clean
followed by cargo update
. I don't think that's necessary but it is possible.
Let me try.
It is working with 0.7.1.
I had to do cargo update
.
[nav] r$> rextendr::document()
ℹ Generating extendr wrapper functions for package: rustr.
ℹ Re-compiling rustr (debug build)
── R CMD INSTALL ────────────────────────────────────────────────────────────────────────────────────
─ installing *source* package ‘rustr’ ...
** using staged installation
** libs
using C compiler: ‘gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0’
rm -Rf rustr.so ./rust/target/release/librustr.a entrypoint.o
gcc -I"/usr/share/R/include" -DNDEBUG -fpic -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-EawLoD/r-base-4.4.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fdebug-prefix-map=/build/r-base-EawLoD/r-base-4.4.1=/usr/src/r-base-4.4.1-1.2404.0 -Wdate-time -D_FORTIFY_SOURCE=3 -UNDEBUG -Wall -pedantic -g -O0 -fdiagnostics-color=always -c entrypoint.c -o entrypoint.o
# In some environments, ~/.cargo/bin might not be included in PATH, so we need
# to set it here to ensure cargo can be invoked. It is appended to PATH and
# therefore is only used if cargo is absent from the user's PATH.
if [ "true" != "true" ]; then \
export CARGO_HOME=/home/filoche/Desktop/rustr/src/.cargo; \
fi && \
export PATH="/home/filoche/.local/share/bob/nvim-bin:/home/filoche/.juliaup/bin:/home/filoche/.pyenv/bin:/home/filoche/.nix-profile/bin:/nix/var/nix/profiles/default/bin:/home/filoche/.juliaup/bin:/home/filoche/.cargo/bin:/home/filoche/.local/bin:/home/filoche/bin:/home/filoche/.nix-profile/bin:/nix/var/nix/profiles/default/bin:/usr/local/sbin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/local/bin:/home/filoche/.fzf/bin:/home/filoche/.cargo/bin" && \
cargo build --lib --release --manifest-path=./rust/Cargo.toml --target-dir ./rust/target
Downloading crates ...
Downloaded extendr-macros v0.7.1
Downloaded extendr-api v0.7.1
Compiling extendr-api v0.7.1
Compiling extendr-macros v0.7.1
Compiling rustr v0.1.0 (/home/filoche/Desktop/rustr/src/rust)
Finished `release` profile [optimized] target(s) in 2.44s
if [ "true" != "true" ]; then \
rm -Rf /home/filoche/Desktop/rustr/src/.cargo && \
rm -Rf ./rust/target/release/build; \
fi
gcc -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -o rustr.so entrypoint.o -L./rust/target/release -lrustr -L/usr/lib/R/lib -lR
installing to /tmp/Rtmp4mzxH2/devtools_install_1990832b5c200/00LOCK-rustr/00new/rustr/libs
** checking absolute paths in shared objects and dynamic libraries
─ DONE (rustr)
✔ Writing 'R/extendr-wrappers.R'
ℹ Updating rustr documentation
Writing NAMESPACE
ℹ Loading rustr
Writing NAMESPACE
Writing hello_world.Rd
Thank you very much for this work.
Using available information, I am trying to create a package, but I am getting this error when running
rextendr::document()
:Looks like there is something about conflicting names/scoping.
Anything I missed on my side?