Project

General

Profile

Task #23943

dunetpc v08_41_00

Added by Christoph Alt about 1 month ago. Updated 23 days ago.

Status:
Closed
Priority:
Normal
Assignee:
Start date:
01/24/2020
Due date:
% Done:

0%

Estimated time:
Duration:

Description

David,

Please tag dunetpc v08_41_00.

The larsoft e19 and c7 builds use python 3 now. larsoft is also still available for python 2 with the qualifiers e19:py2 and c7:py2. We can not build dunetpc with python 3 yet since dune_raw_data, lbne_raw_data and duneutil are only available for python 2.
In order to be consistent with the larsoft qualifier scheme we will have e19:py2 and c7:py2 builds of dunetpc this week.

I changed the jenkins configuration to build e19:py2 and c7:py2. Also, several py2 qualified packages are not available for macOS 10.14 so those builds will fail.

Christoph

History

#1 Updated by David Adams about 1 month ago

  • Status changed from New to Work in progress

Tag is made and builds underway.

#2 Updated by David Adams about 1 month ago

All builds failed, e.g. for slf7 e19-prof

dunetpc/dune/RegCNN/func/CMakeFiles/RegCNNFunc.dir/build.make:61: *** target pattern contains no `%'.  Stop.
make[1]: *** [dunetpc/dune/RegCNN/func/CMakeFiles/RegCNNFunc.dir/all] Error 2dunetpc/dune/DuneExample/CMakeFiles/dune_DuneExample.dir/build.make:61: *** target pattern contains no `%'.  Stop.

Maybe we didn't get the Jenkins script right?

I will resubmit.

#3 Updated by David Adams about 1 month ago

Again all builds fail. The slf7 e19 prof build has similar errors to before and more:

dunetpc/dune/DuneObj/CMakeFiles/dune_DuneObj.dir/build.make:61: *** target pattern contains no `%'.  Stop.
dunetpc/dune/DuneExample/CMakeFiles/dune_DuneExample.dir/build.make:61: *** target pattern contains no `%'.  Stop.
dunetpc/dune/RegCNN/func/CMakeFiles/RegCNNFunc.dir/build.make:61: *** target pattern contains no `%'.  Stop.
make[1]: *** [dunetpc/dune/DuneExample/CMakeFiles/dune_DuneExample.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
make[1]: *** [dunetpc/dune/RegCNN/func/CMakeFiles/RegCNNFunc.dir/all] Error 2
make[1]: *** [dunetpc/dune/DuneObj/CMakeFiles/dune_DuneObj.dir/all] Error 2
dunetpc/dune/DuneInterface/Data/CMakeFiles/dune_DuneInterface_Data_dict.dir/build.make:60: *** target pattern contains no `%'.  Stop.
make[1]: *** [dunetpc/dune/DuneInterface/Data/CMakeFiles/dune_DuneInterface_Data_dict.dir/all] Error 2
dunetpc/dune/DuneInterface/Tool/CMakeFiles/dune_DuneInterface_Tool_dict.dir/build.make:60: *** target pattern contains no `%'.  Stop.
make[1]: *** [dunetpc/dune/DuneInterface/Tool/CMakeFiles/dune_DuneInterface_Tool_dict.dir/all] Error 2
dunetpc/dune/ArtSupport/CMakeFiles/dune_ArtSupport.dir/build.make:61: *** target pattern contains no `%'.  Stop.
make[1]: *** [dunetpc/dune/ArtSupport/CMakeFiles/dune_ArtSupport.dir/all] Error 2
make: *** [all] Error 2
0.83user 0.12system 0:01.02elapsed 94%CPU (0avgtext+0avgdata 8104maxresident)k

#4 Updated by Thomas Junk about 1 month ago

I see from the jenkins logs that the mrbsetenv commands failed:

The working build directory is /scratch/workspace/dune-release-build/BUILDTYPE/debug/QUAL/e19:py2/label1/swarm/label2/SLF7/temp/build_slf7.x86_64
The source code directory is /scratch/workspace/dune-release-build/BUILDTYPE/debug/QUAL/e19:py2/label1/swarm/label2/SLF7/temp/srcs
----------- check this block for errors -----------------------
WARNING: '/scratch/workspace/dune-release-build/BUILDTYPE/debug/QUAL/e19' is not a directory
WARNING: 'py2/label1/swarm/label2/SLF7/temp/localProducts_dune_v08_41_00_e19_py2_debug' is not a directory
WARNING: '/scratch/workspace/dune-release-build/BUILDTYPE/debug/QUAL/e19' is not a directory
WARNING: 'py2/label1/swarm/label2/SLF7/temp/localProducts_dune_v08_41_00_e19_py2_debug' is not a directory
WARNING: '/scratch/workspace/dune-release-build/BUILDTYPE/debug/QUAL/e19' is not a directory
WARNING: 'py2/label1/swarm/label2/SLF7/temp/localProducts_dune_v08_41_00_e19_py2_debug' is not a directory
WARNING: '/scratch/workspace/dune-release-build/BUILDTYPE/debug/QUAL/e19' is not a directory
...

One thing I noticed is that the larsoft Jenkins build separates qualifiers with hyphens instead of colons. I did the same thing for dune_raw_data and lbne_raw_data, but translated the hyphens to colons before using the string as an actual qualifier. It looks like some script somewhere is picking apart the directory name:

/scratch/workspace/dune-release-build/BUILDTYPE/debug/QUAL/e19:py2/label1/swarm/label2/SLF7/temp/build_slf7.x86_64

into the part before the colon and the part after the colon. And the directory name gets set by Jenkins based on the value of QUAL passed in, so you can't change it in the script. Using another character than : and translating it on the way in might help.

A second cheesy way forwards is to make dunetpc as before, without the py2 qualfier, and have that implicitly mean py2 for the dependent products for which that applies. So in product_deps, the dunetpc qualifier never has a py2, but other products that need it will. I tried building this interactively on sl7 and it seems to work.

#5 Updated by David Adams 30 days ago

I am fine with dropping the py qualifier from dunetpc and supporting only one py version.

I restarted the build a little while ago and we still have the same problems. No surprise here.

I am waiting for someone (Tom, Christoph?) to fix the problem. Please let us know if you are working on this. Thanks.

#6 Updated by Christoph Alt 29 days ago

I'll have a look at it.

#7 Updated by Christoph Alt 29 days ago

We moved the jenkins build scripts for dune and duneutil to duneutils/buildScripts. Tom fixed the DUNE build script and started the jenkins builds. All builds succeeded except the mac ones, which is expected.

Please install the builds.

#8 Updated by David Adams 29 days ago

The builds are installed. Thanks.

#9 Updated by David Adams 23 days ago

  • Status changed from Work in progress to Closed


Also available in: Atom PDF