GNU/Linux >> Znalost Linux >  >> Linux

Propojení libc++ s projektem CMake na Linuxu

"Správným" způsobem, jak toho v CMake v tuto chvíli provést, dokud nebude přidána konkrétní základní funkce pro přepínání standardních knihoven, je použít soubor toolchain.

V tomto souboru toolchain zadáte kompilátor atd. podobně jako v ostatních odpovědích zde.

ALE co je skvělé na toolchainech je, že je lze rychle vyměnit buď na příkazovém řádku (pomocí -DCMAKE_TOOLCHAIN_FILE=cesta/k/souboru) NEBO ve VSCode s nainstalovaným rozšířením CMakeTools a pravděpodobně i jinými editory.

Ale muset ručně kódovat své vlastní soubory toolchain je další obskurní fuška! Žádná legrace!

Naštěstí jsem narazil na tento github, který jich udržuje sadu, takže je nemusíte psát od začátku! Mělo by být mnohem méně pravděpodobné, že se spletou.

https://github.com/ruslo/polly


Nezapomeňte nastavit kompilátor na clang++:

set(CMAKE_CXX_COMPILER "clang++")

Vyčistěte také soubory vygenerované cmake (smažte složku CMakeFiles a CMakeCache.txt ).

V závislosti na vašem systému může také pomoci nastavení

set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -stdlib=libc++ -lc++abi")

Linux
  1. Nastavte ZFS na Linuxu pomocí yum

  2. Jak nastavit nebo změnit název hostitele systému v systému Linux

  3. Jak nastavit proměnnou $Path v Linuxu

  1. Nastavte nebo změňte uživatelské heslo v systému Linux

  2. Služba operačního systému Linux „lm_sensors“

  3. rbash – Nastavení omezeného prostředí v Linuxu

  1. Statické linkování Linuxu je mrtvé?

  2. Rozšířené Ascii v Linuxu

  3. Linux Framebuffer správně nastavil rozlišení