c++ - "Comment out pthreads"编译一个库

标签 c++ c matlab pthreads osc

我正在尝试编译一个库, liblo 。我安装它是因为它是我尝试安装的另一个库的必需库, osc-mex 。为了让 liblo 在 Windows 上与 osc-mex 一起工作,我需要用“pthreads commented out”编译 liblo

据我所知,pthread 是与 Unix 一起使用的协议(protocol)吗?无论如何,我需要删除 liblo 代码中提到的 pthread。但是我遇到了一个问题;代码的多个区域都提到了“pthread”。在 liblo 目录的(未编译的)源代码中搜索文本“pthreads”会在八个文件中产生 25 个结果:

Filename    Line #  Line text
*********************************************************************************
ChangeLog   165     * Fixed pthread resource leak, when stopping thread
NEWS        153     * Fixed pthread resource leak, when stopping server
config.h.in 18      /* Define to 1 if you have the `pthread' library (-lpthread). */
config.h.in 19      #undef HAVE_LIBPTHREAD
configure   11000   { echo "$as_me:$LINENO: checking for pthread_create in -lpthread" >&5
configure   11001   echo $ECHO_N "checking for pthread_create in -lpthread... $ECHO_C" >&6; }
configure   11002   if test "${ac_cv_lib_pthread_pthread_create+set}" = set; then
configure   11006   LIBS="-lpthread  $LIBS"
configure   11020   char pthread_create ();
configure   11024   return pthread_create ();
configure   11047   ac_cv_lib_pthread_pthread_create=yes
configure   11052   ac_cv_lib_pthread_pthread_create=no
configure   11059   { echo "$as_me:$LINENO: result: $ac_cv_lib_pthread_pthread_create" >&5
configure   11060   echo "${ECHO_T}$ac_cv_lib_pthread_pthread_create" >&6; }
configure   11061   if test $ac_cv_lib_pthread_pthread_create = yes; then
configure   11063   #define HAVE_LIBPTHREAD 1
configure   11066   LIBS="-lpthread $LIBS"
configure.ac43      AC_CHECK_LIB([pthread], [pthread_create])
liblo.pc.in 9       Libs: -L${libdir} -llo -lpthread
libtool     4511    # Do not include libc_r directly, use -pthread flag.
libtool     4536    -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
libtool     5030    -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
ltmain.sh   4027    # Do not include libc_r directly, use -pthread flag.
ltmain.sh   4052    -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
ltmain.sh   4546    -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)

显然,上面的一些行已经是注释了,但是这里也有一些行可以通过许多不同的方式进行修改以达到相同的目的。 “注释掉 pthreads”的指令是我不完全理解或不知道如何实现的。任何建议将不胜感激。

最佳答案

osc-mex 的链接说明指的是几年前的 liblo 版本。目前git version of liblo应该在 Windows 上编译(使用 MingW)而无需更改。 pthread 现在是可选的。它检测 pthread 是否可用,如果不可用则为您“注释掉”。

关于c++ - "Comment out pthreads"编译一个库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14873104/

相关文章:

c - 从结构中释放内存

matlab - MATLAB中的定时程序执行;奇怪的结果

image - 归一化一系列图像的强度以获得恒定强度 - Matlab

c++ - 我应该避免多重实现继承吗?

java - QuickHull 算法的复杂性?

c++ - 如何在运行时设置数组大小而不构造对象?

c - 如何通过更改SQLite3中现有的SQL表来通过单个SQL语句添加更多列?

c - 控制台输出中的 UTF-8 字符

matlab - 查找并绘制每列中最小像素强度的位置

c++ - 如何创建临时文件以帮助在 C++ 中缓存大数据?