Known Problems with CM3

Contents:

1 General Problems
   1.1 Linkage failure: cannot find -lXaw
   1.2 Filenames with spaces
   1.3 Unresolved X11 libraries on NetBSD
  


1 General Problems

General problems and notes applying to all releases:

1.1 Linkage failure: cannot find -lXaw

Platforms: mostly LINUXLIBC6

Description: Problems of this kind will arise if the linker cannot find the static standard libraries of the X systems. This will mostly be a problem on Linux systems, as almost all newer distributions tend to not install static libraries by default. A typical failure situation looks like this:

> === package /home/i8fs1/VERIF/usr/old/stow/cm3/current/m3-ui/formsedit ===
>  +++ cm3 -build -override -DROOT=/home/i8fs1/VERIF/usr/old/stow/cm3/current  +++
> --- building in LINUXLIBC6 ---
> /home/i8fs1/VERIF/usr/old/stow/cm3/tmp/bin/m3bundle -name formseditBundle -F/tmp/qk
> new source -> compiling FormsEditVBT.i3
> new source -> compiling formseditBundle.i3
> new source -> compiling FormsEditVBT.m3
> new source -> compiling FormsEdit.m3
> new source -> compiling formseditBundle.m3
>  -> linking formsedit
> /home/i8fs1/VERIF/usr/old/bin/ld: cannot find -lXaw
> collect2: ld returned 1 exit status
    

Solution: Usually it is possible to install the missing libraries without much effort.

1.2 Filenames with spaces

Platforms: all, especially WIN32

Description: CM3 currently cannot handle filenames containing spaces very well. This will probably not be an issue on POSIX platforms, but it is very annoying on WIN32, as many standard installation path names contain spaces there.

The problem cannot be easily resolved. This is due to the broken process creation interface on WIN32 platforms, which does not allow transparent passing of parameters, and some standard quake functions, which have to be replaced by more general equivalents, like exec, arglist (probably more).

Solution: There is no easy solution to this problem. As a temporary work-around, the installer has been modified to replace pathnames with spaces by their 8.3 style equivalent on WIN32. If you cannot avoid using spaces in your CM3 projects, the 8.3 style short form should be a possible though ugly work-around for that, too. Voluntary contributions in this area are more than welcome. This work-around is incorporated in all installation programs since release 5.1.1.

1.3 Unresolved X11 libraries on NetBSD

Platforms: NetBSD

Description: Running Modula3 programs, and hence building cm3, fails due to unresolved symbols to X11 libraries. Example error message: Shared object "libXaw.so.7" not found

Solution: Add the /usr/X11R6/lib directory to /etc/ld.so.conf.


m3-support{at}elego.de