我有一个 C# 项目,一个包装 C++ 项目的 CLI/C++ 项目。
我已经编译了 openCV 3.0.0 并且我正在使用完整的静态链接(*.lib 没有 *.dll 文件)
因为我想使用英特尔 IPP,所以我想使用英特尔编译器来编译 C++ 项目。
起初我认为我会遇到问题,因为 OpenCV 库不是使用 Intel 编译器编译的(它们是使用 VS2012 编译器编译的)。 因此,为了尝试,我将工具集标志切换到英特尔编译器 14.0,它工作正常,我可以运行我的应用程序……并使用 openCV 和 IPP。
您能否解释一下为什么这可行?动态加载(*.dll)是否相同?或者,如果我将 openCV 与动态加载一起使用,我将需要使用英特尔编译器对其进行编译?
谢谢
最佳答案
大致上。用于生成给定机器代码的编译器并不重要(除了代码的质量)。重要的是要遵守一些约定:目标代码文件的格式、命名外部对象和 ABI(调用函数的方式)。
关于c++ - 带有 openCV 的英特尔编译器它是如何工作的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33969471/