Skip to content

dtk6core-6.0.28 doesn't compile against dtk6log-0.0.2 when BUILD_WITH_SYSTEMD OFF #223

Description

@daf0x

SUMMARY | 问题概要

When compiling dtk6core-6.0.28 I encountered the following error:

/var/tmp/portage/gui-libs/dtk6core-6.0.28/work/dtk6core-6.0.28/src/log/LogManager.cpp:12:10: fatal error: JournalAppender.h: No such file or directory
   12 | #include <JournalAppender.h>
      |          ^~~~~~~~~~~~~~~~~~~
compilation terminated.

This appears to be because I built dtk6log-0.0.2 with the BUILD_WITH_SYSTEMD option set to OFF.

I tried to find out if dtk6core, or Deepin in general, has a hard dependency on systemd, but I could not find a conclusive answer. However, given that dtk6log has an option to build without systemd support, and I have seen similar code in other Deeping projects, I feel that probably building and using Deeping should be possible without systemd. As such, it seems to me that this is a bug in dtk6core, and there should be a similar BUILD_WITH_SYSTEMD option in this project. Alternatively, if systemd is a hard dependency, then the option in dtk6log does not seem to make much sense.

If you could, please clarify the stance of Deepin on supporting Linux distributions without systemd?

DTK and OS VERSIONS | DTK&系统版本信息

dtk6core-6.0.28
dtk6log-0.0.2

Minimal Reproducible Case Code | 最小复现案例代码

  1. Build dtk6log-0.0.2 with cmake -DBUILD_WITH_SYSTEMD=OFF
  2. Try to build dtk6core-6.0.28

OBSERVED RESULT | 观察到的结果

/var/tmp/portage/gui-libs/dtk6core-6.0.28/work/dtk6core-6.0.28/src/log/LogManager.cpp:12:10: fatal error: JournalAppender.h: No such file or directory
   12 | #include <JournalAppender.h>
      |          ^~~~~~~~~~~~~~~~~~~
compilation terminated.

EXPECTED RESULT | 期望的结果

Compilation should succeed

ADDITIONAL INFORMATION | 额外补充

I am wanting to try out the Deepin Desktop Environment on Gentoo Linux (without systemd). My current/first/intermediate, goal is to compile the treeland window manager. Treeland has a dependency on dtk6declarative, which in turn depends on dtk6core.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions