kevin diggs <diggskevin38@xxxxxxxxx> writes: > /opt/GMP-4.3.2/lib > /opt/MPFR-2.4.2/lib If you build GMP and MPFR yourself, be sure to configure them with --disable-shared. > /opt/gcc-3.4.6/lib > /opt/gcc-4.3.5/lib If you build your own gcc in a non-standard location, and you build a dynamic version of libstdc++ as is the default, then you need to tell the dynamic linker where to find libstdc++ one way or another. There is unfortunately no good general solution to this. > This caught me by surprise. I expected the compiler to deal with these > internal parts on its own? I have no idea how to tell the firefox > build system about the location of these internal compiler > libraries??? You shouldn't have to tell firefox anything about them. You do have to tell the dynamic linker about them. Your configure line looks fine to me. > P.S.: As a special bonus can anyone enlighten me on what cxa_atexit > and secure-plt are? Should I enable them? How do I figure out if I can > enable them??? The cxa_atexit function is used to correctly run the destructors of global variables when a shared library is unloaded via dlclose. If the cxa_atexit function is not available, then g++ will register global variable destructors using atexit. The variable will then be destroyed when the program calls exit rather than when the program calls dlclose. This is wrong and may even fail if you are unlucky. The gcc configure script will normally determine the right value to use here. However, you should use --enable-cxa_atexit if you are building gcc itself with a cross-compiler for a system which uses glibc. The default PLT for PowerPC is both executable and writable. These days that is considered to be undesirable as it opens an avenue for buffer overflows and similar attacks to build instruction sequences which can then be executed. The -msecure-plt option tells gcc to use a different PLT strategy which does not require a writable PLT. I think this requires a sufficiently new dynamic linker. The --enable-secureplt configure option just makes -msecure-plt the default for gcc. Ian