#48178: circular dependency apple-gcc42/xpm, and many others --------------------------+-------------------------------- Reporter: herzog@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: | Keywords: Port: apple-gcc42 | --------------------------+-------------------------------- Comment (by herzog@…): A change to Xcode 2.5 would be a problem for me, since several of my projects building very well with Xcode 2.4.1 don't with Xcode 2.5. Mainly because of a change in Interface Builder. Moreover, according to Apple's release notes, Xcode 2.5 cannot be used to develop for Mac OS 10.5. A change to Xcode 3 seems to be impossible, too, since it doesn't run with Mac OS 10.4. Nevertheless, I have tried to use Xcode 2.5 running the system from an external drive, and the problem remains. So I returned to Xcode 2.4.1 and tried to build apple-gcc42 manually following the hints in the file {{{ $(port work apple-gcc42)/gcc-5666.3/README.Apple }}} I created a folder {{{ testplace, }}} copied the archive 'gcc-5666.3.tar.gz' into a subdirectory of my home directory, expanded it into a folder named {{{ gcc-5666.3, }}} changed into this folder and called {{{ mkdir darwin cd darwin ../configure --prefix=/testplace make bootstrap make install }}} Already the configure script is a problem. It assumes that the minimum Mac OX is system 10.5 and that the source root is {{{ /Developer/SDKs/MacOSX10.5.sdk }}} Such a source root directory doesn't exist, neither with Xcode 2.4.1 nor with Xcode 2.5. So one shouldn't be worried that compilation fails. I tried to call configure with the option {{{ --with-build-sysroot=/Developer/SDKs/MacOSX10.4u.sdk }}} Actually, I added further options to be as close as possible to the call done by the apple-gcc42 port: {{{ --prefix=/testplace --enable-languages=c,c++,objc,obj-c++ --with-system-zlib --disable-nls --with-slibdir=/usr/lib --with-gxx-include-dir=/usr/include/c++/4.0.0 --host=powerpc-apple-darwin8 --target=powerpc-apple-darwin8 }}} In addition, I had to create a directory {{{ testplace/powerpc-apple-darwin8/lib }}} to avoid 'no such directory' errors from the bootstrap script and a hard link {{{ testplace/powerpc-apple-darwin8/include }}} pointing to /usr/include, for otherwise, after a time of compilation, I got complains that c standard headers like 'errno.h' and 'time.h' were missing. I am not sure whether the link points to the correct location. Maybe it should point to a location inside the '/opt' directory containing these headers? Finally, at the end of the build process for 'libgcc_s.1.dylib.tmp', the linker reports {{{ /usr/bin/ld: -syslibroot: multiply specified }}} and stops execution of the bootstrap script. Indeed one finds as arguments to the linker both {{{ -isysroot /Developer/SDKs/MacOSX10.4u.sdk (specified twice) and -isysroot/Developer/SDKs/MacOSX10.5.sdk }}} This seems to be a build or configure script or Makefile bug. Since I have no idea about the gcc build mechanism I even don't know where to look for it. All the actions above are assembled in the script {{{ build_gcc1.xc }}} and its output in the text files {{{ configure1Log.txt bootstrap1Log.txt }}} (attached to this report). -- Ticket URL: <https://trac.macports.org/ticket/48178#comment:8> MacPorts <https://www.macports.org/> Ports system for OS X