无法在 macOS 上构建 pkgconfig:整数到指针转换不兼容

问题描述 投票:0回答:1

我正在尝试使用 clang 在 macOS 上构建 pkgconfig 0.29。我收到这些错误:

gatomic.c:392:10: error: incompatible integer to pointer conversion passing 'gssize' (aka 'long') to parameter of type 'gpointer' (aka 'void *') [-Wint-conversion]
  return g_atomic_pointer_add ((volatile gpointer *) atomic, val);
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./gatomic.h:170:46: note: expanded from macro 'g_atomic_pointer_add'
    (gssize) __sync_fetch_and_add ((atomic), (val));                         \
                                             ^~~~~
gatomic.c:416:10: error: incompatible integer to pointer conversion passing 'gsize' (aka 'unsigned long') to parameter of type 'gpointer' (aka 'void *') [-Wint-conversion]
  return g_atomic_pointer_and ((volatile gpointer *) atomic, val);
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./gatomic.h:177:45: note: expanded from macro 'g_atomic_pointer_and'
    (gsize) __sync_fetch_and_and ((atomic), (val));                          \
                                            ^~~~~
gatomic.c:440:10: error: incompatible integer to pointer conversion passing 'gsize' (aka 'unsigned long') to parameter of type 'gpointer' (aka 'void *') [-Wint-conversion]
  return g_atomic_pointer_or ((volatile gpointer *) atomic, val);
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./gatomic.h:184:44: note: expanded from macro 'g_atomic_pointer_or'
    (gsize) __sync_fetch_and_or ((atomic), (val));                           \
                                           ^~~~~
gatomic.c:464:10: error: incompatible integer to pointer conversion passing 'gsize' (aka 'unsigned long') to parameter of type 'gpointer' (aka 'void *') [-Wint-conversion]
  return g_atomic_pointer_xor ((volatile gpointer *) atomic, val);
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./gatomic.h:191:45: note: expanded from macro 'g_atomic_pointer_xor'
    (gsize) __sync_fetch_and_xor ((atomic), (val));                          \
                                            ^~~~~
4 errors generated.

这是完整的

make
日志:

~/D/pkg-config-0.29> sudo make install
Making install in glib
/Applications/Xcode.app/Contents/Developer/usr/bin/make  install-recursive
Making install in .
make[4]: Nothing to be done for `install-exec-am'.
Making install in m4macros
/Applications/Xcode.app/Contents/Developer/usr/bin/make  install-am
make[5]: Nothing to be done for `install-exec-am'.
Making install in glib
  GEN      glibconfig-stamp
config.status: executing glib/glibconfig.h commands
config.status: glib/glibconfig.h is unchanged
/Applications/Xcode.app/Contents/Developer/usr/bin/make  install-recursive
Making install in libcharset
/Applications/Xcode.app/Contents/Developer/usr/bin/make  install-am
  CC       libcharset_la-localcharset.lo
  CCLD     libcharset.la
  GEN      ref-add.sed
  GEN      ref-del.sed
  GEN      charset.alias
make[7]: Nothing to be done for `install-exec-am'.
Making install in gnulib
/Applications/Xcode.app/Contents/Developer/usr/bin/make  install-am
  CC       libgnulib_la-asnprintf.lo
  CC       libgnulib_la-printf-args.lo
  CC       libgnulib_la-printf-parse.lo
  CC       libgnulib_la-vasnprintf.lo
  CC       libgnulib_la-printf.lo
  CCLD     libgnulib.la
make[7]: Nothing to be done for `install-exec-am'.
Making install in .
  CC       libglib_2_0_la-gallocator.lo
  CC       libglib_2_0_la-gcache.lo
  CC       libglib_2_0_la-gcompletion.lo
  CC       libglib_2_0_la-grel.lo
  CC       libglib_2_0_la-gthread-deprecated.lo
  CC       libglib_2_0_la-garray.lo
  CC       libglib_2_0_la-gasyncqueue.lo
  CC       libglib_2_0_la-gatomic.lo
gatomic.c:392:10: error: incompatible integer to pointer conversion passing 'gssize' (aka 'long') to parameter of type 'gpointer' (aka 'void *') [-Wint-conversion]
  return g_atomic_pointer_add ((volatile gpointer *) atomic, val);
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./gatomic.h:170:46: note: expanded from macro 'g_atomic_pointer_add'
    (gssize) __sync_fetch_and_add ((atomic), (val));                         \
                                             ^~~~~
gatomic.c:416:10: error: incompatible integer to pointer conversion passing 'gsize' (aka 'unsigned long') to parameter of type 'gpointer' (aka 'void *') [-Wint-conversion]
  return g_atomic_pointer_and ((volatile gpointer *) atomic, val);
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./gatomic.h:177:45: note: expanded from macro 'g_atomic_pointer_and'
    (gsize) __sync_fetch_and_and ((atomic), (val));                          \
                                            ^~~~~
gatomic.c:440:10: error: incompatible integer to pointer conversion passing 'gsize' (aka 'unsigned long') to parameter of type 'gpointer' (aka 'void *') [-Wint-conversion]
  return g_atomic_pointer_or ((volatile gpointer *) atomic, val);
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./gatomic.h:184:44: note: expanded from macro 'g_atomic_pointer_or'
    (gsize) __sync_fetch_and_or ((atomic), (val));                           \
                                           ^~~~~
gatomic.c:464:10: error: incompatible integer to pointer conversion passing 'gsize' (aka 'unsigned long') to parameter of type 'gpointer' (aka 'void *') [-Wint-conversion]
  return g_atomic_pointer_xor ((volatile gpointer *) atomic, val);
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./gatomic.h:191:45: note: expanded from macro 'g_atomic_pointer_xor'
    (gsize) __sync_fetch_and_xor ((atomic), (val));                          \
                                            ^~~~~
4 errors generated.
make[5]: *** [libglib_2_0_la-gatomic.lo] Error 1
make[4]: *** [install-recursive] Error 1
make[3]: *** [install] Error 2
make[2]: *** [install-recursive] Error 1
make[1]: *** [install] Error 2
make: *** [install-recursive] Error 1

我的软件:

~/D/pkg-config-0.29 [0|2]> clang --version
Apple clang version 15.0.0 (clang-1500.3.9.4)
Target: arm64-apple-darwin23.5.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

我在 M1 MacBook Air 上使用 macOS Sonoma 14.5 (23F79)。

pkgconfig 可以用 clang 构建吗?难道还有别的事?

compilation clang pkg-config macos-sonoma
1个回答
0
投票

您找到解决这个问题的方法了吗?我很感兴趣,因为我也遇到了这个问题。 谢谢!

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.