Files
FTXUI/doc/installation_conan.md
Xiao Di 775ad9ce5e
Some checks failed
Build / Bazel, cl, windows-latest (push) Has been cancelled
Build / Bazel, clang++, macos-latest (push) Has been cancelled
Build / Bazel, clang++, ubuntu-latest (push) Has been cancelled
Build / Bazel, g++, macos-latest (push) Has been cancelled
Build / Bazel, g++, ubuntu-latest (push) Has been cancelled
Build / CMake, cl, windows-latest (push) Has been cancelled
Build / CMake, gcc, ubuntu-latest (push) Has been cancelled
Build / CMake, llvm, ubuntu-latest (push) Has been cancelled
Build / CMake, llvm, macos-latest (push) Has been cancelled
Build / Test modules (llvm, ubuntu-latest) (push) Has been cancelled
Documentation / documentation (push) Has been cancelled
Improved the installation method via Conan. (#1106)
2025-09-01 10:02:57 +02:00

3.2 KiB
Raw Blame History

@page installation_conan Conan @tableofcontents

FTXUI can be easily obtained and integrated into your project using the Conan package manager.

Prerequisites

First, ensure that Conan is installed on your system. If not, you can install it via pip:

pip install conan

Conan often works in tandem with CMake, so you will need to have CMake installed as well. Once you have confirmed both Conan and CMake are installed, create a project directory, for example, ftxui-demo:

mkdir C:\ftxui-demo
cd C:\ftxui-demo

Configuration

After ensuring your environment is set up correctly, create a Conan configuration file conanfile.txt. This file is used to declare your project's dependencies. The community-maintained package for FTXUI can be found on Conan Center.

Note

This is an unofficial build script. This means it is not maintained by the FTXUI team but by the community. The package maintainer appears to actively update it to the latest releases. Many thanks to the maintainer for their work!

@todo If you are familiar with the process, please consider adding an "official" build script to Conan Center. This could be a GitHub Action that automatically updates Conan Center upon new releases.

[requires]
ftxui/6.0.2

[generators]
CMakeDeps
CMakeToolchain

[layout]
cmake_layout

Install Dependencies and Build

Once configured, run the following command to install FTXUI and its dependencies:

conan install . --output-folder=build --build=missing

This will download and install ftxui/6.0.2 along with all its dependencies from Conan's remote repositories.

After the installation completes, you can test it by creating a demo.cpp file in your project directory:

#include <ftxui/screen/screen.hpp>
#include <ftxui/dom/elements.hpp>
#include <iostream>

int main() {
    using namespace ftxui;
    auto document = hbox({
        text(" Hello "),
        text("FTXUI ") | bold | color(Color::Red),
        text(" world! ")
    });
    auto screen = Screen::Create(Dimension::Full(), Dimension::Fit(document));
    Render(screen, document);
    std::cout << screen.ToString() << std::endl;
    return 0;
}

If the test is successful, you can then create a CMakeLists.txt file in the project directory:

cmake_minimum_required(VERSION 3.20)
project(ftxui-demo)

# Set the C++ standard
set(CMAKE_CXX_STANDARD 20)

# Find the FTXUI package installed via Conan
find_package(ftxui CONFIG REQUIRED)

# Create the executable
add_executable(demo demo.cpp)

# Link the executable to the FTXUI library
target_link_libraries(demo PRIVATE ftxui::component)

@todo 考虑到中国多数地区使用Conan很有可能遇到各种网络问题我想做一个定制的版本说明但是我对conan的了解有限再加上没有找到合适的资料因此这个计划短暂的被搁置了如果您知道方法欢迎在中文版本的下方留下评论以提醒我


Previous
Getting Started