[M3devel] Progress bootstrapping, but still trouble

Tony Hosking hosking at cs.purdue.edu
Fri Jun 1 23:11:04 CEST 2007


I'm not sure about the details of you system, but you may find the  
attached cm3.cfg for LINUXLIBC6 to be useful.  It works for me on  
Fedora Core.

You should modify the paths as appropriate for your Linux installation.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: cm3.cfg
Type: application/octet-stream
Size: 12122 bytes
Desc: not available
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20070601/19dc856c/attachment-0005.obj>
-------------- next part --------------


On Jun 1, 2007, at 4:57 PM, Rodney M. Bates wrote:

> My first problem bootstrapping cm3:
>
>   ThreadPosix.i3: missing object types:  _t1541f475
>   imported by:  TimeStamp.m3
>
> goes away when I either 1) delete the entire cm3 distribution and  
> do a fresh cvs checkout,
>                      or 2) do a 'do-cm3-std.sh realclean'.
>
> Thanks to Antony for making me aware of 'realclean', which I hadn't  
> known about.  I have never
> been able to satisfactorily clean a cm3 tree before, with 'clean'  
> giving lots of failure messages
> and removing things inside LINUXLIBC6 build directories leaving  
> things unable to build due to
> missing files.
>
> My second problem:
>
>   rodney at runnymede:/usr/local/cm3/bin$ file m3bundle
>   m3bundle: ELF 32-bit LSB executable, Intel 80386, version 1  
> (SYSV), for GNU/Linux 2.6.9,
>     dynamically linked (uses shared libs), for GNU/Linux 2.6.9, not  
> stripped
>   rodney at runnymede:/usr/local/cm3/bin$ ./m3bundle
>   -bash: ./m3bundle: No such file or directory
>
> went away after some work on finding libpthreads.  Thanks to  
> Daniel's web page for getting me
> to looking at libpthreads.
>
> My cm3.cfg already had, inside SYSTEM_LIBS, the line:
>
>   "PTHREAD"    : [ "-Xlinker", "-Bdynamic", "-L/lib", "-lpthread" ],
>
> For one thing, there are three places in my distribution with non- 
> link versions of libpthread*.so:
> /lib, /lib/i686, and /usr/lib.  They are all different in size, and  
> I have no clue what the
> differences are, but only /usr/lib has a link named libpthread.so,  
> so I guessed that was the
> right place and changed cm3.cfg to look there.
>
> That didn't change anything, (same size executable), but removing  
> the "-Xlinker", "-Bdynamic", made
> cm3 compile an executable for m3bundle and other things that will  
> load and run.  There is a
> libpthread.a in /usr/lib (and nowhere else that I found.)
>
> But this is apparently not the whole story with libraries.
> Another program compiles to an executable with the same problem,  
> i.e., attempts
> to execute it give -bash: ./LdlBatch: No such file or directory.   
> The other lines
> in my SYSTEM_LIBS also had -Xlinker", "-Bdynamic", but removing  
> them fro"X11" line
> gives me this:
>
> new "Version.io" -> linking LdlBatch
> /usr/local/cm3/pkg/ui/LINUXLIBC6/libm3ui.a(TrestleOS.mo): In  
> function `TrestleOS__UserName':
> /home/rodney/proj/m3/cm3-fresh/cm3/m3-ui/ui/LINUXLIBC6/ 
> TrestleOS.m3:32: warning: Using 'getpwuid' in statically linked  
> applications requires at runtime the shared libraries from theglibc  
> version used for linking
> /usr/lib/libX11.a(x11_trans.o): In function `_X11TransSocketOpen':
> /usr/include/X11/Xtrans/Xtranssock.c:468: warning: Using  
> 'getaddrinfo' in statically linked applications requires at runtime  
> the shared libraries from the glibc version used for linking
> /usr/lib/libX11.a(imLcIm.o): In function `_XimWriteCachedDefaultTree':
> /usr/src/rpm/BUILD/libX11-1.0.3/modules/im/ximcp/imLcIm.c:476:  
> warning: memset used with constant zero length parameter; this  
> could be due to transposed parameters
> /usr/local/cm3/pkg/tcp/LINUXLIBC6/libm3tcp.a(IP.mo): In function  
> `IP__GetCanonicalByAddr':
> /home/rodney/proj/m3/cm3-fresh/cm3/m3-comm/tcp/LINUXLIBC6/IP.m3:53:  
> warning: Using 'gethostbyaddr' in statically linked applications  
> requires at runtime the shared libraries from the glibc version  
> used for linking
> /usr/local/cm3/pkg/tcp/LINUXLIBC6/libm3tcp.a(IP.mo): In function  
> `IP__GetHostByName':
> /home/rodney/proj/m3/cm3-fresh/cm3/m3-comm/tcp/LINUXLIBC6/IP.m3:21:  
> warning: Using 'gethostbyname' in statically linked applications  
> requires at runtime the shared libraries from the glibc version  
> used for linking
> /usr/lib/libX11.a(x11_trans.o): In function  
> `_X11TransSocketINETConnect':
> /usr/include/X11/Xtrans/Xtranssock.c:1670: warning: Using  
> 'getservbyname' in statically linked applications requires at  
> runtime the shared libraries from the glibc version used for linking
> /usr/lib/libX11.a(ConnDis.o): In function `GetAuthorization':
> /usr/src/rpm/BUILD/libX11-1.0.3/src/ConnDis.c:1232: undefined  
> reference to `XauDisposeAuth'
> /usr/src/rpm/BUILD/libX11-1.0.3/src/ConnDis.c:1037: undefined  
> reference to `XauGetBestAuthByAddr'
> /usr/src/rpm/BUILD/libX11-1.0.3/src/ConnDis.c:1176: undefined  
> reference to `XdmcpWrap'
> /usr/lib/libX11.a(CrGlCur.o): In function `open_library':
> /usr/src/rpm/BUILD/libX11-1.0.3/src/CrGlCur.c:72: undefined  
> reference to `dlopen'
> /usr/lib/libX11.a(CrGlCur.o): In function `fetch_symbol':
> /usr/src/rpm/BUILD/libX11-1.0.3/src/CrGlCur.c:107: undefined  
> reference to `dlsym'
> /usr/src/rpm/BUILD/libX11-1.0.3/src/CrGlCur.c:109: undefined  
> reference to `dlsym'
> collect2: ld returned 1 exit status
> Fatal Error: package build failed
>
> Anyone have any ideas on why neither dynamic nor static linking  
> works, or how to figure out what
> version of the libraries I need?  Better yet, can anyone point me  
> to some real documentation on
> Linux dynamic linking in general?  I've always been overwhelmed  
> with false hits when trying to find
> it with a search engine.
>
>
>
>
>
>
>
>
>
> -- 
> -------------------------------------------------------------
> Rodney M. Bates, retired assistant professor
> Dept. of Computer Science, Wichita State University
> Wichita, KS 67260-0083
> 316-978-3922
> rodney.bates at wichita.edu



More information about the M3devel mailing list