gpt4 book ai didi

c# - 有人使用 CLI 后端为 gcc 编译器编译 lib x264 吗?

转载 作者:行者123 更新时间:2023-11-30 16:04:18 26 4
gpt4 key购买 nike

有没有人使用 CLI backend for gcc 编译 lib x264编译器? (将x264编译成.net dll)

最佳答案

您使用 C99 功能吗?如果没有,带有 /clr:pure 选项的 Visual C++ 应该可以解决问题。您将需要混合一点 C++/CLI 来定义其他 .NET 项目可以调用的入口点,但这些可以位于完全独立的文件中(您可以与 native 项目共享整个纯 C 源文件)。

编辑:完成这项工作的基本指南:

  • 在 Visual Studio 中,创建一个 C++/CLI 类库项目
  • 将所有 C 源文件添加到项目
  • 在项目配置中,设置包含路径,以便找到您的 header
  • 在项目配置中,还将“公共(public)语言运行时的使用”设置为 /clr:pure
  • 在新建项目向导创建的 .cpp 文件中,为头文件添加 #include 指令,该头文件是您要使用的函数的原型(prototype)。
  • 在新项目向导创建的ref class(在上述 .cpp 文件中)中,添加一些调用 C 库函数的函数(可能是静态函数)。
  • 编译,添加此 .DLL 作为 C# 项目的引用,然后开始使用

作为提示,您可能希望创建执行有用工作的函数(对于对您有用的特定定义),而不是在 ref 类 中为库中的每个函数创建转发函数。特定项目)通过调用一堆库函数。

您可能希望熟悉 marshal_as 模板,该模板非常适合将 .NET System::String 转换为 C 字符串,然后再转换回来。

关于c# - 有人使用 CLI 后端为 gcc 编译器编译 lib x264 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3233886/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com