经过大量的工作之后,我得以在Ubuntu12.04x86和Debian7.4x86上构建它。我在下面写了一本指南。你能试着跟着它看看它能不能解决这个问题吗?
如果没有,请告诉我你在哪里卡住了。
安装公共依赖项sudo apt-get install build-essential autoconf libtool pkg-config python-opengl python-imaging python-pyrex python-pyside.qtopengl idle-python2.7 qt4-dev-tools qt4-designer libqtgui4 libqtcore4 libqt4-xml libqt4-test libqt4-script libqt4-network libqt4-dbus python-qt4 python-qt4-gl libgle3 python-dev
安装NumArray 1.5.2wget http://goo.gl/6gL0q3 -O numarray-1.5.2.tgz
tar xfvz numarray-1.5.2.tgz
cd numarray-1.5.2
sudo python setup.py install
安装数字23.8wget http://goo.gl/PxaHFW -O numeric-23.8.tgz
tar xfvz numeric-23.8.tgz
cd Numeric-23.8
sudo python setup.py install
安装HDF5 1.6.5wget ftp://ftp.hdfgroup.org/HDF5/releases/hdf5-1.6/hdf5-1.6.5.tar.gz
tar xfvz hdf5-1.6.5.tar.gz
cd hdf5-1.6.5
./configure --prefix=/usr/local
sudo make
sudo make install
安装Nanoengineergit clone https://github.com/kanzure/nanoengineer.git
cd nanoengineer
./bootstrap
./configure
make
sudo make install
故障排除
在Debian Jessie上,您将收到cant pants提到的错误消息。在汽车制造脚本中似乎有一个问题。x86_64-linux-gnu-gcc插入到CFLAGS中,并且gcc将其解释为一个源文件的名称。作为解决方法,让我们用该名称创建一个空文件。空的,这样它就不会改变程序和那个名字,这样编译器就可以接收它。从克隆的nanoengineer目录中,运行此命令以使gcc高兴(这是一个hack-yes,但它确实有效)。。。touch sim/src/x86_64-linux-gnu-gcc
如果在尝试编译HDF5时收到一条错误消息,其行为:“error:调用用属性error:open with O_CREAT in second argument声明的'\uu open_missing_mode',需要3个参数”,则修改文件perform/zip_perf.c,第548行如下所示,然后重新运行make。。。output = open(filename, O_RDWR | O_CREAT, S_IRUSR|S_IWUSR);
如果在生成Nanoengineer时收到有关找不到Numeric/arrayobject.h的错误消息,请尝试运行export CPPFLAGS=-I/usr/local/include/python2.7
./configure
make
sudo make install
如果收到类似于“TRACE_PREFIX undeclared”的错误消息,请修改文件sim/src/simhelp.c第38至41行,使其看起来像这样,然后重新运行make:#ifdef DISTUTILS
static char tracePrefix[] = "";
#else
static char tracePrefix[] = "";
如果在尝试启动NanoEngineer-1时收到一条错误消息,其中提到类似于“无法导入名称GL_ARRAY_BUFFER_ARB”的内容,请修改以下文件中的行/usr/local/bin/NanoEngineer1_0.9.2.app/program/graphics/drawing/setup_draw.py
/usr/local/bin/NanoEngineer1_0.9.2.app/program/graphics/drawing/GLPrimitiveBuffer.py
/usr/local/bin/NanoEngineer1_0.9.2.app/program/prototype/test_drawing.py
看起来像这样:from OpenGL.GL import GL_ARRAY_BUFFER_ARB
from OpenGL.GL import GL_ELEMENT_ARRAY_BUFFER_ARB
像这样:from OpenGL.GL.ARB.vertex_buffer_object import GL_ARRAY_BUFFER_AR
from OpenGL.GL.ARB.vertex_buffer_object import GL_ELEMENT_ARRAY_BUFFER_ARB
我还发现了另一个已删除的疑难解答文本文件,但您可以找到它here