Skip to content

find_package(Vix) fails due to missing Boost::system / Boost::filesystem #149

@GaspardKirira

Description

@GaspardKirira

Description

When using find_package(Vix CONFIG REQUIRED) in a downstream project, CMake fails with errors such as:

The link interface of target "vix::core" contains:
  Boost::filesystem
but the target was not found

or:

Boost::system target missing
This happens even when Boost is installed on the system.

Root cause
VixTargets.cmake was included before resolving required dependencies.
Boost targets (Boost::system, Boost::filesystem) were referenced in exported link interfaces without being guaranteed to exist.
Deprecated FindBoost behavior caused additional issues on macOS (CMP0167).

Affected platforms
macOS (Homebrew + AppleClang)

Linux (CMake ≥ 3.20)

Fix
Ensure all dependencies are resolved before loading VixTargets.cmake.
Prefer Boost CONFIG mode on modern CMake.
Remove unnecessary Boost::filesystem leakage from public APIs.

Status
✅ Fixed in v1.17.4

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingcliVix CLI (vix new, build, run, dev)coreCore runtime, HTTP server, executor, lifecyclefixedIssue resolved and verified in a released version.utilsLogger, helpers, utilitieswebsocketWebSocket server and protocol layer

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions