Skip to content

ACE does not compile on gcc14 without threads option #2366

@mzbro

Description

@mzbro

Version

6.5.21

Host machine and operating system

Debian Trixie (amd64) - bare metal

Target machine and operating system (if different from host)

Debian Trixie (amd64) - bare metal

Compiler name and version (including patch level)

gcc version 14.2.0 (Debian 14.2.0-17)

The $ACE_ROOT/ace/config.h file

config-linux.h

The $ACE_ROOT/include/makeinclude/platform_macros.GNU file

platform_linux.GNU

Contents of $ACE_ROOT/bin/MakeProjectCreator/config/default.features

I don't have this file.

AREA/CLASS/EXAMPLE AFFECTED:

$(ACE_ROOT)/ace

The problem effects:

ACE does not compile. It fails with error:

ACE_wrappers/ace/Thread_Manager.cpp:1506:13: error: ‘ace_mon’ was not declared in this scope
1506 | ace_mon.release();
| ^~~~~~~

Synopsis

When trying to compile without multithread support, build fails. Compilation command:

make static_libs_only=0 debug=0 optimize=0 threads=0 insure=0 -j28 install

Compilation is successful with option threads=1

Description

Cannot compile ACE lib without multithreadinig option. I tried to compile ACE with gcc 14. Previously I compiled on gcc 10.2 (Debian Bullseye) and it worked fine. We want to update our platform to Debian Trixie (gcc 14), but unfortunately ACE lib does not compile without threads=1 option, and we need it with threads=0.

Repeat by

Try to compile ace on a platform with gcc 14

Sample fix/ workaround

Unfortunately I'm not an ACE expert.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions