-
Notifications
You must be signed in to change notification settings - Fork 2
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
Boost package does not contain Boost JSON #99
Comments
Apparently ubuntu before 24 does not ship with the json component, despite debian doing so // @EinarElen |
I'm guessing this is a version issue. The version of Boost in Ubuntu 22.04 repositories is 1.74 and I can confirm the version within the image by checking within the container itself
(I'm using 4.2.2 of ldmx/dev by the way.) Boost.JSON is not in 1.74. I would recommend using nlohmann/json which has already been used for this purpose within the Tracking area for writing files for Phoenix. None of this event display work has been merged into ldmx-sw trunk, but they may offer code snippets ready for you to inspect: |
We were looking at boost json just because we were hoping that we could use
it without any external packages. The nlohmann one is ofc the default
choice otherwise
…On Mon, Jun 17, 2024, 16:25 Tom Eichlersmith ***@***.***> wrote:
I'm guessing this is a version issue. The version of Boost in Ubuntu 22.04
repositories is 1.74 and I can confirm the version within the image by checking
within the container itself
<https://askubuntu.com/questions/147474/how-can-i-find-boost-version>
$ ldmx 'dpkg -s libboost-dev | grep Version'
Version: 1.74.0.3ubuntu7
(I'm using 4.2.2 of ldmx/dev by the way.)
Boost.JSON is not in 1.74. I would recommend using nlohmann/json
<https://json.nlohmann.me/> which has already been used for this purpose
within the Tracking area for writing files for Phoenix. None of this event
display work has been merged into ldmx-sw trunk, but they may offer code
snippets ready for you to inspect:
- [
https://github.com/LDMX-Software/ldmx-sw/compare/trunk...888-eventdisplay-re-design](for
converting our detector from GDML to GTLF)
- [
https://github.com/LDMX-Software/Tracking/blob/849c279329977cb4a580b3f48f012b4878723c19/src/Tracking/Reco/PhoenixEventDumper.cxx](event
dumping within Tracking)
—
Reply to this email directly, view it on GitHub
<#99 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ADMTCOQNAIJK3JKQB4J2KQTZH3WVFAVCNFSM6AAAAABJN5Z3HOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNZTGU3DOMRVGQ>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
To help avoid this confusion in the future, I've included Boost as an entry in the base README of this repo e7df517 I guess, this issue then becomes a discussion on if we want to update the image with a JSON parser and (if so) which to choose. Options roughly in order of my personal preference:
|
I'm working on setting up a Phoenix visualisation tool for LDMX. For this, I need to create JSON files with event data (as Phoenix only accepts certain file types). Currently I am making an analyzer that builds the JSON files with strings, which is not a very efficient when dealing with a large number of events. I was going to use the Boost JSON package, as we have libboost-all-dev in the Docker image, which should contain said JSON package. However, I get this error when adding #include <boost/json.hpp> to my .cxx file and running ldmx compile:
Is this intended? Could the package be added to the image?
The text was updated successfully, but these errors were encountered: