pulp-platform / pulp-sdk

Apache License 2.0
99 stars 74 forks source link

Issues during the installation of PULP-SDK on empty OS #136

Open dnadalini opened 1 year ago

dnadalini commented 1 year ago

Dear all,

I tried to install the new version of the PULP-SDK, however errors occur during the installation ("main" branch). First of all, the gvsoc folder misses the files. I fixed with:

git submodule update --init --recursive

Second, Python misses the "prettytable" module. I fixed with

pip install prettytable

However, when I launch the "make build", an error occures:

[ 6%] Building CXX object tools/gvsoc/common/engine/CMakeFiles/gvsoc_debug.dir/src/signal.cpp.o /home/virtualbox/PULP/pulp-sdk/tools/gvsoc/common/engine/src/vp.cpp: In function ‘std::string vp::__gv_get_component_path(js::config*, std::string)’: /home/virtualbox/PULP/pulp-sdk/tools/gvsoc/common/engine/src/vp.cpp:1534:18: error: ‘std::filesystem’ has not been declared 1534 | if (std::filesystem::exists(path)) | ^~~~~~ [ 6%] Building CXX object tools/gvsoc/common/engine/CMakeFiles/gvsoc_debug.dir/src/queue.cpp.o [ 7%] Building CXX object tools/gvsoc/common/engine/CMakeFiles/gvsoc.dir/src/trace/fst.cpp.o make[3]: [tools/gvsoc/common/engine/CMakeFiles/gvsoc_debug.dir/build.make:167: tools/gvsoc/common/engine/CMakeFiles/gvsoc_debug.dir/src/vp.cpp.o] Error 1 make[3]: Waiting for unfinished jobs.... [ 7%] Building CXX object tools/gvsoc/common/engine/CMakeFiles/gvsoc.dir/src/trace/vcd.cpp.o [ 8%] Building CXX object tools/gvsoc/common/engine/CMakeFiles/gvsoc.dir/src/clock/clock.cpp.o [ 8%] Building CXX object tools/gvsoc/common/engine/CMakeFiles/gvsoc.dir/src/vp.cpp.o [ 8%] Building CXX object tools/gvsoc/common/engine/CMakeFiles/gvsoc.dir/src/block.cpp.o make[3]: Leaving directory '/home/virtualbox/PULP/pulp-sdk/build' make[2]: [CMakeFiles/Makefile2:1377: tools/gvsoc/common/engine/CMakeFiles/gvsoc_debug.dir/all] Error 2 make[2]: Waiting for unfinished jobs.... [ 9%] Building CXX object tools/gvsoc/common/engine/CMakeFiles/gvsoc.dir/src/register.cpp.o [ 9%] Building CXX object tools/gvsoc/common/engine/CMakeFiles/gvsoc.dir/src/signal.cpp.o [ 9%] Building CXX object tools/gvsoc/common/engine/CMakeFiles/gvsoc.dir/src/queue.cpp.o [ 10%] Building CXX object tools/gvsoc/common/engine/CMakeFiles/gvsoc.dir/src/proxy.cpp.o /home/virtualbox/PULP/pulp-sdk/tools/gvsoc/common/engine/src/vp.cpp: In function ‘std::string vp::__gv_get_component_path(js::config*, std::string)’: /home/virtualbox/PULP/pulp-sdk/tools/gvsoc/common/engine/src/vp.cpp:1534:18: error: ‘std::filesystem’ has not been declared 1534 | if (std::filesystem::exists(path)) | ^~~~~~ [ 10%] Building CXX object tools/gvsoc/common/engine/CMakeFiles/gvsoc.dir/src/power/power_table.cpp.o make[3]: [tools/gvsoc/common/engine/CMakeFiles/gvsoc.dir/build.make:167: tools/gvsoc/common/engine/CMakeFiles/gvsoc.dir/src/vp.cpp.o] Error 1 make[3]: Waiting for unfinished jobs.... make[3]: Leaving directory '/home/virtualbox/PULP/pulp-sdk/build' make[2]: [CMakeFiles/Makefile2:1431: tools/gvsoc/common/engine/CMakeFiles/gvsoc.dir/all] Error 2 make[2]: Leaving directory '/home/virtualbox/PULP/pulp-sdk/build' make[1]: [Makefile:130: all] Error 2 make[1]: Leaving directory '/home/virtualbox/PULP/pulp-sdk/build' make: *** [Makefile:27: build] Error 2

I'm using GCC 9.4.0.

dnadalini commented 1 year ago

I solved by editing the "CMakeList.txt" file in "pulp-sdk/" folder in this way:

cmake_minimum_required(VERSION 3.16.3) set (CMAKE_CXX_FLAGS "-lstdc++fs -std=c++17")

project(sdk)

if(NOT DEFINED CONFIG_PULP_SDK_HOME) message(STATUS "Using current directory as GAP SDK Home") set(CONFIG_PULP_SDK_HOME ${CMAKE_CURRENT_SOURCE_DIR}) endif()

# Use CCache to speed up compilation if possible find_program(CCACHE_FOUND ccache) if(CCACHE_FOUND) set(CMAKE_C_COMPILER_LAUNCHER ccache) set(CMAKE_CXX_COMPILER_LAUNCHER ccache) endif()

add_subdirectory(tools/gvsoc/common)

## Install pip requirements, note: does not install nntool reqs as building ## will do that add_custom_target( pip_install COMMENT "install pip deps from requirements" COMMAND pip install --user -r ${CONFIG_PULP_SDK_HOME}/requirements.txt COMMAND pip install --user -r ${CONFIG_PULP_SDK_HOME}/tools/gapy_v2/requirements.txt COMMAND pip install --user -r ${CONFIG_PULP_SDK_HOME}/tools/plptest/requirements.txt )

It seems the problem is generated since a too old version of g++ is called (<14.0).