LINUX.ORG.RU

История изменений

Исправление fsb4000, (текущая версия) :

  1. build2 + gcc: https://build2.org/ и https://build2.org/blog/build2-cxx20-modules-gcc.xhtml

  2. будущий CMake(3.24 ?) с патченным gcc: https://gitlab.kitware.com/cmake/cmake/-/issues/18355#note_1179696

  3. Makefile: поддерживает и clang и gcc:

clang++ -std=c++20 --precompile -fprebuilt-module-path=. -c mod.cppm -o mod.pcm
clang++ -std=c++20 -fprebuilt-module-path=. main.cpp mod.pcm
clang++ -x c++-module -std=c++20 -fmodules -fbuiltin-module-map -stdlib=libc++ --precompile a.cc
clang++ -std=c++20 -fmodules -fbuiltin-module-map -fmodule-file=a.pcm -stdlib=libc++ -c a-impl.cc

или так:

g++- -std=c++20 -fmodules-ts -c -x c++-system-header vector iostream
g++- -std=c++20 -fmodules-ts -c foo.cc -o foo.o
g++- -std=c++20 -fmodules-ts -c main.cpp -o main.o
g++- -std=c++20 -fmodules-ts foo.o main.o -o foo.x

какие-то такие команды нужны, я в основном Visual C++ пользуюсь.

Исправление fsb4000, :

  1. build2 + gcc: https://build2.org/ и https://build2.org/blog/build2-cxx20-modules-gcc.xhtml

  2. будущий CMake(3.24 ?) с патченным gcc: https://gitlab.kitware.com/cmake/cmake/-/issues/18355#note_1179696

  3. Makefile: поддерживает и clang и gcc:

clang++ -std=c++20 --precompile -fprebuilt-module-path=. -c mod.cppm -o mod.pcm
clang++ -std=c++20 -fprebuilt-module-path=. main.cpp mod.pcm

или так:

g++- -std=c++20 -fmodules-ts -c -x c++-system-header vector iostream
g++- -std=c++20 -fmodules-ts -c foo.cc -o foo.o
g++- -std=c++20 -fmodules-ts -c main.cpp -o main.o
g++- -std=c++20 -fmodules-ts foo.o main.o -o foo.x

какие-то такие команды нужны, я в основном Visual C++ пользуюсь.

Исправление fsb4000, :

  1. build2 + gcc: https://build2.org/ и https://build2.org/blog/build2-cxx20-modules-gcc.xhtml

  2. будущий CMake 3.24 с патченным gcc: https://gitlab.kitware.com/cmake/cmake/-/issues/18355#note_1179696

  3. Makefile: поддерживает и clang и gcc:

clang++ -std=c++20 --precompile -fprebuilt-module-path=. -c mod.cppm -o mod.pcm
clang++ -std=c++20 -fprebuilt-module-path=. main.cpp mod.pcm

или так:

g++- -std=c++20 -fmodules-ts -c -x c++-system-header vector iostream
g++- -std=c++20 -fmodules-ts -c foo.cc -o foo.o
g++- -std=c++20 -fmodules-ts -c main.cpp -o main.o
g++- -std=c++20 -fmodules-ts foo.o main.o -o foo.x

какие-то такие команды нужны, я в основном Visual C++ пользуюсь.

Исходная версия fsb4000, :

  1. build2 + gcc: https://build2.org/

  2. будущий CMake 3.24 с патченным gcc: https://gitlab.kitware.com/cmake/cmake/-/issues/18355#note_1179696

  3. Makefile: поддерживает и clang и gcc:

clang++ -std=c++20 --precompile -fprebuilt-module-path=. -c mod.cppm -o mod.pcm
clang++ -std=c++20 -fprebuilt-module-path=. main.cpp mod.pcm

или так:

g++- -std=c++20 -fmodules-ts -c -x c++-system-header vector iostream
g++- -std=c++20 -fmodules-ts -c foo.cc -o foo.o
g++- -std=c++20 -fmodules-ts -c main.cpp -o main.o
g++- -std=c++20 -fmodules-ts foo.o main.o -o foo.x

какие-то такие команды нужны, я в основном Visual C++ пользуюсь.