Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

undefined reference to symbol '_ZN5boost6system15system_categoryEv #175

Open
uXeBoy opened this Issue Dec 9, 2018 · 5 comments

Comments

Projects
None yet
3 participants
@uXeBoy
Copy link

uXeBoy commented Dec 9, 2018

Receive the following error when attempting: make -j$(nproc)

/usr/bin/ld: CMakeFiles/nextpnr-ice40.dir/common/project.cc.o: undefined reference to symbol '_ZN5boost6system15system_categoryEv'
/usr/local/lib/libboost_system.so.1.60.0: error adding symbols: DSO missing from command line
@uXeBoy

This comment has been minimized.

Copy link
Author

uXeBoy commented Dec 9, 2018

OK, was able to progress past this error by adding 'system' to line 69 of CMakeLists.txt:

set(boost_libs system filesystem thread program_options)

But now getting a different error:

CMakeFiles/nextpnr-ice40.dir/ice40/arch.cc.o: In function `nextpnr_ice40::RelPtr<nextpnr_ice40::ChipInfoPOD>::get() const':
/home/dan/Downloads/nextpnr/ice40/arch.h:37: undefined reference to `nextpnr_ice40::chipdb_blob_1k'
/home/dan/Downloads/nextpnr/ice40/arch.h:37: undefined reference to `nextpnr_ice40::chipdb_blob_8k'
/home/dan/Downloads/nextpnr/ice40/arch.h:37: undefined reference to `nextpnr_ice40::chipdb_blob_384'
/home/dan/Downloads/nextpnr/ice40/arch.h:37: undefined reference to `nextpnr_ice40::chipdb_blob_5k'
collect2: error: ld returned 1 exit status
make[2]: *** [nextpnr-ice40] Error 1
make[1]: *** [CMakeFiles/nextpnr-ice40.dir/all] Error 2
make: *** [all] Error 2

Which seems related to this issue?

@daveshah1

This comment has been minimized.

Copy link
Member

daveshah1 commented Dec 9, 2018

Did updating CMake also fix the ice40 link issue? Currently we have only tested nextpnr on Ubuntu 16.04 and later.

@uXeBoy

This comment has been minimized.

Copy link
Author

uXeBoy commented Dec 9, 2018

Yes, it seems like those two issues were connected. But my machine ground to a halt and froze up a lot compiling the chipdb files, so I am uncertain they are valid... it would be great to be able to just download a verified precompiled copy of the chipdb-*.bba and chipdb-*.cc files somewhere??

@daveshah1

This comment has been minimized.

Copy link
Member

daveshah1 commented Dec 9, 2018

@janrinze

This comment has been minimized.

Copy link

janrinze commented Dec 28, 2018

using only 'make' instead of 'make -j$(nproc)' will reduce the chances of memory exhaustion during build. If that works, try' 'make -j2' or 'make -j3' to see where it runs out of memory. The 'freezing' usually means that your machine has resorted to swapping.

Compiling on Debian only succeeded for me after upgrading to 'testing' because the CMake version and boost libraries were too old. The python requirements were also not satisfied with Debian 9.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.