Hello, here is the issue im dealing with.
Im on a windows on arm device (surface pro x) running the x86 version of nim using a native built arm64 clang_cl compiler and lld-link linker. Im cross compiling with nim and running the native arm64 clang-cl to compile the c code. I cannot get the automatic linker call to use the correct option for output of the exe which should be /out: . None of the options I can find to pass to nim seem to be able to change this. Passing something to the linker via --passL:option just appends it to the end of the linker call.
I can run this in 2 steps and everything works fine
nimble --cpu:arm64 --os:windows --cc:clang_cl --noLinking build lld-link /out:test.exe file1.c.obj file2.c.obj
but Id like to see if I can pass something to nim or nimble to change what its using as the output option currently when i use clang_cl it uses /Fe or -o when using clang
Here is a sample of what nim is automatically calling, notice the /Fe option for the output file
lld-link: error: could not open /FeC:Usersjefftsourcerepostesttest.exe: invalid argument Error: execution of an external program failed: 'c:toolsllvm-packagebinlld-link.exe /FeC:Usersjefftsourcerepostesttest.exe
any ideas?
J
got it figured out
nimble --passL:-fuse-ld=lld-link run