Building i386 D runtime on OS X

teverett tom at khubla.com
Sat Sep 24 23:05:28 UTC 2022


Hello, I am following the instructions here:

https://wiki.dlang.org/Building_LDC_runtime_libraries

I'm on OSX and need a ELF D RTL for i386.

I've used HomeBrew to install x86_64-elf-gcc, ninja and cmake.  
The command I'm issuing is:

`CC=/usr/local/Cellar/x86_64-elf-gcc/12.2.0/bin/x86_64-elf-gcc 
ldc-build-runtime --ninja --dFlags="-mtriple=i386-none-elf"
`

I'm getting the below result. Is there a known way to get past 
the `search_paths` issue? Or perhaps a better way to build the 
i386 elf RT on OS X?


     > 
CC=/usr/local/Cellar/x86_64-elf-gcc/12.2.0/bin/x86_64-elf-gcc 
ldc-build-runtime --ninja --dFlags="-mtriple=i386-none-elf"
     .: Creating build directory: ldc-build-runtime.tmp
     .: Downloading LDC source archive: 
https://github.com/ldc-developers/ldc/releases/download/v1.30.0/ldc-1.30.0-src.zip
     .: Invoking: cmake 
-DLDC_EXE_FULL=/usr/local/Cellar/ldc/1.30.0_1/bin/ldc2 
-DDMDFE_MINOR_VERSION=100 -DDMDFE_PATCH_VERSION=1 
-DD_EXTRA_FLAGS=-mtriple=i386-none-elf -G Ninja 
/Users/tom/projects/ados/src/ldc-build-runtime.tmp/ldc-src/runtime
     -- The C compiler identification is GNU 12.2.0
     -- Checking whether C compiler has -isysroot
     -- Checking whether C compiler has -isysroot - yes
     -- Checking whether C compiler supports OSX deployment target 
flag
     -- Checking whether C compiler supports OSX deployment target 
flag - no
     -- Detecting C compiler ABI info
     -- Detecting C compiler ABI info - failed
     -- Check for working C compiler: 
/usr/local/Cellar/x86_64-elf-gcc/12.2.0/bin/x86_64-elf-gcc
     -- Check for working C compiler: 
/usr/local/Cellar/x86_64-elf-gcc/12.2.0/bin/x86_64-elf-gcc - 
broken
     CMake Error at 
/usr/local/Cellar/cmake/3.24.2/share/cmake/Modules/CMakeTestCCompiler.cmake:69 (message):
       The C compiler

         
"/usr/local/Cellar/x86_64-elf-gcc/12.2.0/bin/x86_64-elf-gcc"

       is not able to compile a simple test program.

       It fails with the following output:

         Change Dir: 
/Users/tom/projects/ados/src/ldc-build-runtime.tmp/CMakeFiles/CMakeTmp

         Run Build Command(s):/usr/local/bin/ninja cmTC_75803 && 
[1/2] Building C object 
CMakeFiles/cmTC_75803.dir/testCCompiler.c.o
         [2/2] Linking C executable cmTC_75803
         FAILED: cmTC_75803
         : && 
/usr/local/Cellar/x86_64-elf-gcc/12.2.0/bin/x86_64-elf-gcc 
-isysroot 
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names -L/usr/local/opt/libpq/lib CMakeFiles/cmTC_75803.dir/testCCompiler.c.o -o cmTC_75803   && :
         /usr/local/opt/x86_64-elf-binutils/bin/x86_64-elf-ld: 
Error: unable to disambiguate: -search_paths_first (did you mean 
--search_paths_first ?)
         collect2: error: ld returned 1 exit status
         ninja: build stopped: subcommand failed.





       CMake will not be able to correctly generate this project.
     Call Stack (most recent call first):
       CMakeLists.txt:1 (project)


-- Configuring incomplete, errors occurred!
See also 
"/Users/tom/projects/ados/src/ldc-build-runtime.tmp/CMakeFiles/CMakeOutput.log".
See also 
"/Users/tom/projects/ados/src/ldc-build-runtime.tmp/CMakeFiles/CMakeError.log".
.: Error: command failed with status 1




More information about the D.gnu mailing list