베어 메탈 ARM 시스템에 대해 Eigen을 평가하고 싶습니다. 여기에 내가 컴파일하려면 노력하고있어입니다 :고유 예제 코드 실패 ARM 베어 메탈 컴파일
#include <Eigen/Dense>
using Eigen::MatrixXd;
void test()
{
MatrixXd m(2,2);
m(0,0) = 3;
m(1,0) = 2.5;
m(0,1) = -1;
m(1,1) = m(1,0) + m(0,1);
}
컴파일이 나에게주는이 :
[email protected] ~/Projects/Eigen $ /usr/bin/arm-none-eabi-g++ -I ./eigen-eigen-3.3.3 test.cpp -o test.o
In file included from ./eigen-eigen-3.3.3/Eigen/Dense:1:0,
from test.cpp:5:
./eigen-eigen-3.3.3/Eigen/Core:66:17: fatal error: new: No such file or directory
compilation terminated.
나는 C 프로그래머가 아닌 C++,하지만 난이 도서관 문제가 있음을 이해한다. 베어 메탈 시스템에서 C++ 사용에 대한 여러 참고 문헌을 살펴 보았지만 솔직히 진행 방법에 대해 의아해했습니다. 나는 malloc(), free(), 등으로 보이는 누락 된 것들을 스텁하고 싶다. 그래서 나는 성공적인 컴파일을 얻을 수있다. 내 자신의 newh을 -nostdinC++ -include new.h과 컴파일러 호출에 사용해 보았지만 작동하지 않았습니다.
나는 단순한 실수를하고 있습니까, 아니면이 환경에서 Eigen을 바보의 심부름으로 사용하려고합니까? 모든 지침은 크게 감사하겠습니다.
이것이 C++ 라이브러리의 일반적인 문제인 것 같아서 일반적인 C++ 팁을 검색 할 수 있습니다. BTW, 표준 누락 헤더 파일은'.h' 확장자가 없으면'new'입니다. 이렇게하면 한 걸음 더 나아갈 수 있습니다. 당신이 무언가를 작동 시키려면, Eigen의 개발자에게 간단한 튜토리얼을 보내 wiki/doc에서 할 수 있도록하십시오. – ggael
또한 비슷한 플랫폼에서 Eigen을 다루는 데 성공한 사람은 다른 사람이 성공한 것 같습니다 (https://forum.kde.org/viewtopic.php?f=74&t=138964). 자유롭게 조언을 구하십시오. – ggael