Compile against FairMQ 1.3.6#1458
Conversation
|
I think the first step would be to get a compiling o2-dev-fairroot. Can we bump the versions there first? |
|
@mkrzewic : Can you please fix the clang-format errors? |
|
Hi @mkrzewic, so thanks to alisw/alidist#1378 the deprecation warnings are gone in o2-dev-fairroot. We still have this error as you can see from the details: |
|
cannot reproduce, I suspect you're not compiling against fairmq 1.3.6 ? |
|
@mkrzewic : Which version/commit of FairRoot is compatible with this? Just in order to test it locally. |
|
v1.3.6 |
|
@mkrzewic : I was talking about FairRoot. There doesn't seem to be a version 1.3.6 in FairRoot. |
|
ah fairroot version does not matter for this patch. However i'm using c672f280 |
|
I am fixing the SFINAE right now. |
|
#1462 should fix the error. Once that is merged the dev-fairroot test of this one should become green. |
|
@ktf that would be great, but here i dont really see how a fix in a different, independent module would fix this? |
|
#1462 should make my code work in both 1.2.x and 1.3.x, so if we look at |
|
If you rebase and push again we should speed up the test retrial. |
|
Ok, seems we still have a few issues with boost and ROOT... |
|
@ktf any idea how to solve those issues? |
|
Nope, sorry. Maybe we need some |
|
it compiles on centos7 with defaults-o2 and cmake bumped to 3.9.4 (my setup) |
|
(and of course fairmq @v1.3.6 and fairroot @c672f280) |
|
It does compile. Tests fail. Can you recompile (with aliBuild) after exporting |
|
We have the following error during the tests: The solution to this problem does not seem so trivial, I have actually tried some @mkrzewic: the code triggering ROOT's complaints is in FairMQ, and it seems to be yours. Can you have a look please? This is essentially the only big thing that's preventing us from releasing O2 v1.0 😢 |
|
looks like root cannot parse the boost headers, no idea how to solve it atm. will have a deeper look tomorrow, I'm able to reproduce this now thanks to @dberzano |
|
#1464 will solve the mentioned problems in detector code. |
This is supposed to be a temporary measure. See AliceO2Group#1464 and AliceO2Group#1458.
This is under protest - getDevice should NOT return a raw pointer to be adopted by a unique_ptr somewhere arbitrary. Best option is possibly to return by unique_ptr.
|
With #1464 and #1465 merged, and this PR rebased (I just did it) we should finally see the Note that we expect the As soon as the test is green, we can finally merge alisw/alidist#1363 as well. |
|
It seems there is one last error to fix: |
|
I believe this new bug is not due to a problem in our code (since the same macro tested good before and is not dependent on FairMQ). Rather I suspect the problem comes from FairRoot-dev which copied the MCStepLogger from AliceO2 and which is now building the same library "MCStepLogger.so" as we do. So ROOT is probably confused. Indeed, local tests confirm this theory. Removing "libMCStepLogger.so" from FairRoot leads to a good compilation. As long as we keep the FairRoot tag, we should be good to go. I will nevertheless try to fix the problem in FairRoot dev. |
|
OK I came to the same conclusion and verified it as well. We indeed have Let's proceed, and tag. Note, this is quite disruptive and requires bumping alidist. I'll try to do that quickly (with proper double-testing first). |
|
for the record: FairRootGroup/FairRoot#846 |
This is the bare minimum to make it chooch. There will be another PR that will integrate the new memory_resource stuff that got merged in FairMQ (thus removing most of the current O2 implementation).