NVlabs / timeloop

Timeloop performs modeling, mapping and code-generation for tensor algebra workloads on various accelerator architectures.
https://timeloop.csail.mit.edu/
BSD 3-Clause "New" or "Revised" License
325 stars 101 forks source link

error when I do "make install_timeloop" #265

Open negishubham opened 4 months ago

negishubham commented 4 months ago

Hi, I am following the native install steps from this link: https://timeloop.csail.mit.edu/v4/installation#to-do-need-an-install-script-for-pytimeloop . But when I do "make install_timeloop" I am getting below error:

/usr/bin/ld: cannot find -lboost_log_setup: No such file or directory /usr/bin/ld: cannot find -lboost_filesystem: No such file or directory /usr/bin/ld: cannot find -lboost_log: No such file or directory /usr/bin/ld: cannot find -lboost_thread: No such file or directory collect2: error: ld returned 1 exit status scons: [build/timeloop-compound-config-test] Error 1 scons: building terminated because of errors. make: [Makefile:121: install_timeloop] Error 2

Thanks!

tanner-andrulis commented 4 months ago

Would you be able to check the makefile commands and run those apt-get install commands from before the failed scons command? Do they execute successfully?

negishubham commented 4 months ago

Yep, those apt-get commands run successfully. I think the Makefile is looking for a specific path and I need to maybe modify the Makefile to point to a specific path. I will see how to set those paths, somehow it is not able to find lboost.

SophistCedar commented 3 months ago

Hi I met the same issue.

g++ -o build/timeloop-compound-config-test -std=c++17 -pthread -static-libgcc -static-libstdc++ -Wl,--whole-archive -static -lpthread -Wl,--no-whole-archive build/unit-tests/compound-config/test-compound-config.o -Lbuild -Lsrc -ltimeloop-mapper -lconfig++ -lyaml-cpp -lncurses -ltinfo -lbarvinok -lisl -lntl -lpthread -lpolylibgmp -lgmp -ltinfo -lgpm -lboost_iostreams -lboost_serialization -lboost_log_setup -lboost_filesystem -lboost_log -lboost_thread /usr/bin/ld: cannot find -lboost_log_setup /usr/bin/ld: cannot find -lboost_filesystem /usr/bin/ld: cannot find -lboost_log /usr/bin/ld: cannot find -lboost_thread collect2: error: ld returned 1 exit status scons: [build/timeloop-compound-config-test] Error 1 scons: building terminated because of errors. make: [Makefile:121: install_timeloop] Error 2

And with below command to fix the above issues. Paste here for a reference.

sudo apt-get install -y --no-install-recommends libboost-filesystem-dev sudo apt-get install -y --no-install-recommends libboost-log-dev sudo apt-get install -y --no-install-recommends libboost-thread-dev

shirohasuki commented 2 months ago

I recommend checking that this command was executed correctly

git clone --recurse-submodules https://github.com/Accelergy-Project/accelergy-timeloop-infrastructure.git

I had the same problem as you and realized that some of the repositories were incomplete, so I re-downloaded them and finished the installation.

angshuman-parashar commented 1 month ago

@tanner-andrulis have you ever encountered this? Can we incorporate some error checking in the install script?

tanner-andrulis commented 1 month ago

I think I have encountered this. Would you be able to check the Docker file in the same directory and copy the lines that install the boost libraries? Those should work.

Long term, I think this issue is due to divergence between the Makefile and Dockerfile over time. We should change the Dockerfile to use the Makefile, such that there's only one copy of the install code.

linbaiwpi commented 2 weeks ago

I fix this issue by running the following command. Hope it helps. apt-get install libboost-all-dev