Skip to content

compat.opencv编译链接报错 #252

Description

@tz12323

系统win11
源代码src/main.cpp

// test_opencv — generated by `mcpp new`
import std;
#include <opencv2/opencv.hpp>

int main(int argc, char* argv[]) {
    std::println("Hello from test_opencv!");
    std::println("Built with import std + std::println on modular C++23.");
    if (argc > 1) {
        for (int i = 1; i < argc; ++i) std::println("  arg[{}] = {}", i, argv[i]);
    }
    return 0;
}

mcpp.toml

[package]
name        = "test_opencv"
version     = "0.1.0"
description = "A modular C++23 package"
license     = "Apache-2.0"

[dependencies]
compat.opencv = "5.0.0"

mcpp运行编译报错

mcpp build
PS D:\bianchen\c\test_opencv> mcpp build
   Resolving toolchain
    Resolved llvm@20.1.7 → @mcpp/registry/data/xpkgs/xim-x-llvm/20.1.7/bin/clang++.exe
  build.mcpp compiling
  build.mcpp running
warning: D:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0: [build].flags glob '**/3rdparty/mlas/**' matched no source file
warning: D:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0: [build].flags glob '**/clsrc/opencl_kernels_core.cpp' matched no source file
warning: D:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0: [build].flags glob '**/clsrc/opencl_kernels_geometry.cpp' matched no source fi
le                                                                                                                                                 warning: D:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0: [build].flags glob '**/clsrc/opencl_kernels_imgproc.cpp' matched no source fil
e                                                                                                                                                  warning: D:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0: [build].flags glob '*/3rdparty/mlas/lib/platform.cpp' matched no source file
    Inferred sources [src/**/*.{cppm,cpp,cc,c,S,s,asm}]
    Inferred target test_opencv (bin from src/main.cpp)
   Compiling test_opencv v0.1.0 (.)
   Compiling compat.opencv v5.0.0
    Finished release [optimized] in 97.81s

