h5utils没有在Cygwin,Win7中编译

时间:2017-06-29 11:51:02

标签: windows-7 cygwin meep

我一直在尝试使用Cygwin在Win7上安装Meep和Python-Meep,方法是遵循tutorial

我还看了另一个tutorial

这三个似乎都很相似,但差别很小。我不确定哪种方法最适合在Windows 7平台上安装Meep。在第一个教程之后,我没有超越第一个障碍。编译h5utils时,结果出现以下错误:

make[1]: Entering directory '/cygdrive/c/cygwin/usr/local/h5utils-1.12.1'
gcc -DHAVE_CONFIG_H -I. -I/usr/local/include -g -O2 -MT writepng.o -MD -MP -MF .deps/writepng.Tpo -c -o writepng.o writepng.c
writepng.c: In function ‘writepng’:
writepng.c:312:24: error: dereferencing pointer to incomplete type ‘png_struct {aka struct png_struct_def}’
if (setjmp(png_ptr->jmpbuf)) {
^
writepng.c:437:19: error: dereferencing pointer to incomplete type ‘png_info {aka struct png_info_def}’
free(info_ptr->palette);
^
make[1]: *** [Makefile:426: writepng.o] Error 1
make[1]: Leaving directory '/cygdrive/c/cygwin/usr/local/h5utils-1.12.1'
make: *** [Makefile:278: all] Error 2

作者在本教程中驳斥了h5utils的任何错误,称MatLab更有能力进行处理。但是,似乎由于这个故障,找不到h5topng且无法访问MatLab,我的输出也没用。

试图运行' ring.ctl'从Meep / examples文件夹中我也得到以下内容:

creating output file "./ring-eps-000000.00.h5"...
Backtrace:
In /pub/devel/guile/yaakov/guile-2.0.14-1.i686/src/guile-2.0.14/module/ice-9/boot-9.scm:
160: 12 [catch #t #<catch-closure 801d0950> ...]
In unknown file:
?: 11 [apply-smob/1 #<catch-closure 801d0950>]
In /pub/devel/guile/yaakov/guile-2.0.14-1.i686/src/guile-2.0.14/module/ice-9/eval.scm:
432: 10 [eval # #]
432: 9 [eval # #]
In unknown file:
?: 8 [primitive-load "ring.ctl"]
In /pub/devel/guile/yaakov/guile-2.0.14-1.i686/src/guile-2.0.14/module/ice-9/eval.scm:
432: 7 [eval # #]
In /pub/devel/guile/yaakov/guile-2.0.14-1.i686/src/guile-2.0.14/module/ice-9/boot-9.scm:
710: 6 Exception thrown while printing backtrace:
ERROR: In procedure delete-meep-volume: Wrong type argument in position 1: #<finalized smob 80447d00>
ERROR: In procedure %run-finalizers:
ERROR: In procedure delete-meep-volume: Wrong type argument in position 1: #<finalized smob 80447ef0>
Some deprecated features have been used. Set the environment
variable GUILE_WARN_DEPRECATED to "detailed" and rerun the
program to get more information. Set it to "no" to suppress
this message.

对Meep可能发生的事情的任何想法都会非常有帮助。尝试在Windows和Ubuntu上正确安装它已经过了好几天。

艾玛

1 个答案:

答案 0 :(得分:0)

这不是一个cygwin问题。 h5utils似乎期望在libpng 1.4之前使用的结构 和cygwin包是版本1.6

请参阅 libpng 1.5.10 error: dereferencing pointer to incomplete type