Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cytolib install fails on github actions CI/CD for Ubuntu 22.04 (C++11?) #59

Open
FMKerckhof opened this issue Apr 30, 2024 · 1 comment

Comments

@FMKerckhof
Copy link

Describe the bug

I am using github actions for CI/CD of a package that depends on cytolib. I am specifically specifying to use the github version (remotes::github::RGLab/cytolib) as a dependency in the DESCRIPTION file.

Windows and MacOS binary R CMD check succeed, but on Ubuntu 22.04 with R 4.3.3 I am observing a build error listed below.

2024-04-13T12:58:29.5751920Z * installing *source* package ‘cytolib’ ...
2024-04-13T12:58:29.5754222Z ** using staged installation
2024-04-13T12:58:29.9185594Z checking for a sed that does not truncate output... /usr/bin/sed
2024-04-13T12:58:30.0286921Z checking whether the C++ compiler works... yes
2024-04-13T12:58:30.0288306Z checking for C++ compiler default output file name... a.out
2024-04-13T12:58:30.0681681Z checking for suffix of executables... 
2024-04-13T12:58:30.1183968Z checking whether we are cross compiling... no
2024-04-13T12:58:30.1373322Z checking for suffix of object files... o
2024-04-13T12:58:30.1540567Z checking whether we are using the GNU C++ compiler... yes
2024-04-13T12:58:30.1699950Z checking whether g++ -std=gnu++17 accepts -g... yes
2024-04-13T12:58:30.1929642Z checking how to run the C++ preprocessor... g++ -std=gnu++17 -E
2024-04-13T12:58:30.2354774Z checking whether we are using the GNU C++ compiler... (cached) yes
2024-04-13T12:58:30.2356448Z checking whether g++ -std=gnu++17 accepts -g... (cached) yes
2024-04-13T12:58:30.2357726Z configure: Parsing cytolib version info ...
2024-04-13T12:58:30.2389767Z configure: CYTOLIB_VERSION=2.12.1
2024-04-13T12:58:30.2562950Z configure: creating ./config.status
2024-04-13T12:58:30.3317539Z config.status: creating inst/include/cytolib/cytolibConfig.h
2024-04-13T12:58:30.3487525Z config.status: creating src/Makevars
2024-04-13T12:58:30.3909806Z ** libs
2024-04-13T12:58:30.4041392Z using C++ compiler: ‘g++ (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’
2024-04-13T12:58:30.4042575Z using C++11
2024-04-13T12:58:30.4071008Z g++ -std=gnu++11 -I"/opt/R/4.3.3/lib/R/include" -DNDEBUG -DROUT -I../inst/include -DBOOST_NO_AUTO_PTR -DBOOST_FILESYSTEM_NO_CXX20_ATOMIC_REF -DBOOST_FILESYSTEM_SINGLE_THREADED  -I'/home/runner/work/_temp/Library/BH/include' -I'/home/runner/work/_temp/Library/RProtoBufLib/include' -I'/home/runner/work/_temp/Library/Rhdf5lib/include' -I/usr/local/include    -fpic  -g -O2  -c dummy.cpp -o dummy.o
2024-04-13T12:58:30.4227164Z g++ -std=gnu++11 -I"/opt/R/4.3.3/lib/R/include" -DNDEBUG -DROUT -I../inst/include -DBOOST_NO_AUTO_PTR -DBOOST_FILESYSTEM_NO_CXX20_ATOMIC_REF -DBOOST_FILESYSTEM_SINGLE_THREADED  -I'/home/runner/work/_temp/Library/BH/include' -I'/home/runner/work/_temp/Library/RProtoBufLib/include' -I'/home/runner/work/_temp/Library/Rhdf5lib/include' -I/usr/local/include    -fpic  -g -O2  -c boost/libs/system/src/error_code.cpp -o boost/libs/system/src/error_code.o
2024-04-13T12:58:30.4566480Z g++ -std=gnu++11 -I"/opt/R/4.3.3/lib/R/include" -DNDEBUG -DROUT -I../inst/include -DBOOST_NO_AUTO_PTR -DBOOST_FILESYSTEM_NO_CXX20_ATOMIC_REF -DBOOST_FILESYSTEM_SINGLE_THREADED  -I'/home/runner/work/_temp/Library/BH/include' -I'/home/runner/work/_temp/Library/RProtoBufLib/include' -I'/home/runner/work/_temp/Library/Rhdf5lib/include' -I/usr/local/include    -fpic  -g -O2  -c boost/libs/filesystem/src/codecvt_error_category.cpp -o boost/libs/filesystem/src/codecvt_error_category.o
2024-04-13T12:58:30.8613720Z g++ -std=gnu++11 -I"/opt/R/4.3.3/lib/R/include" -DNDEBUG -DROUT -I../inst/include -DBOOST_NO_AUTO_PTR -DBOOST_FILESYSTEM_NO_CXX20_ATOMIC_REF -DBOOST_FILESYSTEM_SINGLE_THREADED  -I'/home/runner/work/_temp/Library/BH/include' -I'/home/runner/work/_temp/Library/RProtoBufLib/include' -I'/home/runner/work/_temp/Library/Rhdf5lib/include' -I/usr/local/include    -fpic  -g -O2  -c boost/libs/filesystem/src/directory.cpp -o boost/libs/filesystem/src/directory.o
2024-04-13T12:58:31.2679279Z boost/libs/filesystem/src/directory.cpp:100:13: error: no declaration matches ‘boost::filesystem::file_status boost::filesystem::directory_entry::get_status(boost::system::error_code*) const’
2024-04-13T12:58:31.2682355Z   100 | file_status directory_entry::get_status(system::error_code* ec) const
2024-04-13T12:58:31.2683488Z       |             ^~~~~~~~~~~~~~~
2024-04-13T12:58:31.2737103Z boost/libs/filesystem/src/directory.cpp:100:13: note: no functions named ‘boost::filesystem::file_status boost::filesystem::directory_entry::get_status(boost::system::error_code*) const’
2024-04-13T12:58:31.2739262Z In file included from boost/libs/filesystem/src/directory.cpp:18:
2024-04-13T12:58:31.2741706Z /home/runner/work/_temp/Library/BH/include/boost/filesystem/directory.hpp:65:7: note: ‘class boost::filesystem::directory_entry’ defined here
2024-04-13T12:58:31.2743369Z    65 | class directory_entry
2024-04-13T12:58:31.2743961Z       |       ^~~~~~~~~~~~~~~
2024-04-13T12:58:31.2746720Z boost/libs/filesystem/src/directory.cpp:127:13: error: no declaration matches ‘boost::filesystem::file_status boost::filesystem::directory_entry::get_symlink_status(boost::system::error_code*) const’
2024-04-13T12:58:31.2749194Z   127 | file_status directory_entry::get_symlink_status(system::error_code* ec) const
2024-04-13T12:58:31.2750206Z       |             ^~~~~~~~~~~~~~~
2024-04-13T12:58:31.2752728Z boost/libs/filesystem/src/directory.cpp:127:13: note: no functions named ‘boost::filesystem::file_status boost::filesystem::directory_entry::get_symlink_status(boost::system::error_code*) const’
2024-04-13T12:58:31.2754930Z In file included from boost/libs/filesystem/src/directory.cpp:18:
2024-04-13T12:58:31.2757342Z /home/runner/work/_temp/Library/BH/include/boost/filesystem/directory.hpp:65:7: note: ‘class boost::filesystem::directory_entry’ defined here
2024-04-13T12:58:31.2759011Z    65 | class directory_entry
2024-04-13T12:58:31.2759592Z       |       ^~~~~~~~~~~~~~~
2024-04-13T12:58:31.3245881Z make: *** [/opt/R/4.3.3/lib/R/etc/Makeconf:200: boost/libs/filesystem/src/directory.o] Error 1
2024-04-13T12:58:31.3252062Z ERROR: compilation failed for package ‘cytolib’

It appears that the error is the interface with boost (there are related issues, e.g. #49) Boost (BH) which is installed in by the github actions runner is 1.84.0-0, which should be compatible (887b8d8)

To Reproduce

I would assume any package depending on cytolib (like flowWorkspace etc.) should get a similar error with the same workflow?

Expected behavior

The build to pass on ubuntu 22.04, as it is LTS and I am using BH 1.84.0-0, which is also latest on CRAN?

SessionInfo:

cf. supra - as this is a github action I don't have an interactive session to run sessionInfo, but the necessary versions etc. should be provided

@FMKerckhof
Copy link
Author

Maybe as additional context the runner is also installing:

  • RProtoBuflib 2.12.1
  • Rhd5lib 1.22.1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant