vs2022 с MSVC 14.43.34808
Windows 11 Pro 24H2
Использование cmake
Я использую httplib (https://github.com/yhirose/cpp-httplib) в моем модуле и когда Complize willscc will will in modul Операции внутри Thread.h < /p>
H:\PROGRA~1\MICROS~1\2022\COMMUN~1\VC\Tools\MSVC\1443~1.348\bin\Hostx86\x64\cl.exe /nologo /TP -Dtest_EXPORTS /DWIN32 /D_WINDOWS /EHsc /Ob0 /Od /RTC1 -std:c++20 -MDd -Zi /showIncludes @CMakeFiles\test.dir\loader.cpp.obj.modmap /FoCMakeFiles\test.dir\loader.cpp.obj /FdCMakeFiles\test.dir\ /FS -c D:\Users\H5-A312\Desktop\network_projects\msvc_complie_test\loader.cpp
H:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.43.34808\include\thread(170): error C2676: binary '+': 'const std::chrono::time_point' does not define this operator or a conversion to a type acceptable to the predefined operator
H:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.43.34808\include\xutility(2014): note: could be 'std::reverse_iterator std::operator +(reverse_iterator::difference_type,const std::reverse_iterator &) noexcept()'
H:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.43.34808\include\thread(170): note: 'std::reverse_iterator std::operator +(reverse_iterator::difference_type,const std::reverse_iterator &) noexcept()': could not deduce template argument for 'const std::reverse_iterator &' from 'const std::chrono::duration'
...
< /code>
mre: < /p>
P> загрузку.cpp:образноimport client;
int main() {
auto client = Client();
return 0;
}
< /code>
client.cppm:
module;
#include "httplib.h"
export module client;
export class Client
{
public:
Client()
{
}
private:
httplib::Client client = httplib::Client("localhost", 1080);
};
< /code>
cmakelists.txt:
cmake_minimum_required(VERSION 3.29)
project(test)
set(CMAKE_CXX_STANDARD 20)
add_library(test SHARED
loader.cpp
)
target_sources(test PRIVATE
FILE_SET modules TYPE CXX_MODULES
BASE_DIRS
${PROJECT_SOURCE_DIR}
FILES
client.cppm
)
< /code>
Проблема возникает только тогда, когда ссылка Httplib: < /p>
В модуле < /li>
В классе < /li>
с помощью MSVC (как MSYS2-кланг может легко скомпилировать) < /li>
< /u>
Подробнее здесь: https://stackoverflow.com/questions/794 ... le-feature
MSVC не может компилировать программу с функцией модуля C ++ 20 ⇐ C++
Программы на C++. Форум разработчиков
-
Anonymous
1740909205
Anonymous
vs2022 с MSVC 14.43.34808
Windows 11 Pro 24H2
Использование cmake
Я использую httplib (https://github.com/yhirose/cpp-httplib) в моем модуле и когда Complize willscc will will in modul Операции внутри Thread.h < /p>
H:\PROGRA~1\MICROS~1\2022\COMMUN~1\VC\Tools\MSVC\1443~1.348\bin\Hostx86\x64\cl.exe /nologo /TP -Dtest_EXPORTS /DWIN32 /D_WINDOWS /EHsc /Ob0 /Od /RTC1 -std:c++20 -MDd -Zi /showIncludes @CMakeFiles\test.dir\loader.cpp.obj.modmap /FoCMakeFiles\test.dir\loader.cpp.obj /FdCMakeFiles\test.dir\ /FS -c D:\Users\H5-A312\Desktop\network_projects\msvc_complie_test\loader.cpp
H:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.43.34808\include\thread(170): error C2676: binary '+': 'const std::chrono::time_point' does not define this operator or a conversion to a type acceptable to the predefined operator
H:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.43.34808\include\xutility(2014): note: could be 'std::reverse_iterator std::operator +(reverse_iterator::difference_type,const std::reverse_iterator &) noexcept()'
H:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.43.34808\include\thread(170): note: 'std::reverse_iterator std::operator +(reverse_iterator::difference_type,const std::reverse_iterator &) noexcept()': could not deduce template argument for 'const std::reverse_iterator &' from 'const std::chrono::duration'
...
< /code>
mre: < /p>
P> загрузку.cpp:образноimport client;
int main() {
auto client = Client();
return 0;
}
< /code>
client.cppm:
module;
#include "httplib.h"
export module client;
export class Client
{
public:
Client()
{
}
private:
httplib::Client client = httplib::Client("localhost", 1080);
};
< /code>
cmakelists.txt:
cmake_minimum_required(VERSION 3.29)
project(test)
set(CMAKE_CXX_STANDARD 20)
add_library(test SHARED
loader.cpp
)
target_sources(test PRIVATE
FILE_SET modules TYPE CXX_MODULES
BASE_DIRS
${PROJECT_SOURCE_DIR}
FILES
client.cppm
)
< /code>
Проблема возникает только тогда, когда ссылка Httplib: < /p>
В модуле < /li>
В классе < /li>
с помощью MSVC (как MSYS2-кланг может легко скомпилировать) < /li>
< /u>
Подробнее здесь: [url]https://stackoverflow.com/questions/79478667/msvc-unable-to-compile-program-with-c20-module-feature[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия