首先,我将解释这个问题,在底部你会发现问题。
我尝试使用 pip/pip3/apt(全部)安装 charm4py,1.5 小时后失败,我注意到 charm++ 无法构建,并且
g++:内部编译器错误:已终止(程序 cc1plus)
...
charmc 在目录 /tmp/pip-install-xqzy2dk8/charm4py/charm_src/charm/netlrts-linux-x86_64-tcp/tmp 中发生致命错误,命令 g++ -DCMK_GFORTRAN -DCMK_GFORTRAN -I./../include -D__CHARMC__=1 -O2 -U_FORTIFY_SOURCE -fno-stack-protector -fPIC -I../bin/../include -D__CHARMC__=1 -I. -O3 -U_FORTIFY_SOURCE -fno-stack-protector -fno-lifetime-dse -fPIC -c HierarchicalLB.C -o HierarchicalLB.o 返回错误代码 4
我还在终端中收到以下红色错误消息,
Command "/usr/bin/python3 -u -c "import setuptools, tokenize;
__file__='/tmp/pip-install-xqzy2dk8/charm4py/setup.py';
f=getattr(tokenize, 'open', open)(__file__);
code=f.read().replace('\r\n', '\n');
f.close();
exec(compile(code,__file__, 'exec'))
"install --record /tmp/pip-record-ft7q83g9/install-record.txt --single-version-externally-managed --compile"
failed with error code 1 in /tmp/pip-install-xqzy2dk8/charm4py/
因此,我首先尝试手动安装 charm++。构建 charm++ 时,我也收到错误,它告诉我,
checking "C++ compiler as"... "g++ "
checking "whether C++ compiler works"... "no"
Cannot compile C++ programs with g++
(check your charm++ version)
*** Please find detailed output in tmp/charmconfig.out ***
make[1]: *** No rule to make target 'conv-autoconfig.h', needed by 'xi- main.o'. Stop.
make[1]: Leaving directory '/home/raspberry/charm/multicore-linux/tmp'
Makefile:301: recipe for target 'headers' failed
make: *** [headers] Error 2
我的 gcc 和 g++ 版本是7.3.0 (Ubuntu/Linaro 7.3.0-27ubuntu1~18.04)
我无法在 Rpi 3B+ 上下载 charm++ 的问题还是我的 gcc 有错误?或者可能是其他问题?
谢谢。
答案1
Charm4py 版本 0.12.3 中存在一些与在 Rpi 3B+ 上构建 Charm++ 和安装有关的问题。这些问题将在下一版本中修复,因此pip3 install charm4py
到时应该可以正常工作。
与此同时,您可以像这样为 Rpi 3B+ 构建和安装 charm4py:
使用 apt 或 pip 安装 cython 和可选的 numpy Python 包。
然后,执行以下操作:
git clone https://github.com/UIUC-PPL/charm4py
cd charm4py
git clone https://github.com/UIUC-PPL/charm charm_src/charm
python3 setup.py install
希望这可以帮助