Activity

  1. Sunrisepeak commented on Jul 20, 2026

    @Sunrisepeak
    Member

    这个是警告应该不影响使用

  2. tz12323 commented on Jul 21, 2026

    @tz12323
    Author

    并非如此
    mcpp build没有报错
    但是mcpp run直接报错

    PS D:\bianchen\c\test_opencv> mcpp run
    error: build failed
    cmd /c "D:/cbuild/registry/data/xpkgs/xim-x-llvm/20.1.7/bin/clang-scan-deps.exe -format=p1689 -- D:/cbuild/registry/data/xpkgs/xim-x-llvm/20.1.7/bin/clang++.exe -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\mcpp_generated -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0 -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\3rdparty\dlpack\include -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\mcpp_generated/3rdparty/libjpeg-turbo -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\3rdparty\libjpeg-turbo\src -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\mcpp_generated/3rdparty/zlib -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\3rdparty\zlib -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\modules\core\include -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\mcpp_generated/modules/core -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\modules\flann\include -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\modules\geometry\include -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\modules\imgproc\include -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\mcpp_generated/modules/imgproc -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\3rdparty\libpng -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\modules\imgcodecs\include -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\modules\highgui\include -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\mcpp_generated/modules/highgui -std=c++23 -fmodule-file=std=D:\bianchen\c\test_opencv\target\x86_64-windows-msvc\1053922e612c4d89\pcm.cache\std.pcm -fprebuilt-module-path=D:\bianchen\c\test_opencv\target\x86_64-windows-msvc\1053922e612c4d89\pcm.cache -O0 -g  -c D:/bianchen/c/test_opencv/src/main.cpp -o obj/test_opencv/src/main.o > obj/test_opencv/src/main.cpp.ddi"
    Error while scanning dependencies for D:/bianchen/c/test_opencv/src/main.cpp:
    D:/bianchen/c/test_opencv/src/main.cpp:3:10: fatal error: 'opencv2/opencv.hpp' file not found
    
  3. Sunrisepeak commented on Jul 21, 2026

    @Sunrisepeak
    Member

    并非如此 mcpp build没有报错 但是mcpp run直接报错

    PS D:\bianchen\c\test_opencv> mcpp run
    error: build failed
    cmd /c "D:/cbuild/registry/data/xpkgs/xim-x-llvm/20.1.7/bin/clang-scan-deps.exe -format=p1689 -- D:/cbuild/registry/data/xpkgs/xim-x-llvm/20.1.7/bin/clang++.exe -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\mcpp_generated -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0 -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\3rdparty\dlpack\include -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\mcpp_generated/3rdparty/libjpeg-turbo -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\3rdparty\libjpeg-turbo\src -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\mcpp_generated/3rdparty/zlib -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\3rdparty\zlib -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\modules\core\include -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\mcpp_generated/modules/core -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\modules\flann\include -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\modules\geometry\include -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\modules\imgproc\include -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\mcpp_generated/modules/imgproc -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\3rdparty\libpng -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\modules\imgcodecs\include -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\modules\highgui\include -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\mcpp_generated/modules/highgui -std=c++23 -fmodule-file=std=D:\bianchen\c\test_opencv\target\x86_64-windows-msvc\1053922e612c4d89\pcm.cache\std.pcm -fprebuilt-module-path=D:\bianchen\c\test_opencv\target\x86_64-windows-msvc\1053922e612c4d89\pcm.cache -O0 -g  -c D:/bianchen/c/test_opencv/src/main.cpp -o obj/test_opencv/src/main.o > obj/test_opencv/src/main.cpp.ddi"
    Error while scanning dependencies for D:/bianchen/c/test_opencv/src/main.cpp:
    D:/bianchen/c/test_opencv/src/main.cpp:3:10: fatal error: 'opencv2/opencv.hpp' file not found
    

    目前正重新拉上游基于上游进行修复

  4. Sunrisepeak commented on Jul 22, 2026

    @Sunrisepeak
    Member

    并非如此 mcpp build没有报错 但是mcpp run直接报错

    PS D:\bianchen\c\test_opencv> mcpp run
    error: build failed
    cmd /c "D:/cbuild/registry/data/xpkgs/xim-x-llvm/20.1.7/bin/clang-scan-deps.exe -format=p1689 -- D:/cbuild/registry/data/xpkgs/xim-x-llvm/20.1.7/bin/clang++.exe -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\mcpp_generated -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0 -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\3rdparty\dlpack\include -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\mcpp_generated/3rdparty/libjpeg-turbo -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\3rdparty\libjpeg-turbo\src -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\mcpp_generated/3rdparty/zlib -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\3rdparty\zlib -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\modules\core\include -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\mcpp_generated/modules/core -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\modules\flann\include -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\modules\geometry\include -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\modules\imgproc\include -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\mcpp_generated/modules/imgproc -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\3rdparty\libpng -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\modules\imgcodecs\include -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\opencv-5.0.0\modules\highgui\include -ID:\cbuild\registry\data\xpkgs\compat-x-compat.opencv\5.0.0\mcpp_generated/modules/highgui -std=c++23 -fmodule-file=std=D:\bianchen\c\test_opencv\target\x86_64-windows-msvc\1053922e612c4d89\pcm.cache\std.pcm -fprebuilt-module-path=D:\bianchen\c\test_opencv\target\x86_64-windows-msvc\1053922e612c4d89\pcm.cache -O0 -g  -c D:/bianchen/c/test_opencv/src/main.cpp -o obj/test_opencv/src/main.o > obj/test_opencv/src/main.cpp.ddi"
    Error while scanning dependencies for D:/bianchen/c/test_opencv/src/main.cpp:
    D:/bianchen/c/test_opencv/src/main.cpp:3:10: fatal error: 'opencv2/opencv.hpp' file not found
    

    @tz12323 更新已经合入, 可以 mcpp new myopencv --template opencv 来创建 模板工程, mcpp run 已经可以运行

  5. Sunrisepeak commented on Jul 22, 2026

    @Sunrisepeak
    Member

    现在可以用 import 来导入, 如果还有遇到问题再reopen

    https://github.com/Sunrisepeak/opencv-m

    Image
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions