我无法在window平台上使用pthread

2024-02-21

我的环境是 Windows 8.1(64 位)并使用 Visual Studio 2010。

我确实将所有 *.dll 文件放在 system32 、 SYSWOW64 中(因为我使用 win8 64 位。)

并将 x64 系统的 *.lib 文件与 VC 2010 的链接位置。

当然,我添加了额外的文件夹 lib forders.. 、 include 文件夹.. 等。

但是当我尝试编译“pthread-used”项目时,发生了致命错误。

-source

#include<pthread.h>
#include<stdio.h>
int doit_id,trd_id;
pthread_t trd;
void *doit(void *data){
    doit_id = (int)data;
    return 0;
}
int main(){
    trd_id=pthread_create(&trd,NULL,doit,0);
    return (0);
}

-error

1.obj : error LNK2019: unresolved external symbol __imp__pthread_create (referenced in function _main)
C:\Users\~program Location~ : fatal error LNK1120: 1 unresolved externals

请帮我


事实是你的main()正在寻找名字__imp__pthread_create表示您正在为 32 位目标构建项目。

64 位 Win32 pthread 库有一个导入符号pthread_create()名称:

__imp_pthread_create

32 位 Win32 pthread 库具有:

__imp__pthread_create

请注意 32 位库中的额外下划线 - 它与您的名称约定相匹配main()正在寻找,因此这表明您正在为 32 位目标构建。额外的下划线是 x86 如何在 Win32 pthread 库使用的 cdecl 调用约定中构建处理名称的一部分。 x64 不使用 cdecl 调用约定(x64 只有一个调用约定),并且在 x64 版本中不会在符号前面添加下划线。

我认为您需要下载或构建 32 位 pthread 库,或者更改项目配置以构建 64 位目标。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我无法在window平台上使用pthread 的相关文章

