Skip to content

Add -lboost_chrono to both the qt .pro file and makefile.unix #2493

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

Closed
wants to merge 12 commits into from

Conversation

robbak
Copy link
Contributor

@robbak robbak commented Apr 9, 2013

On FreeBSD, I was unable to build any version since the MicroSleep() change (commit 1b43bf0), which created a dependency on boost_chrono for boost versions above 1.50. This dependency had never been added to either makefile.unix or bitcoin-qt.pro.

This pullreq adds the required -lboost_chrono to both files.

@@ -400,7 +400,7 @@ LIBS += $$join(BOOST_LIB_PATH,,-L,) $$join(BDB_LIB_PATH,,-L,) $$join(OPENSSL_LIB
LIBS += -lssl -lcrypto -ldb_cxx$$BDB_LIB_SUFFIX
# -lgdi32 has to happen after -lcrypto (see #681)
win32:LIBS += -lws2_32 -lshlwapi -lmswsock -lole32 -loleaut32 -luuid -lgdi32
LIBS += -lboost_system$$BOOST_LIB_SUFFIX -lboost_filesystem$$BOOST_LIB_SUFFIX -lboost_program_options$$BOOST_LIB_SUFFIX -lboost_thread$$BOOST_THREAD_LIB_SUFFIX
LIBS += -lboost_system$$BOOST_LIB_SUFFIX -lboost_filesystem$$BOOST_LIB_SUFFIX -lboost_program_options$$BOOST_LIB_SUFFIX -lboost_thread$$BOOST_THREAD_LIB_SUFFIX -lboost_chrono$$BOOST_LIB_SUFFIX
win32:LIBS += -lboost_chrono$$BOOST_LIB_SUFFIX
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We have that dependency in for Windows :D. You need to remove this one then, if the lib should be available for all OSes.

robbak and others added 2 commits April 10, 2013 13:54
being added generally. (Thanks Phillip Kaufmann)
- don't display "Bitcoin - " when no title was supplied but just "Bitcoin"
@BitcoinPullTester
Copy link

Automatic sanity-testing: FAILED BUILD/TEST, see http://jenkins.bluematt.me/pull-tester/9736430b85d8bc5ce0e742344cf2f525a79c6246 for binaries and test log.

This could happen for one of several reasons:

  1. It chanages paths in makefile.linux-mingw or otherwise changes build scripts in a way that made them incompatible with the automated testing scripts (you can find the patches applied at test-time at http://jenkins.bluematt.me/pull-tester/files/patches/)
  2. It adds/modifies tests which test network rules (thanks for doing that), which conflicts with a patch applied at test time
  3. It does not build on either Linux i386 or Win32 (via MinGW cross compile)
  4. The test suite fails on either Linux i386 or Win32
  5. The block test-cases failed (lookup the first bNN identifier which failed in https://github.com/TheBlueMatt/test-scripts/blob/master/FullBlockTestGenerator.java)

If you believe this to be in error, please ping BlueMatt on freenode or TheBlueMatt here.

This test script verifies pulls every time they are updated. It, however, dies sometimes and fails to test properly. If you are waiting on a test, please check timestamps to verify that the test.log is moving at http://jenkins.bluematt.me/pull-tester/current/
Contact BlueMatt on freenode if something looks broken.

laanwj and others added 4 commits April 11, 2013 22:29
GUI can't connect to RPC. Showing this option in the help confuses
people, so remove it.
Every block index entry currently requires a separately-allocated
CBigNum. By replacing them with uint256, it's just 32 bytes extra
in CBlockIndex itself.

This should save us a few megabytes in RAM, and less allocation
overhead.
…nect

qt: don't show rpcconnect command line option in help
Use a uint256 for bnChainWork
@sipa
Copy link
Member

sipa commented Apr 12, 2013

I'm afraid this will have to be conditional on the version of Boost used.

@robbak
Copy link
Contributor Author

robbak commented Apr 12, 2013

Ok. I'll look at this further. Is the reason for the windows inclusion of
this library also because of boost library version?
On 13/04/2013 6:59 AM, "Pieter Wuille" notifications@github.com wrote:

I'm afraid this will have to be conditional on the version of Boost used.


Reply to this email directly or view it on GitHubhttps://github.com//pull/2493#issuecomment-16317293
.

@luke-jr
Copy link
Member

luke-jr commented Apr 12, 2013

Note the pullreq to upgrade boost to 1.53 removed the chronos lib.

@Diapolo
Copy link

Diapolo commented Apr 12, 2013

@luke-jr I know that my dependecy lib pull needs updates to reflect this.

@Diapolo
Copy link

Diapolo commented Apr 12, 2013

@robbak Windows needed the chrono lib because we use Boost 1.50.

@robbak
Copy link
Contributor Author

robbak commented Apr 13, 2013

On 13/04/2013 6:59 AM, "Pieter Wuille" notifications@github.com wrote:

I'm afraid this will have to be conditional on the version of Boost used.


Reply to this email directly or view it on GitHubhttps://github.com//pull/2493#issuecomment-16317293
.

Time for a silly question: How do we make this conditional on library
version? We aren't doing this anywhere else in the makefile or .pro file,
and the documentation doesn't seem to advertise a method.

For my purposes on FreeBSD, I can easily handle this in our port makefile -
it's easy to add it to LIBS or QMAKE_LFLAGS until we get an updated boost.

@luke-jr
Copy link
Member

luke-jr commented Apr 13, 2013

This is why automake was invented... :p

@laanwj
Copy link
Member

laanwj commented Apr 13, 2013

Configure script: #2195
I think we're going to need it.

@BitcoinPullTester
Copy link

Automatic sanity-testing: FAILED BUILD/TEST, see http://jenkins.bluematt.me/pull-tester/e622f35d2d3de667006b9c171928e36911aadef9 for binaries and test log.

This could happen for one of several reasons:

  1. It chanages paths in makefile.linux-mingw or otherwise changes build scripts in a way that made them incompatible with the automated testing scripts (please tweak those patches in contrib/test-scripts)
  2. It adds/modifies tests which test network rules (thanks for doing that), which conflicts with a patch applied at test time
  3. It does not build on either Linux i386 or Win32 (via MinGW cross compile)
  4. The test suite fails on either Linux i386 or Win32
  5. The block test-cases failed (lookup the first bNN identifier which failed in https://github.com/TheBlueMatt/test-scripts/blob/master/FullBlockTestGenerator.java)

If you believe this to be in error, please ping BlueMatt on freenode or TheBlueMatt here.

This test script verifies pulls every time they are updated. It, however, dies sometimes and fails to test properly. If you are waiting on a test, please check timestamps to verify that the test.log is moving at http://jenkins.bluematt.me/pull-tester/current/
Contact BlueMatt on freenode if something looks broken.

@robbak
Copy link
Contributor Author

robbak commented Apr 14, 2013

OK, that was jut me doing a merge. Sorry for the noise.

I'll close this. By the time we have a configuration script, We'll have an updated boost, and will no longer need it.

There is someone else on the mailing list that has had the same problem on a linux variant, too.

Another work-around may be adjusting the code to not use boost_chrone below boost version 5.3. I personally would rather add the lib for boost 5.0~5.3. Maybe a note in the makefile, like the notes we have for other boost versions.

@robbak robbak closed this Apr 14, 2013
@bitcoin bitcoin locked as resolved and limited conversation to collaborators Sep 8, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants