[BusyBox 0000125]: Compile Busybox without MMU failed.

bugs at busybox.net bugs at busybox.net
Mon Feb 11 18:19:11 UTC 2008


The following issue has been CLOSED 
====================================================================== 
http://busybox.net/bugs/view.php?id=125 
====================================================================== 
Reported By:                frankteoth
Assigned To:                BusyBox
====================================================================== 
Project:                    BusyBox
Issue ID:                   125
Category:                   Networking Support
Reproducibility:            always
Severity:                   block
Priority:                   normal
Status:                     closed
Resolution:                 reopened
Fixed in Version:           
====================================================================== 
Date Submitted:             02-25-2005 22:31 PST
Last Modified:              02-11-2008 10:19 PST
====================================================================== 
Summary:                    Compile Busybox without  MMU failed.
Description: 
Compilation failed when building Busybox for Generic ARM (no MMU) target.
You need to disable "start-stop-daemon", "System Logging Utilities", and 
"udhcp Server/Client" in order to compile successfully.

If rebuild buildroot for Generic ARM (with MMU), compiling Busybox will be
successful and without this issue.

====================================================================== 

---------------------------------------------------------------------- 
 landley - 12-07-05 22:13  
---------------------------------------------------------------------- 
What version of uClibc are you building against, and could you post your
.config to the mailing list?

Rob 

---------------------------------------------------------------------- 
 frankteoth - 12-10-05 10:02  
---------------------------------------------------------------------- 
Uses:
buildroot-20051209.tar.bz2
busybox-1.01.tar.bz2
uClibc-0.9.28.tar.bz2

binutils-2.16.1.tar.bz2
gcc-3.4.2.tar.bz2
linux-libc-headers-2.4.31.tar.bz2

.config for buildroot, busybox & uClibc are attached.
.config.BUGS & .config.GOOD for busybox are also attached.
Please refer to attachment: BUG-0000125.tar.bz2 

---------------------------------------------------------------------- 
 landley - 01-09-06 23:28  
---------------------------------------------------------------------- 
Your libc isn't providing daemonize(), and those things (quite
understandably) want it.  This is a toolchain issue, not a busybox issue.

man 3 daemonize 

---------------------------------------------------------------------- 
 vapier - 01-10-06 06:01  
---------------------------------------------------------------------- 
not really

would also say it's a toolchain/kernel problem that fork() isnt available
on uClinux ? 

---------------------------------------------------------------------- 
 jamie - 03-28-06 13:23  
---------------------------------------------------------------------- 
It's fixed with the attached patch "patch_busybox_daemon",
for i386 and ARM uClinux.

Other architectures are easy to add, and I'll do so if someone asks
(but you can probably do it yourself).

Because uClinux kernel doesn't implement fork(), uClibc doesn't
implement daemon() on those targets.  However daemon() can be
implemented using clone() and an assembly stub.

Only use this patch with supported MMUless uClinux targets.
It has the wrong behaviour otherwise.

It would be great if someone includes this patch in the Busybox
source tree and adds an Autoconf test to decide when to use it,
which is when there isn't a working fork().

Enjoy, --Jamie 

---------------------------------------------------------------------- 
 vapier - 03-28-06 16:25  
---------------------------------------------------------------------- 
that patch isnt acceptable, sorry 

---------------------------------------------------------------------- 
 bernhardf - 06-11-06 10:34  
---------------------------------------------------------------------- 
We will take care of this in bb_xdaemon for the BB_NOMMU case.

E.g.:
#if !BB_NOMMU /* normal case, we have fork */
#define bb_xdaemon(chd,clo,str) common_xdaemon(chd,clo)
#else
#define bb_xdaemon(chd,clo,str) vfork_daemon_rexec(chd,clo,str)
#endif

If by then we still have not exported argv and argc, we'll have to also
pass these in -- for the case we end up calling vfork_daemon_rexec(). 

---------------------------------------------------------------------- 
 vda - 02-11-08 10:19  
---------------------------------------------------------------------- 
Appears to be fixed in svn. start_stop_daemon works for me on NOMMU. 

Issue History 
Date Modified   Username       Field                    Change               
====================================================================== 
02-25-05 22:31  frankteoth     New Issue                                    
03-16-05 12:27  andersen       Assigned To              andersen => BusyBox 
09-17-05 03:56  Dmitry BazhenovIssue Monitored: Dmitry Bazhenov                 
  
12-07-05 22:13  landley        Note Added: 0000741                          
12-07-05 22:13  landley        Status                   assigned => feedback
12-10-05 08:40  frankteoth     Issue Monitored: frankteoth                    
12-10-05 09:53  frankteoth     Issue End Monitor: frankteoth                    
12-10-05 09:58  frankteoth     File Added: BUG-0000125.tar.bz2                  
 
12-10-05 10:02  frankteoth     Note Added: 0000758                          
01-09-06 23:28  landley        Status                   feedback => closed  
01-09-06 23:28  landley        Note Added: 0000909                          
01-09-06 23:28  landley        Resolution               open => no change
required
01-10-06 06:01  vapier         Status                   closed => feedback  
01-10-06 06:01  vapier         Resolution               no change required =>
reopened
01-10-06 06:01  vapier         Note Added: 0000912                          
03-28-06 12:26  jamie          Issue Monitored: jamie                       
03-28-06 13:11  jamie          File Added: patch_busybox_daemon                 
  
03-28-06 13:23  jamie          Note Added: 0001201                          
03-28-06 16:25  vapier         Note Added: 0001202                          
06-11-06 10:34  bernhardf      Note Added: 0001412                          
02-11-08 10:19  vda            Status                   feedback => closed  
02-11-08 10:19  vda            Note Added: 0004064                          
======================================================================




More information about the busybox-cvs mailing list