使用libssh构建libgit2 - 编辑调用约定?

时间:2016-10-17 17:58:25

标签: git ssh libgit2 libssh2

我正在尝试构建libgit2以包含ssh,我正在遵循此处的教程Adding ssh support to the Visual Studio 2015 Git plug-in

在评论部分,Tom Sollas提到在libssh上运行cmake后执行以下操作

  
      
  • 在VS2015中打开生成的build \ libssh2.sln,编辑libssh2项目并将调用约定设置为__stdcall(/ Gz),将构建类型设置为" Release"并重建所有(注意:必须发布!)
  •   

我不知道"编辑项目和设置调用约定是什么意思。"我想这是一个C ++的东西?这是我从未使用过的。我是一个c#开发者。

1 个答案:

答案 0 :(得分:1)

是的,这是一个C / C ++的东西。 Calling conventions指定函数如何从堆栈中取出参数并返回结果;调用者需要以被调用函数期望接收它们的方式提供参数,否则程序将崩溃。

打开项目的“属性”页面。在“编译器”部分中,您将找到“呼叫约定”。默认情况下,它们为cdecl。将它们更改为stdcall,然后构建项目。