web-dev-qa-db-fra.com

Commande 'Make' compilant les erreurs

J'essaie d'installer localement un programme écrit en C++. J'ai téléchargé le programme et tente d'utiliser la commande "make" pour compiler le programme selon les instructions du programme. Cependant quand je reçois cette erreur:

/usr/include/stdc-predef.h:30:26: fatal error: bits/predefs.h: No such file or directory 
compilation terminated.

En regardant sur Internet, certaines personnes semblent résoudre ce problème en

 Sudo apt-get install libc6-dev-i386

J'ai vérifié si ce paquet était installé et ce ne l'était pas. Quand j'essaye de l'installer, je reçois

E: Unable to locate package libc6-dev-i386 

J'ai déjà couru

Sudo apt get update   

Je suis sûr que ceci est une question de recrue mais toute aide est appréciée, je cours 13.10 32-bit.

UPDATE: J'ai essayé d'autres suggestions que j'ai trouvées sur une erreur similaire. Tout ce que j'ai géré est une erreur différente mais similaire. Voici ce que je reçois.

Geoffrey@Geoffrey-Latitude-E6400:/usr/local/src/trinityrnaseq_r2013_08_14$ make
Using gnu compiler for Inchworm and Chrysalis
cd Inchworm && (test -e configure || autoreconf) \
                && ./configure --prefix=`pwd`  && make install
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking for g++... g++
checking for C++ compiler default output file name... a.out
checking whether the C++ compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for style of include used by make... GNU
checking dependency style of g++... gcc3
checking for library containing cos... none required
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
make[1]: Entering directory `/usr/local/src/trinityrnaseq_r2013_08_14/Inchworm'
Making install in src
make[2]: Entering directory `/usr/local/src/trinityrnaseq_r2013_08_14/Inchworm/src'
if g++ -DHAVE_CONFIG_H -I. -I. -I..    -pedantic -fopenmp -Wall -Wextra -Wno-long-long -Wno-deprecated -m64 -g -O2 -MT Fasta_entry.o -MD -MP -MF ".deps/Fasta_entry.Tpo" -c -o Fasta_entry.o Fasta_entry.cpp; \
then mv -f ".deps/Fasta_entry.Tpo" ".deps/Fasta_entry.Po"; else rm -f ".deps/Fasta_entry.Tpo"; exit 1; fi
In file included from Fasta_entry.hpp:4:0,
             from Fasta_entry.cpp:1:
/usr/include/c++/4.8/string:38:28: fatal error: bits/c++config.h: No such file or directory
#include <bits/c++config.h>
                        ^
compilation terminated.
make[2]: *** [Fasta_entry.o] Error 1
make[2]: Leaving directory `/usr/local/src/trinityrnaseq_r2013_08_14/Inchworm/src'
make[1]: *** [install-recursive] Error 1
make[1]: Leaving directory `/usr/local/src/trinityrnaseq_r2013_08_14/Inchworm'
make: *** [inchworm] Error 2
3
G_T

Avec buntu 13.10 AMD64,
le problème /usr/include/stdc-predef.h:30:26: fatal error: bits/predefs.h: No such file or directory compilation terminated. a été résolu après:

_$ Sudo apt-get install build-essential
$ Sudo apt-get install libc6-dev-i386
$ Sudo apt-get install g++-4.8-multilib
_
5
Boris

J'ai résolu ce problème en modifiant l'architecture de la cible de génération. G ++ 4.8.0 et suivants semblent avoir rompu son support multilib, comme indiqué dans leurs listes de diffusion. J'ai un ordinateur 64 bits natif et une tentative de compilation en 32 bits entraîne une erreur. Cependant, la compilation en 64 bits fonctionne correctement. Je reviendrai plus tard sur mon ordinateur portable pour voir quels paquets j'ai installés pour résoudre ce problème.

0
Michael