Opened 5 months ago

Last modified 5 months ago

#68830 new defect

R-rgl broken on Sonoma

Reported by: barracuda156 Owned by:
Priority: Normal Milestone:
Component: ports Version: 2.8.1
Keywords: sonoma, arm64 Cc:
Port: R-rgl

Description

/opt/local/bin/clang++-mp-15 -std=gnu++17 -I"/opt/local/Library/Frameworks/R.framework/Resources/include" -DNDEBUG -I/opt/local/include -isysroot/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.sdk -DHAVE_PNG_H -I/opt/local/include/libpng16 -I/opt/local/include/X11 -DDarwin -I/opt/X11/include -DHAVE_FREETYPE -Iext/ftgl -I/opt/local/include/freetype2 -I/opt/local/include/libpng16 -DR_NO_REMAP -Iext -Iext/glad/include  -I/opt/local/include -isysroot/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.sdk    -fPIC  -pipe -Os -stdlib=libc++ -isysroot/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.sdk -arch arm64  -c rglview.cpp -o rglview.o
In file included from rglview.cpp:8:
In file included from /opt/local/libexec/llvm-15/bin/../include/c++/v1/locale:203:
/opt/local/libexec/llvm-15/bin/../include/c++/v1/__locale:133:20: error: use of undeclared identifier 'LC_COLLATE_MASK'
        collate  = LC_COLLATE_MASK,
                   ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/__locale:134:20: error: use of undeclared identifier 'LC_CTYPE_MASK'
        ctype    = LC_CTYPE_MASK,
                   ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/__locale:135:20: error: use of undeclared identifier 'LC_MONETARY_MASK'
        monetary = LC_MONETARY_MASK,
                   ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/__locale:136:20: error: use of undeclared identifier 'LC_NUMERIC_MASK'
        numeric  = LC_NUMERIC_MASK,
                   ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/__locale:137:20: error: use of undeclared identifier 'LC_TIME_MASK'
        time     = LC_TIME_MASK,
                   ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/__locale:138:20: error: use of undeclared identifier 'LC_MESSAGES_MASK'
        messages = LC_MESSAGES_MASK,
                   ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/__locale:353:5: error: unknown type name 'locale_t'; did you mean 'locale'?
    locale_t __l;
    ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/__locale:122:24: note: 'locale' declared here
class _LIBCPP_TYPE_VIS locale
                       ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/__locale:373:5: error: unknown type name 'locale_t'; did you mean 'locale'?
    locale_t __l;
    ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/__locale:122:24: note: 'locale' declared here
class _LIBCPP_TYPE_VIS locale
                       ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/__locale:795:5: error: unknown type name 'locale_t'; did you mean 'locale'?
    locale_t __l;
    ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/__locale:122:24: note: 'locale' declared here
class _LIBCPP_TYPE_VIS locale
                       ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/__locale:814:5: error: unknown type name 'locale_t'; did you mean 'locale'?
    locale_t __l;
    ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/__locale:122:24: note: 'locale' declared here
class _LIBCPP_TYPE_VIS locale
                       ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/__locale:1048:5: error: unknown type name 'locale_t'; did you mean 'locale'?
    locale_t __l;
    ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/__locale:122:24: note: 'locale' declared here
class _LIBCPP_TYPE_VIS locale
                       ^
In file included from rglview.cpp:8:
/opt/local/libexec/llvm-15/bin/../include/c++/v1/locale:763:26: error: use of undeclared identifier 'strtoll_l'
        long long __ll = strtoll_l(__a, &__p2, __base, _LIBCPP_GET_C_LOCALE);
                         ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/locale:803:35: error: use of undeclared identifier 'strtoull_l'
        unsigned long long __ll = strtoull_l(__a, &__p2, __base, _LIBCPP_GET_C_LOCALE);
                                  ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/locale:832:12: error: use of undeclared identifier 'strtof_l'
    return strtof_l(__a, __p2, _LIBCPP_GET_C_LOCALE);
           ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/locale:838:12: error: use of undeclared identifier 'strtod_l'
    return strtod_l(__a, __p2, _LIBCPP_GET_C_LOCALE);
           ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/locale:844:12: error: use of undeclared identifier 'strtold_l'; did you mean 'strtoll'?
    return strtold_l(__a, __p2, _LIBCPP_GET_C_LOCALE);
           ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/cstdlib:106:9: note: 'strtoll' declared here
using ::strtoll _LIBCPP_USING_IF_EXISTS;
        ^