随机推荐

  • 在 Angular 2 中激活路由*之前*解析值

    只要承诺尚未解决 我就想阻止访问路线 另外 我想将该承诺的返回值传递给路由组件 Several https stackoverflow com questions 36260780 angular 2 resolve root compon
  • PHP ssh2_exec 通道退出状态?

    好的 所以 pecl ssh2 应该是 libssh2 的包装器 libssh2 具有 libssh2 channel get exit status 有什么方法可以获取这些信息吗 I NEED STDOUT STDERR 退出状态 我得到
  • 对于 Rails,如何访问或打印配置变量(作为实验或测试/调试)

    例如 在config environments production rb在 Rails 3 应用程序中 有 config serve static assets false 和许多变数 如何将它们作为一个整体全部打印出来 也许在一个对象中
  • 空单元格的数据表默认渲染函数

    我想为我拥有的所有数据表中的所有空单元格定义默认值 但我不想为每一列都这样做 example dataTable ajaxSource sources deep txt columns data engine render function
  • 如何将嵌套的Python字典转换为对象?

    我正在寻找一种优雅的方法来使用带有一些嵌套字典和列表 即javascript样式对象语法 的字典上的属性访问来获取数据 例如 gt gt gt d a 1 b c 2 d hi foo bar 应该可以通过这种方式访问 gt gt gt x
  • appSettings 配置部分中不存在键“UserID”

    突然 当我尝试在设计器中的 Window Forms 应用程序中打开 10 多个表单中的 2 个时 开始出现此错误 为了防止在加载设计器之前可能发生的数据丢失 必须解决以下错误 appSettings 配置部分中不存在键 UserID 它曾
  • 在 Android 手机上录音电话吗?

    我尝试过并使用以下代码来记录拨出电话 但它没有 Override public void onReceive Context context Intent intent this context context if intent getA
  • Laravel 迁移中的时间格式?

    我想要一个输入 您可以在其中输入 EU 格式的时间 例如 12 00 或 21 34 时 分 我怎么做 Schema create posts function Blueprint table table gt increments id
  • 使用 CSS3rotateY 的卡片翻转效果,但具有多个面取决于按钮按下?

    所以我需要创建一个几乎完全相同的翻转图像this http desandro github com 3dtransforms examples card 01 html 但不同之处在于 如果我想要多个按钮并且每个按钮都翻转到特定的面 情况会
  • 安装 ReSharper 后 Visual Studio 2005 Intellisense 停止工作

    我安装了 ReSharper 评估版并将其卸载 之后 Visual Studio 的 Intellisense 停止工作 我已经重新启动了计算机 但仍然存在此问题 有人可以帮我吗 我正在使用 Visual Studio 2005 谢谢 尝试
  • 通过调用.ashx页面下载文件

    我正在从母版页客户端脚本 Jquery 请求 ashx 页面 该脚本具有下载 PDF 文件的代码 当我调试它时 我可以看到 文件下载 代码的执行 但文件没有下载 ajax type POST url FileDownload ashx da
  • 使用 Kerberos 的 SSO

    我正在尝试使用 Kerberos 和 Python Flask kerberos 模块进行身份验证 基本上这是我的代码 DEBUG True app Flask name app config from object name os env
  • g++ 既是 C++ 编译器又是链接器吗?

    我正在查看 Eclipse 中构建的输出 我正在针对 ColdFire 处理器进行交叉编译 编译行如下所示 m68k elf g O2 falign functions 4 IC nburn include IC nburn MOD52 接
  • 更新标准表中的字段 LIPS-LFIMG 时出现问题

    所有的流程看起来都不错 但是当通过调用函数时 更新也失败 需要更新的字段没有更新 不知道问题出在哪里 有人可以帮我解决这个问题吗 我错过了什么步骤吗 错误消息登录 LT PROT DATA LT PROT LIKE PROTT OCCURS
  • C# 在不下载整个文件的情况下获取网络上图像的宽度/高度?

    我相信 JPG 会存储宽度和高度信息在前几个字节内 http en wikipedia org wiki JPEG Syntax and structure 在给定绝对 URI 的情况下获取此信息的最简单方法是什么 首先 您可以使用以下命令
  • 将图像上传到 Google 云端硬盘后清除表单字段

    几天来我一直在努力确保在向谷歌驱动器提交 jpg 后 它会清理表单字段并为下一次插入下一条记录做好准备 它复制文件但不重置该字段 我想要的是 一旦他上传文件 他就会重置表单字段 而无需重新加载它等待下一个上传 这个例子是我从互联网上获取的
  • 如何从 fstream 中准确读取 128 个字节到字符串对象中? [复制]

    这个问题在这里已经有答案了 如何从 fstream 中准确读取 128 个字节到字符串对象中 我编写了一些代码来读取文件的前 128 个字节并打印它 然后读取文件的最后 128 个字节并打印它 最后一部分有效 因为您可以轻松迭代到 EOF
  • 将屏幕坐标转换为 Metal 的标准化设备坐标

    我正在尝试使用用户触摸来渲染 2D 三角形 因此 我将让用户触摸屏幕上的三个点 这些点将用作三角形的顶点 您已经意识到您需要返回剪辑空间坐标 技术上未标准化的设备坐标 https stackoverflow com questions 21
  • iTunes Connect 中的应用内购买。如何使应用内购买“清仓出售”?

    我正在尝试将应用程序内购买添加到已在应用程序商店出售的应用程序中 以便下次更新 我以前从未添加过任何应用内购买 我正在使用 MKStoreKit 来处理应用内购买 因此我认为一切都应该在编码方面进行 当我的应用程序启动时 我查询可用的应用程
  • 我无法在window平台上使用pthread

    我的环境是 Windows 8 1 64 位 并使用 Visual Studio 2010 我确实将所有 dll 文件放在 system32 SYSWOW64 中 因为我使用 win8 64 位 并将 x64 系统的 lib 文件与 VC