为什么我不能编译这个 C API (NeMo Spiking Neural Network Simulator)
Why can't I compile this C API (NeMo Spiking Neural Network Simulator)
您好,我正在尝试利用这个库 http://nemosim.sourceforge.net 来玩转 Spiking 神经网络。
我是 C 和 C++ 的新手。
我所做的是,从这里下载安装程序:http://sourceforge.net/projects/nemosim/
已安装。
然后我在 main.c 文件中编写了这个程序:
#include<nemo.h>
#include<stdio.h>
#include<stdlib.h>
main()
{
printf("Hello World!");
getchar();
}
并在 Windows 上使用 MinGW 编译它:
gcc -I"C:\Program Files (x86)\NeMo\include" main.c -o main.exe
我收到以下错误:
In file included from main.c:1:0:
C:\Program Files (x86)\NeMo\include/nemo.h:48:1: error: unknown type name 'nemo_
network_class'
typedef nemo_network_class* nemo_network_t;
^
C:\Program Files (x86)\NeMo\include/nemo.h:49:1: error: unknown type name 'nemo_
simulation_class'
typedef nemo_simulation_class* nemo_simulation_t;
^
C:\Program Files (x86)\NeMo\include/nemo.h:50:1: error: unknown type name 'nemo_
configuration_class'
typedef nemo_configuration_class* nemo_configuration_t;
^
请帮助我。
看起来nemo.h有问题,但我怀疑我遗漏了什么,因为我是新手...
看起来这段代码有一个 C++ 程序员迁移到编写 C 代码时发生的常见错误。在C++中,可以这样写声明一个struct nemo_network_class
对象,例如:
nemo_network_class foo;
然而,在 C 中,struct
是类型标识符的一部分。你必须写:
struct nemo_network_class foo;
改变这个:typedef nemo_network_class* nemo_network_t;
...为此:typedef struct nemo_network_class* nemo_network_t;
改变这个:typedef nemo_simulation_class* nemo_simulation_t;
...为此:typedef struct nemo_simulation_class* nemo_simulation_t;
改变这个:typedef nemo_configuration_class* nemo_configuration_t;
...为此:typedef struct nemo_configuration_class* nemo_configuration_t;
完成这些更改并确认它们有效后,请提交错误报告,以便将此解决方案投入生产。
您好,我正在尝试利用这个库 http://nemosim.sourceforge.net 来玩转 Spiking 神经网络。
我是 C 和 C++ 的新手。
我所做的是,从这里下载安装程序:http://sourceforge.net/projects/nemosim/
已安装。
然后我在 main.c 文件中编写了这个程序:
#include<nemo.h>
#include<stdio.h>
#include<stdlib.h>
main()
{
printf("Hello World!");
getchar();
}
并在 Windows 上使用 MinGW 编译它:
gcc -I"C:\Program Files (x86)\NeMo\include" main.c -o main.exe
我收到以下错误:
In file included from main.c:1:0:
C:\Program Files (x86)\NeMo\include/nemo.h:48:1: error: unknown type name 'nemo_
network_class'
typedef nemo_network_class* nemo_network_t;
^
C:\Program Files (x86)\NeMo\include/nemo.h:49:1: error: unknown type name 'nemo_
simulation_class'
typedef nemo_simulation_class* nemo_simulation_t;
^
C:\Program Files (x86)\NeMo\include/nemo.h:50:1: error: unknown type name 'nemo_
configuration_class'
typedef nemo_configuration_class* nemo_configuration_t;
^
请帮助我。
看起来nemo.h有问题,但我怀疑我遗漏了什么,因为我是新手...
看起来这段代码有一个 C++ 程序员迁移到编写 C 代码时发生的常见错误。在C++中,可以这样写声明一个struct nemo_network_class
对象,例如:
nemo_network_class foo;
然而,在 C 中,struct
是类型标识符的一部分。你必须写:
struct nemo_network_class foo;
改变这个:typedef nemo_network_class* nemo_network_t;
...为此:typedef struct nemo_network_class* nemo_network_t;
改变这个:typedef nemo_simulation_class* nemo_simulation_t;
...为此:typedef struct nemo_simulation_class* nemo_simulation_t;
改变这个:typedef nemo_configuration_class* nemo_configuration_t;
...为此:typedef struct nemo_configuration_class* nemo_configuration_t;
完成这些更改并确认它们有效后,请提交错误报告,以便将此解决方案投入生产。