In file included from rglview.cpp:8:
/opt/local/libexec/llvm-15/bin/../include/c++/v1/locale:1118:9: error: use of undeclared identifier 'sscanf_l'
    if (__libcpp_sscanf_l(__buf.c_str(), _LIBCPP_GET_C_LOCALE, "%p", &__v) != 1)
        ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/__bsd_locale_defaults.h:34:61: note: expanded from macro '__libcpp_sscanf_l'
#define __libcpp_sscanf_l(...)                              sscanf_l(__VA_ARGS__)
                                                            ^
In file included from rglview.cpp:8:
/opt/local/libexec/llvm-15/bin/../include/c++/v1/locale:1225:18: error: use of undeclared identifier 'isxdigit_l'; did you mean 'isxdigit'?
            if (!isxdigit_l(*__ns, _LIBCPP_GET_C_LOCALE))
                 ^
/opt/local/libexec/llvm-15/bin/../include/c++/v1/cctype:115:9: note: 'isxdigit' declared here
using ::isxdigit _LIBCPP_USING_IF_EXISTS;
        ^
In file included from rglview.cpp:8:
/opt/local/libexec/llvm-15/bin/../include/c++/v1/locale:1225:18: error: too many arguments to function call, expected 1, have 2; did you mean '::std::isxdigit'?
            if (!isxdigit_l(*__ns, _LIBCPP_GET_C_LOCALE))
                 ^~~~~~~~~~
/opt/local/libexec/llvm-15/bin/../include/c++/v1/cctype:115:9: note: '::std::isxdigit' declared here
using ::isxdigit _LIBCPP_USING_IF_EXISTS;
        ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make: *** [rglview.o] Error 1
ERROR: compilation failed for package ‘rgl’
* removing ‘/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_R_R-rgl/R-rgl/work/destroot/opt/local/Library/Frameworks/R.framework/Versions/4.3/Resources/library/rgl’
Command failed:  cd "/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_R_R-rgl/R-rgl/work/rgl" && /opt/local/bin/R CMD INSTALL . --configure-args=' --with-x --x-includes=/opt/local/include/X11 --x-libraries=/opt/local/lib ' --library=/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_R_R-rgl/R-rgl/work/destroot/opt/local/Library/Frameworks/R.framework/Versions/4.3/Resources/library --install-tests 
Exit code: 1

Same failure with 1.2.1 and upstream 1.2.8.

Issue: https://github.com/dmurdoch/rgl/issues/397 (without a solution there)

Attachments (1)

R-rgl_14.1.2.txt (694.5 KB) - added by barracuda156 5 months ago.

Download all attachments as: .zip

Change History (5)

Changed 5 months ago by barracuda156

Attachment: R-rgl_14.1.2.txt added

comment:1 Changed 5 months ago by barracuda156

Turns out, disabling X11 fixes the build on Sonoma. No idea why X11 is broken here, but I will conditionally disable it now to unbreak the port.

comment:2 in reply to:  1 ; Changed 5 months ago by ryandesign (Ryan Carsten Schmidt)

Replying to barracuda156:

Turns out, disabling X11 fixes the build on Sonoma.

The build is not broken on Sonoma or any other OS version, or at least was not the last time a build was attempted, according to https://ports.macports.org/port/R-rgl/details/. We haven't attempted any builds on Sonoma arm64 yet. It's certainly possible something is broken only on Sonoma arm64, or that something has broken generally in the months since the last builds were done. I tried building R-rgl @1.2.1 on my Monterey x86_64 system just now and it succeeded.

comment:3 in reply to:  2 Changed 5 months ago by barracuda156

Replying to ryandesign:

Replying to barracuda156:

Turns out, disabling X11 fixes the build on Sonoma.

The build is not broken on Sonoma or any other OS version, or at least was not the last time a build was attempted, according to https://ports.macports.org/port/R-rgl/details/. We haven't attempted any builds on Sonoma arm64 yet. It's certainly possible something is broken only on Sonoma arm64, or that something has broken generally in the months since the last builds were done. I tried building R-rgl @1.2.1 on my Monterey x86_64 system just now and it succeeded.

I have nothing else at the moment to test on, but it does fail for me on 14.1.2. No idea why, tbh, looks weird. Possibly Sonoma is just too raw; possibly, rgl has not been tested comprehensively on it.

Anyway, X11 is not required for rgl on MacOS, so just not enabling it explicitly on Sonoma is fine IMO.

  1. S. The package is a bit tricky: AFAIR, I had some troubles when tried to configure it to use Macports GL on PPC – eventually I gave up and just disabled it.

comment:4 Changed 5 months ago by barracuda156

Note: See TracTickets for help on using tickets.