[Spread-users] Problems with installation of 4.2 release

Jonathan Stanton jonathan at spreadconcepts.com
Mon Nov 19 14:10:07 EST 2012


I think I can explain that. 

Our make files are run as separate Make executions in each directory (lib, include, daemon, docs, libspread-util, ...) by the top level makefile, they are not all part of the same make run. So what you should see is that the 'make' execution in the 'daemon' directory did error and stop running, but the top level make kept running the other directories make tasks (for example in 'examples' (as they may have file dependancies on specific files in other directories, but no dependency on the previous make executions being error-free.  

That is why the 'make' run as a whole doesn't stop then, but if you scroll back you should see errors in the console output. If that's what you saw, it is expected. If you do not see any error in the console output for the daemon directory when you look back, please send that output and I'll figure out what's going on. 

Changing this requires reworking the way the Makefiles are written to not create 'independant' files per main component directory, but to rather have an integrated top-level make that knows how to build everything in subdirectories. It wasn't the way the project evolved and it's nice to keep separate components easily buildable separately (I know that's still possible with integrated makefiles but it is more complex). 

If anyone knows a simple way to have independent Makefiles communicate error status so the toplevel won't run the rest of the directories, I'm happy to try the idea. 

Cheers,

Jonathan

-------------------------------------------------------------------------------
Jonathan Stanton		jonathan at spreadconcepts.com
Spread Group Messaging	www.spread.org
Spread Concepts LLC 	www.spreadconcepts.com
-------------------------------------------------------------------------------



On Nov 19, 2012, at 12:54 PM, John Schultz wrote:

> Yes, you are correct and I'm not sure why it didn't halt.  You didn't run make with the "-k" option or anything did you?
> 
> Cheers!
> 
> -----
> John Lane Schultz
> Spread Concepts LLC
> Phn: 301 830 8100
> Cell: 443 838 2200
> 
> On Nov 19, 2012, at 11:12 AM, Johannes Wienke wrote:
> 
> On 11/19/2012 04:00 PM, John Schultz wrote:
>> No, that won't do it. Go down to the compile lines for spmonitor, it should look something like this:
>> 
>> spmonitor$(EXEEXT): $(MONITOR_OBJS) $(LIBSPREADUTIL_DIR)/lib/libspread-util.a
>>       $(LD) -o $@ $(LDFLAGS) $(MONITOR_OBJS) $(LIBS) $(LIBSPREADUTIL_DIR)/lib/libspread-util.a
>> 
>> sptmonitor$(EXEEXT): $(TMONITOR_OBJS) $(LIBSPREADUTIL_DIR)/lib/libspread-util.a
>>       $(LD) $(THLDFLAGS) -o $@ $(TMONITOR_OBJS) $(THLIBS) $(LIBSPREADUTIL_DIR)/lib/libspread-util.a
>> 
>> Try changing it to:
>> 
>> spmonitor$(EXEEXT): $(MONITOR_OBJS) $(LIBSPREADUTIL_DIR)/lib/libspread-util.a
>>       $(LD) -o $@ $(LDFLAGS) $(MONITOR_OBJS) $(LIBSPREADUTIL_DIR)/lib/libspread-util.a $(LIBS) 
>> 
>> sptmonitor$(EXEEXT): $(TMONITOR_OBJS) $(LIBSPREADUTIL_DIR)/lib/libspread-util.a
>>       $(LD) $(THLDFLAGS) -o $@ $(TMONITOR_OBJS) $(LIBSPREADUTIL_DIR)/lib/libspread-util.a  $(THLIBS)
> 
> 
> Yes, that fixed the compilation problem and also the installation to to
> sbin. However, in the first place the Makefile should actually fail if
> something cannot be built.
> 
> Cheers,
> Johannes
> 
> _______________________________________________
> Spread-users mailing list
> Spread-users at lists.spread.org
> http://lists.spread.org/mailman/listinfo/spread-users
> 
> _______________________________________________
> Spread-users mailing list
> Spread-users at lists.spread.org
> http://lists.spread.org/mailman/listinfo/spread-users




More information about the Spread-users mailing list