python - how - makefile linux c
Depurando el error "gcc: error: x86_64-linux-gnu-gcc: No existe tal archivo o directorio" (5)
Después de una buena cantidad de trabajo, pude construirlo en Ubuntu 12.04 x86 y Debian 7.4 x86_64. Escribí una guía a continuación. ¿Puedes intentar seguirlo para ver si resuelve el problema?
Si no, déjame saber dónde te quedas atascado.
Instalar dependencias comunes
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
Instalar NumArray 1.5.2
wget 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
Instalar Numérico 23.8
wget http://goo.gl/PxaHFW -O numeric-23.8.tgz
tar xfvz numeric-23.8.tgz
cd Numeric-23.8
sudo python setup.py install
Instalar HDF5 1.6.5
wget 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
Instalar Nanoengineer
git clone https://github.com/kanzure/nanoengineer.git
cd nanoengineer
./bootstrap
./configure
make
sudo make install
Solución de problemas
En Debian Jessie, recibirás el mensaje de error que no puedo mencionar. Parece que hay un problema en los scripts automake. x86_64-linux-gnu-gcc
se inserta en CFLAGS
y gcc
lo interpretará como el nombre de uno de los archivos de origen. Como solución alternativa, vamos a crear un archivo vacío con ese nombre. Vacío para que no cambie el programa y ese mismo nombre para que el compilador lo recoja. Desde el directorio de nanoengineer clonado, ejecute este comando para hacer feliz a gcc (es un hack, sí, pero funciona) ...
touch sim/src/x86_64-linux-gnu-gcc
Si recibe un mensaje de error al intentar compilar HDF5 en la línea de: "error: la llamada a ''__open_missing_mode'' se declaró con un error de atributo: abra con O_CREAT en el segundo argumento necesita 3 argumentos", luego modifique el archivo perform / zip_perf.c, línea 548 para parecerse a lo siguiente y luego ejecutar de nuevo ...
output = open(filename, O_RDWR | O_CREAT, S_IRUSR|S_IWUSR);
Si recibe un mensaje de error que indica que no se encontró Numeric / arrayobject.h al compilar Nanoengineer, intente ejecutar
export CPPFLAGS=-I/usr/local/include/python2.7
./configure
make
sudo make install
Si recibe un mensaje de error similar a "TRACE_PREFIX no declarado", modifique el archivo sim / src / simhelp.c líneas 38 a 41 para que se vea así y vuelva a ejecutar make:
#ifdef DISTUTILS
static char tracePrefix[] = "";
#else
static char tracePrefix[] = "";
Si recibe un mensaje de error al intentar iniciar NanoEngineer-1 que menciona algo similar a "no se puede importar el nombre GL_ARRAY_BUFFER_ARB", modifique las líneas en los siguientes archivos
/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
que se parecen a esto:
from OpenGL.GL import GL_ARRAY_BUFFER_ARB
from OpenGL.GL import GL_ELEMENT_ARRAY_BUFFER_ARB
para parecerse a esto:
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
También encontré un archivo de texto de solución de problemas adicional que se ha eliminado, pero puede encontrarlo here
Estoy tratando de construir: https://github.com/kanzure/nanoengineer
Pero parece que hay errores en:
gcc -DHAVE_CONFIG_H -I. -I../.. -I/usr/include/python2.7 -std=c99 x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -MT libstructcompare_a-structcompare.o -MD -MP -MF .deps/libstructcompare_a-structcompare.Tpo -c -o libstructcompare_a-structcompare.o `test -f ''structcompare.c'' || echo ''./''`structcompare.c
gcc: error: x86_64-linux-gnu-gcc: No such file or directory
x86_64-linux-gnu-gcc
definitivamente existe en / usr / bin (es un enlace simbólico) y el objetivo definitivamente también existe. Me parece que el Makefile no se generó correctamente, tal vez hay una bandera que se debe pasar antes de especificar x86_64-linux-gnu-gcc? Tampoco estoy seguro de lo que se supone que debe cumplir x86_64-linux-gnu-gcc
.
Finalmente, este makefile fue generado por la configuración, así que una vez que reduzcamos la causa del error, tendré que averiguar qué archivos modificar para corregir esto. (Soy un tipo de persona CMake, pero por supuesto que no elegí el sistema de compilación para este proyecto). Mi sistema operativo es Debian.
También he intentado construir esta rama: https://github.com/kanzure/nanoengineer/branches/kirka-updates
Si puedes intentar que esto se construya en tu sistema, ¡te lo agradecería mucho! ¡Gracias!
Solo necesitas:
sudo apt-get install gcc.
el error puede ser debido a uno de varios paquetes faltantes. El siguiente comando instalará varios paquetes como g ++, gcc, etc.
sudo apt-get install build-essential
sudo apt-get -y install python-software-properties && /
sudo apt-get -y install software-properties-common && /
sudo apt-get -y install gcc make build-essential libssl-dev libffi-dev python-dev
Necesitará libssl-dev y libffi-dev si está intentando instalar bibliotecas de criptografía de Python o librerías de Python que dependen de él (por ejemplo, ansible)
apt-get install python-dev
... resuelto el problema para mi