This is the mail archive of the mailing list for the glibc project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

glibc port to non-linux platform

This question concerns porting glibc to a non-linux x86_64 target.
Some time ago we successfully ported a static version of glibc (2.3.2) to this target. We are now trying to build the same version shared and are running into some issues that we hope someone can shed some light on.

The build fails with the following error:
make[5]: Leaving directory `/rsc/home/jhlaros/CNW_SVN_glibc/trunk/pe/computelibs/glibc/ctype'
make -C ../elf objdir=/rsc/home/jhlaros/CNW_SVN_glibc/trunk/pe/computelibs/glibc/build/cnos64 -f Makefile -f ../elf/rtld-Rules rtld-all rtld-modules='rtld-dl-profstub.os rtld-dl-libc.os rtld-dl-open.os rtld-dl-close.os'
make[5]: Entering directory `/rsc/home/jhlaros/CNW_SVN_glibc/trunk/pe/computelibs/glibc/elf'
../elf/rtld-Rules:34: *** missing separator. Stop.
make[4]: *** [/rsc/home/jhlaros/CNW_SVN_glibc/trunk/pe/computelibs/glibc/build/cnos64/elf/rtld-dl-profstub.os] Error 2
make[3]: *** [/rsc/home/jhlaros/CNW_SVN_glibc/trunk/pe/computelibs/glibc/build/cnos64/elf/rtld-libc.a] Error 2
make[2]: *** [elf/subdir_lib] Error 2
make[1]: *** [install] Error 2
make: *** [glibc_for_catamount_apps] Error 2
make[5]: Leaving directory `/rsc/home/jhlaros/CNW_SVN_glibc/trunk/pe/computelibs/glibc/elf'
make[4]: Leaving directory `/rsc/home/jhlaros/CNW_SVN_glibc/trunk/pe/computelibs/glibc/elf'
make[3]: Leaving directory `/rsc/home/jhlaros/CNW_SVN_glibc/trunk/pe/computelibs/glibc/elf'
make[2]: Leaving directory `/rsc/home/jhlaros/CNW_SVN_glibc/trunk/pe/computelibs/glibc'

My understanding is this happens because at this point the build should not descend into the subdir elf as evidenced by this in elf/rtld-Rules file lines:

ifndef rtld-subdirs
error This is makefile is a subroutine of elf/Makefile not to be used directly

My guess is that in a typical environment the build will not attempt to enter elf. I have built for a Linux client as a sanity check and in fact the rtld-subdirs at the bottom of build/elf/ does not include elf.

Further my guess is that in our port much more will be required of the build at this stage since it will not be found elsewhere in the target environment. This is further evidenced by the file differences between the standard Linux build and our target build. Our target build containing many more symbol references which leads to the larger number of subdirs in the file.

First any advice on the best way to proceed would be helpful. I can try to hack the build process to try and make it through all of the subdir builds but it would help if I knew why the rtld-Rules file contains this protection.



James H. Laros III                Phone: 505-845-8532
Dept. 1422                        email:
Scalable Computer Architectures
Sandia National Labs

"The history of liberty is a history of the limitations of
governmental power, not the increase of it." - Wilson

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]