CodeSourcery дает ошибку компиляции: отсутствуют биты / c ++ config.h - PullRequest
1 голос
/ 20 июля 2010

В моем проекте я использую библиотеку Eigen C ++ для линейной алгебры. ТОЛЬКО когда я включаю флаги векторизации (-mfpu = neon -mfloat-abi = softfp) для ARM NEON, я получаю ошибку компилятора - c ++ config.h такого файла или каталога нет.

Я не могу понять, что происходит не так, что это за бит / c ++ config.h?Что я должен сделать, чтобы решить эту проблему?

Vikram


main.c

#include<iostream>
#include <Eigen/Core>

// import most common Eigen types
using namespace Eigen;

int main(int, char *[])
{
    Matrix4f m3;
    m3 << 1, 2, 3, 0, 4, 5, 6, 0, 7, 8, 9, 0, 0, 0, 0, 0;
    Matrix4f m4;

    asm("#begins here");
    m4 = m3*m3;
    asm("#ends here");

    std::cout << "m3\n" << m3 << "\nm4:\n" << m4 << std::endl;

    std::cout << "DONE!!";
}

makefile

CPP=    /home/ubuntu/CodeSourcery/Sourcery_G++/bin/arm-none-linux-gnueabi-c++

all: main 

main: main.cpp
    $(CPP) -mfpu=neon -mfloat-abi=softfp -I /home/ubuntu/Documents/eigen/ main.cpp -o main

clean:
    rm -rf *o main

Ошибки

**** Build of configuration Debug for project Test_Eigen ****

make all
/home/ubuntu/CodeSourcery/Sourcery_G++/bin/arm-none-linux-gnueabi-c++ -mfpu=neon -mfloat-abi=softfp -I /home/ubuntu/Documents/eigen/ main.cpp -o main
In file included from main.cpp:1:
/home/ubuntu/CodeSourcery/Sourcery_G++/bin/../lib/gcc/arm-none-linux-gnueabi/4.4.1/../../../../arm-none-linux-gnueabi/include/c++/4.4.1/iostream:39: fatal error: bits/c++config.h: No such file or directory
compilation terminated.
make: *** [main] Error 1

Ответы [ 2 ]

2 голосов
/ 22 апреля 2012

Я получил ту же ошибку:

/usr/lib/gcc/x86_64-redhat-linux/4.6.3/../../../../include/c++/4.6.3/iostream:39: error: bits/c++config.h: No such file or directory

Устранена после установки libstdc++-devel.x86_64 0:4.6.3-2.fc15 в fedora 15.

0 голосов
/ 22 июля 2010

Я получил ответ от команды Codesourcery. Эта проблема была вызвана тем, что я не установил все дополнения. Установка дополнений является очень простым шагом, если вы работаете в среде Eclipse CodeSourcery, вам нужно просто перейти в «Справка»> «Установить новое программное обеспечение», и после этого она довольно проста (подробнее см. 3-ю главу руководство по началу работы).

После установки надстроек я перестал получать фатальную ошибку: bits / c ++ config.h: компиляция таких файлов или каталогов не прекращалась. (Подробнее об опциях компилятора читайте в 3-й главе)

...