跳转至内容
  • 版块
  • 最新
  • 标签
  • 热门
  • Online Tools
  • 用户
  • 群组
折叠
品牌标识

D2Learn Forums

  1. 主页
  2. SubForums
  3. 现代C++ | mcpp论坛
  4. llmapi项目在使用xmake构建时无法找到std.cc

llmapi项目在使用xmake构建时无法找到std.cc

已定时 已固定 已锁定 已移动 已解决 现代C++ | mcpp论坛
求助c++23xmakellmapi
5 帖子 2 发布者 23 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • mikami-wM 离线
    mikami-wM 离线
    mikami-w
    编写于 最后由 编辑
    #1

    在构建llmapi时, 使用xlings安装依赖后, 使用xmake构建项目时遇到了无法找到std.cc的错误.
    我已经测试了我的gcc15是完整的, 可以编译一个简单的使用import std;的hello world源文件(需要预先在同目录下编译std模块到gcm.cache/std.gcm).
    我的std.cc位于/usr/include/c++/15/bits/std.cc, 但xmake的默认查找目录貌似不包含这里(其默认查找目录包含在下面的输出中).
    请问如何能使xmake能够找到我的std.cc? 谢谢.
    以下是xmake的输出:

    mikami@LAPTOP-BU4O7VF4:~/works/cpp/llmapi$ xmake f -c --cc=gcc-15 --cxx=g++-15 --ld=g++-15
    checking for platform ... linux
    checking for architecture ... x86_64
    mikami@LAPTOP-BU4O7VF4:~/works/cpp/llmapi$ xmake -v
    checking for flags (-std=c++23) ... ok
    checking for flags (-D_GLIBCXX_USE_CXX11_ABI=1) ... ok
    checking for flags (-fPIC) ... ok
    checking for flags (gcc_deps_format) ... ok
    checking for flags (gcc_deps_file) ... ok
    checking for flags (gcc_deps_output) ... ok
    [  0%]: <basic> scanning.module.deps examples/basic.cpp
    g++-15 -E -x c++ -m64 -std=c++23 -fmodules -D_GLIBCXX_USE_CXX11_ABI=1 examples/basic.cpp -MT build/.gens/basic/linux/x86_64/release/rules/bmi/cache/scans/35338703ed02bf94/basic.cpp.json -MD -MF build/.gens/basic/linux/x86_64/release/rules/bmi/cache/scans/35338703ed02bf94/basic.cpp.d -fdeps-format=p1689r5 -fdeps-file=build/.gens/basic/linux/x86_64/release/rules/bmi/cache/scans/35338703ed02bf94/basic.cpp.json -fdeps-target=build/.objs/basic/linux/x86_64/release/examples/basic.cpp.o -o build/.gens/basic/linux/x86_64/release/rules/bmi/cache/scans/35338703ed02bf94/basic.cpp.i
    [  0%]: <llmapi> scanning.module.deps /usr/lib/gcc/x86_64-linux-gnu/include/c++/15/bits/std.cc
    g++-15 -E -x c++ -m64 -std=c++23 -Isrc/json -isystem /home/mikami/.xmake/packages/l/libcurl/8.11.0/65e7361bb5ef4bb4973edb832c4b9fd1/include -fPIC -fmodules -D_GLIBCXX_USE_CXX11_ABI=1 /usr/lib/gcc/x86_64-linux-gnu/include/c++/15/bits/std.cc -MT build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/922d87335b137076/std.cc.json -MD -MF build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/922d87335b137076/std.cc.d -fdeps-format=p1689r5 -fdeps-file=build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/922d87335b137076/std.cc.json -fdeps-target=build/.objs/llmapi/linux/x86_64/release/usr/lib/gcc/x86_64-linux-gnu/include/c++/15/bits/std.cc.o -o build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/922d87335b137076/std.cc.i
    [  0%]: <llmapi> scanning.module.deps /usr/lib/gcc/x86_64-linux-gnu/include/c++/15/bits/std.compat.cc
    g++-15 -E -x c++ -m64 -std=c++23 -Isrc/json -isystem /home/mikami/.xmake/packages/l/libcurl/8.11.0/65e7361bb5ef4bb4973edb832c4b9fd1/include -fPIC -fmodules -D_GLIBCXX_USE_CXX11_ABI=1 /usr/lib/gcc/x86_64-linux-gnu/include/c++/15/bits/std.compat.cc -MT build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/59b1871094e55311/std.compat.cc.json -MD -MF build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/59b1871094e55311/std.compat.cc.d -fdeps-format=p1689r5 -fdeps-file=build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/59b1871094e55311/std.compat.cc.json -fdeps-target=build/.objs/llmapi/linux/x86_64/release/usr/lib/gcc/x86_64-linux-gnu/include/c++/15/bits/std.compat.cc.o -o build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/59b1871094e55311/std.compat.cc.i
    cc1plus: fatal error: /usr/lib/gcc/x86_64-linux-gnu/include/c++/15/bits/std.cc: No such file or directory
    [  0%]: <llmapi> scanning.module.deps src/llmapi.cppm
    compilation terminated.
    g++-15 -E -x c++ -m64 -std=c++23 -Isrc/json -isystem /home/mikami/.xmake/packages/l/libcurl/8.11.0/65e7361bb5ef4bb4973edb832c4b9fd1/include -fPIC -fmodules -D_GLIBCXX_USE_CXX11_ABI=1 src/llmapi.cppm -MT build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/17508e67bf332195/llmapi.cppm.json -MD -MF build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/17508e67bf332195/llmapi.cppm.d -fdeps-format=p1689r5 -fdeps-file=build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/17508e67bf332195/llmapi.cppm.json -fdeps-target=build/.objs/llmapi/linux/x86_64/release/src/llmapi.cppm.o -o build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/17508e67bf332195/llmapi.cppm.i
    [  0%]: <llmapi_c> scanning.module.deps src/c/llmapi.cpp
    cc1plus: fatal error: /usr/lib/gcc/x86_64-linux-gnu/include/c++/15/bits/std.compat.cc: No such file or directory
    compilation terminated.
    g++-15 -E -x c++ -m64 -std=c++23 -Iinclude -isystem /home/mikami/.xmake/packages/l/libcurl/8.11.0/65e7361bb5ef4bb4973edb832c4b9fd1/include -fmodules -D_GLIBCXX_USE_CXX11_ABI=1 src/c/llmapi.cpp -MT build/.gens/llmapi_c/linux/x86_64/release/rules/bmi/cache/scans/c38b032c56682194/llmapi.cpp.json -MD -MF build/.gens/llmapi_c/linux/x86_64/release/rules/bmi/cache/scans/c38b032c56682194/llmapi.cpp.d -fdeps-format=p1689r5 -fdeps-file=build/.gens/llmapi_c/linux/x86_64/release/rules/bmi/cache/scans/c38b032c56682194/llmapi.cpp.json -fdeps-target=build/.objs/llmapi_c/linux/x86_64/release/src/c/llmapi.cpp.o -o build/.gens/llmapi_c/linux/x86_64/release/rules/bmi/cache/scans/c38b032c56682194/llmapi.cpp.i
    [  0%]: <llmapi> scanning.module.deps src/url.cppm
    g++-15 -E -x c++ -m64 -std=c++23 -Isrc/json -isystem /home/mikami/.xmake/packages/l/libcurl/8.11.0/65e7361bb5ef4bb4973edb832c4b9fd1/include -fPIC -fmodules -D_GLIBCXX_USE_CXX11_ABI=1 src/url.cppm -MT build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/92c8c3ac0896bf6f/url.cppm.json -MD -MF build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/92c8c3ac0896bf6f/url.cppm.d -fdeps-format=p1689r5 -fdeps-file=build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/92c8c3ac0896bf6f/url.cppm.json -fdeps-target=build/.objs/llmapi/linux/x86_64/release/src/url.cppm.o -o build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/92c8c3ac0896bf6f/url.cppm.i
    [  0%]: <llmapi> scanning.module.deps src/openai.cppm
    g++-15 -E -x c++ -m64 -std=c++23 -Isrc/json -isystem /home/mikami/.xmake/packages/l/libcurl/8.11.0/65e7361bb5ef4bb4973edb832c4b9fd1/include -fPIC -fmodules -D_GLIBCXX_USE_CXX11_ABI=1 src/openai.cppm -MT build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/fda3541d3c0ca884/openai.cppm.json -MD -MF build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/fda3541d3c0ca884/openai.cppm.d -fdeps-format=p1689r5 -fdeps-file=build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/fda3541d3c0ca884/openai.cppm.json -fdeps-target=build/.objs/llmapi/linux/x86_64/release/src/openai.cppm.o -o build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/fda3541d3c0ca884/openai.cppm.i
    [  0%]: <llmapi> scanning.module.deps src/json/json.cppm
    g++-15 -E -x c++ -m64 -std=c++23 -Isrc/json -isystem /home/mikami/.xmake/packages/l/libcurl/8.11.0/65e7361bb5ef4bb4973edb832c4b9fd1/include -fPIC -fmodules -D_GLIBCXX_USE_CXX11_ABI=1 src/json/json.cppm -MT build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/549d005a115b5f07/json.cppm.json -MD -MF build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/549d005a115b5f07/json.cppm.d -fdeps-format=p1689r5 -fdeps-file=build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/549d005a115b5f07/json.cppm.json -fdeps-target=build/.objs/llmapi/linux/x86_64/release/src/json/json.cppm.o -o build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/549d005a115b5f07/json.cppm.i
    [  0%]: <hello_mcpp> scanning.module.deps examples/hello_mcpp.cpp
    g++-15 -E -x c++ -m64 -std=c++23 -fmodules -D_GLIBCXX_USE_CXX11_ABI=1 examples/hello_mcpp.cpp -MT build/.gens/hello_mcpp/linux/x86_64/release/rules/bmi/cache/scans/55ccf37cb527a7b6/hello_mcpp.cpp.json -MD -MF build/.gens/hello_mcpp/linux/x86_64/release/rules/bmi/cache/scans/55ccf37cb527a7b6/hello_mcpp.cpp.d -fdeps-format=p1689r5 -fdeps-file=build/.gens/hello_mcpp/linux/x86_64/release/rules/bmi/cache/scans/55ccf37cb527a7b6/hello_mcpp.cpp.json -fdeps-target=build/.objs/hello_mcpp/linux/x86_64/release/examples/hello_mcpp.cpp.o -o build/.gens/hello_mcpp/linux/x86_64/release/rules/bmi/cache/scans/55ccf37cb527a7b6/hello_mcpp.cpp.i
    [  0%]: <chat> scanning.module.deps examples/chat.cpp
    g++-15 -E -x c++ -m64 -std=c++23 -fmodules -D_GLIBCXX_USE_CXX11_ABI=1 examples/chat.cpp -MT build/.gens/chat/linux/x86_64/release/rules/bmi/cache/scans/6eeaedd8b724c8ce/chat.cpp.json -MD -MF build/.gens/chat/linux/x86_64/release/rules/bmi/cache/scans/6eeaedd8b724c8ce/chat.cpp.d -fdeps-format=p1689r5 -fdeps-file=build/.gens/chat/linux/x86_64/release/rules/bmi/cache/scans/6eeaedd8b724c8ce/chat.cpp.json -fdeps-target=build/.objs/chat/linux/x86_64/release/examples/chat.cpp.o -o build/.gens/chat/linux/x86_64/release/rules/bmi/cache/scans/6eeaedd8b724c8ce/chat.cpp.i
    error: execv(g++-15 -E -x c++ -m64 -std=c++23 -Isrc/json -isystem /home/mikami/.xmake/packages/l/libcurl/8.11.0/65e7361bb5ef4bb4973edb832c4b9fd1/include -fPIC -fmodules -D_GLIBCXX_USE_CXX11_ABI=1 /usr/lib/gcc/x86_64-linux-gnu/include/c++/15/bits/std.cc -MT build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/922d87335b137076/std.cc.json -MD -MF build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/922d87335b137076/std.cc.d -fdeps-format=p1689r5 -fdeps-file=build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/922d87335b137076/std.cc.json -fdeps-target=build/.objs/llmapi/linux/x86_64/release/usr/lib/gcc/x86_64-linux-gnu/include/c++/15/bits/std.cc.o -o build/.gens/llmapi/linux/x86_64/release/rules/bmi/cache/scans/922d87335b137076/std.cc.i) failed(1)
    
    sunrisepeakS 1 条回复 最后回复
    0
    • sunrisepeakS 离线
      sunrisepeakS 离线
      sunrisepeak d2learn-dev
      回复了mikami-w 最后由 编辑
      #2

      @mikami-w 编译一个最小的 import std.compat; 程序 可以通过吗

      1 条回复 最后回复
      0
      • sunrisepeakS 离线
        sunrisepeakS 离线
        sunrisepeak d2learn-dev
        编写于 最后由 编辑
        #3

        感觉可能和gcc工具链有关
        llmapi我好想忘记加xlings的依赖描述文件了, d2x是加了的
        可以, 手动使用 xlings install gcc@15.1 安装gcc15
        然后在项目目录清除一下缓存

        xmake clean
        rm .xmake build -r
        xlings install gcc@15.1
        g++ --version
        xmake build
        

        如果上面过程出现问题 可以在把log贴上来

        1 条回复 最后回复
        0
        • mikami-wM 离线
          mikami-wM 离线
          mikami-w
          编写于 最后由 编辑
          #4

          按照您的方法构建成功了, 感谢.
          感觉这个包管理很有意思, 有时间要研究一下了😄

          1 条回复 最后回复
          1
          • sunrisepeakS 离线
            sunrisepeakS 离线
            sunrisepeak d2learn-dev
            编写于 最后由 编辑
            #5

            llmapi 和 xlings 都算是初期项目, 有什么问题或想法都可以反馈到项目issue里

            1 条回复 最后回复
            0
            • ,sunrisepeakS sunrisepeak 将这个主题转为问答主题
            • ,sunrisepeakS sunrisepeak 将这个主题标记为已解决

            • 登录

            • 没有帐号? 注册

            • 登录或注册以进行搜索。
            d2learn forums Powered by NodeBB
            • 第一个帖子
              最后一个帖子
            0
            • 版块
            • 最新
            • 标签
            • 热门
            • Online Tools
            • 用户
            • 群组