Project

General

Profile

Feature #22594

readdir_r deprecated in newer glibc

Added by Eric Flumerfelt 9 days ago. Updated 3 days ago.

Status:
Assigned
Priority:
Normal
Assignee:
Target version:
-
Start date:
05/15/2019
Due date:
% Done:

0%

Estimated time:
Duration:

Description

Attempting to build cetlib on RHEL 8 produces the following error:


/home/eflumerf/products/cetlib/v3_07_02/src/cetlib/search_path.cc: In member function ‘size_t cet::search_path::find_files(const string&, std::vector<std::__cxx11::basic_string<char> >&) const’:
/home/eflumerf/products/cetlib/v3_07_02/src/cetlib/search_path.cc:136:55: error: ‘int readdir_r(DIR*, dirent*, dirent**)’ is deprecated [-Werror=deprecated-declarations]
     while (!(err = readdir_r(dd.get(), &entry, &result)) && result != nullptr) {
                                                       ^
In file included from /home/eflumerf/products/cetlib/v3_07_02/src/cetlib/search_path.cc:12:
/usr/include/dirent.h:183:12: note: declared here
 extern int readdir_r (DIR *__restrict __dirp,
            ^~~~~~~~~
/home/eflumerf/products/cetlib/v3_07_02/src/cetlib/search_path.cc:136:55: error: ‘int readdir_r(DIR*, dirent*, dirent**)’ is deprecated [-Werror=deprecated-declarations]
     while (!(err = readdir_r(dd.get(), &entry, &result)) && result != nullptr) {
                                                       ^
In file included from /home/eflumerf/products/cetlib/v3_07_02/src/cetlib/search_path.cc:12:
/usr/include/dirent.h:183:12: note: declared here
 extern int readdir_r (DIR *__restrict __dirp,
            ^~~~~~~~~

More information is here

I am curious; Ubuntu 18's UPS flavor is 4.15-2.27, which should have seen this issue as well...was there a workaround in place?

History

#1 Updated by Kyle Knoepfel 4 days ago

  • Status changed from New to Under Discussion
  • Tracker changed from Support to Feature

Things have a way of changing between the centOS beta (or not even) and an actual OS release. We have to wait for the official Fermilab supported CentOS 8 release before we can address these issues.

As far as Ubuntu LTS 18 goes, we have not yet attempted an art build, but we will try one.

#2 Updated by Lynn Garren 3 days ago

  • Assignee set to Paul Russo
  • Status changed from Under Discussion to Assigned

We confirm that this is a problem for Ubuntu LTS 18. In order to preserve thread safety, the code will need to determine which release of glibc is being used.



Also available in: Atom PDF