0

我对 Linux 很陌生,在将外部软件集成到我的程序中时遇到问题。当我按照有关集成包括 Jansson 在内的几行的说明进行操作时(在本文档中将 G4Sipm 添加到您的 CMakeLists.txt 中,在此处输入链接描述)我收到错误,我怀疑这是集成本身的问题,因为它确实单独构建在它的自己的。我得到的错误是在 command 之后build -j2。这是终端输出的一部分:

Scanning dependencies of target jansson
Scanning dependencies of target gtest
Scanning dependencies of target G4GeneralParticleSource
[  1%] Building C object externals/g4sipm/externals/jansson/CMakeFiles/jansson.dir/src/dump.c.o
[  2%] Building C object externals/g4sipm/externals/jansson/CMakeFiles/jansson.dir/src/error.c.o
[  2%] Building C object externals/g4sipm/externals/jansson/CMakeFiles/jansson.dir/src/hashtable.c.o
[  3%] Building CXX object G4BasicObjects/G4PropertyFileReadInTools/CMakeFiles/G4PropertyFileReadInTools.dir/src/PropertyToolsManager.cc.o
[  4%] Building C object externals/g4sipm/externals/jansson/CMakeFiles/jansson.dir/src/hashtable_seed.c.o
[  4%] Building CXX object G4BasicObjects/G4PropertyFileReadInTools/CMakeFiles/G4PropertyFileReadInTools.dir/src/GoddessProperties.cc.o
[  4%] Building CXX object G4BasicObjects/G4PropertyFileReadInTools/CMakeFiles/G4PropertyFileReadInTools.dir/src/VectorUtil.cc.o
[  5%] Building CXX object externals/g4sipm/externals/googletest/googletest/CMakeFiles/gtest.dir/src/gtest-all.cc.o
[  6%] Building C object externals/g4sipm/externals/jansson/CMakeFiles/jansson.dir/src/load.c.o
[  6%] Building C object externals/g4sipm/externals/jansson/CMakeFiles/jansson.dir/src/memory.c.o
[  7%] Building C object externals/g4sipm/externals/jansson/CMakeFiles/jansson.dir/src/pack_unpack.c.o
[  7%] Building C object externals/g4sipm/externals/jansson/CMakeFiles/jansson.dir/src/strbuffer.c.o
In file included from /home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/hashtable.h:11,
                 from /home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson_private.h:11,
                 from /home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/dump.c:12:
/home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson.h:101:22: error: unknown type name ‘json_int_t’; did you mean ‘json_t’?
  101 | json_t *json_integer(json_int_t value);
      |                      ^~~~~~~~~~
      |                      json_t
/home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson.h:280:1: error: unknown type name ‘json_int_t’; did you mean ‘json_auto_t’?
  280 | json_int_t json_integer_value(const json_t *integer);
      | ^~~~~~~~~~
      | json_auto_t
In file included from /home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/hashtable.h:11,
                 from /home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson_private.h:11,
                 from /home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/error.c:1:
/home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson.h:101:22: error: unknown type name ‘json_int_t’; did you mean ‘json_t’?
  101 | json_t *json_integer(json_int_t value);
      |                      ^~~~~~~~~~
      |                      json_t
/home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson.h:288:39: error: unknown type name ‘json_int_t’; did you mean ‘json_auto_t’?
  288 | int json_integer_set(json_t *integer, json_int_t value);
      |                                       ^~~~~~~~~~
      |                                       json_auto_t
In file included from /home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/dump.c:12:
/home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson_private.h:60:5: error: unknown type name ‘json_int_t’
   60 |     json_int_t value;
      |     ^~~~~~~~~~
/home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson.h:280:1: error: unknown type name ‘json_int_t’; did you mean ‘json_auto_t’?
  280 | json_int_t json_integer_value(const json_t *integer);
      | ^~~~~~~~~~
      | json_auto_t
/home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson.h:288:39: error: unknown type name ‘json_int_t’; did you mean ‘json_auto_t’?
  288 | int json_integer_set(json_t *integer, json_int_t value);
      |                                       ^~~~~~~~~~
      |                                       json_auto_t
In file included from /home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/error.c:1:
/home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson_private.h:60:5: error: unknown type name ‘json_int_t’
   60 |     json_int_t value;
      |     ^~~~~~~~~~
In file included from /home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/hashtable.h:11,
                 from /home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/hashtable.c:19:
/home/abhinab1/goddess/source/externals/g4sipm/externals/jansson/src/jansson.h:101:22: error: unknown type name ‘json_int_t’; did you mean ‘json_t’?
  101 | json_t *json_integer(json_int_t value);
      |                      ^~~~~~~~~~
      |                      json_t

我尝试添加#include <jansson_config.h>而不是#include "jansson_config.h"但是错误仍然存​​在。我尝试联系项目负责人,但似乎他们都已从项目中移出。任何帮助和建议将不胜感激,谢谢!

编辑 1:为澄清起见,我使用的是最新版本的 Jansson

4

0 回答 0