<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/87979>87979</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
Arise“relocation truncated to fit: R_RISCV_JAL against `.L13090'” when I cross-compile LLVM for RISC-V on X86
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
dinyy
</td>
</tr>
</table>
<pre>
This is my cmake command:
` cmake ../llvm -G Ninja -DCMAKE_BUILD_TYPE=Debug \
-DLLVM_HOST_TRIPLE=riscv64-unknown-linux-gnu \
-DCMAKE_CROSSCOMPILING=True \
-DCMAKE_SYSTEM_NAME=Linux \
-DLLVM_DEFAULT_TARGET_TRIPLE=riscv64-unknown-linux-gnu \
-DCMAKE_TOOLCHAIN_FILE=/home/sole/work/qemu_rvv/llvm-project-main/ToolchainExample.cmake \
-DLLVM_TARGET_ARCH=riscv64 \
-DLLVM_TARGETS_TO_BUILD=RISCV \
-DLLVM_ENABLE_PROJECTS='clang;lld' \
-DLLVM_OCAML_INSTALL_PATH=/home/sole/work/qemu_rvv/opt/llvm-0/ocaml-llvm \
-DCMAKE_INSTALL_PREFIX=/home/sole/work/qemu_rvv/opt/llvm-0/llvm \
-DLLVM_TABLEGEN=/home/sole/work/qemu_rvv/llvm-project-main/build-host/bin/llvm-tblgen \
-DCLANG_TABLEGEN=/home/sole/work/qemu_rvv/llvm-project-main/build-host/bin/clang-tblgen \
-DLLVM_BUILD_LLVM_DYLIB=On \
-DLLVM_LINK_LLVM_DYLIB=On \
-DLLVM_INSTALL_TOOLCHAIN_ONLY=On \
-DHAVE_STEADY_CLOCK=0 \
-DHAVE_PTHREAD_AFFINITY=0 \
-DHAVE_POSIX_REGEX=0 \`
And my `ToolchainExample.cmake` shows blow:
`
SET(CMAKE_C_COMPILER riscv64-unknown-linux-gnu-gcc)
SET(CMAKE_CXX_COMPILER riscv64-unknown-linux-gnu-g++)
SET(CMAKE_C_FLAGS "-march=rv64gcv -mcmodel=medany")
SET(CMAKE_CXX_FLAGS "-march=rv64gcv -mcmodel=medany")
set(VALGRIND_INCLUDE_DIR /home/sole/work/qemu_rvv/riscv-sysroot/usr/local/include)
include_directories(${VALGRIND_INCLUDE_DIR})
SET(LLVM_ENABLE_LIBPFM 0)
SET(LLVM_ENABLE_LIBEDIT OFF)
SET(LIBXML2_INCLUDE_DIR /home/sole/work/qemu_rvv/riscv-sysroot/usr/include)
include_directories(${LIBXML2_INCLUDE_DIR})
SET(HISDEIT_INCLUDE_DIR /home/sole/work/qemu_rvv/riscv-sysroot/usr/include)
include_directories(${HISDEIT_INCLUDE_DIR})
SET(LibEdit_INCLUDE_DIRS /home/sole/work/qemu_rvv/riscv-sysroot/usr/include)
SET(LibEdit_LIBRARIES /home/sole/work/qemu_rvv/riscv-sysroot/usr/lib/riscv64-linux-gnu)
SET(CMAKE_FIND_ROOT_PATH /home/sole/work/qemu_rvv/riscv-sysroot)
SET(CMAKE_LIBRARY_PATH /home/sole/work/qemu_rvv/riscv-sysroot/usr/lib/riscv64-linux-gnu)
SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
`
And the error log when I building is that:
`FAILED: lib/libclang-cpp.so.19.0git
: && /home/sole/opt/riscv/gcc/bin/riscv64-unknown-linux-gnu-g++ -fPIC -march=rv64gcv -mcmodel=medany - ...
.....
/home/sole/work/qemu_rvv/llvm-project-main/clang/lib/CodeGen/CGBuiltin.cpp:21038:(.text+0x13606a): relocation truncated to fit: R_RISCV_JAL against `.L13090'
collect2: error: ld returned 1 exit status
[442/486] Linking CXX static library lib/libclangSerialization.a
ninja: build stopped: subcommand failed.
`
I hava add "-mcmodel=medany" in flag, but it not working.
If my method is wrong,I want to know how to do?
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzEV1tzozgW_jXyyykoLGyMH_yAuThMYzuF6ZTzRGGQbU0LyQsiTvbXbwlIp9shMz2Z2d2qVMzlO_fvnCOyuqYnTsgCTZdo6o2yRp5FtSgof3kZHUTxskjOtAZaQ_kCeZl9I5CLssx4gfwALV00d5DhIcNBltG_13WEA8aeStBWsKH89ww0z107X_x0-TWMvDR5vPeR6Xnk0JwATd1OAQCA5kXRwzq92-6SNInD-0jhKlrnT9ZEa_g3Lq5cY5Q3z9qJN7eynQ033u527nZ9H0bhZoVML6kaMgzdPe4Sf51unLWyEym9g_54fuB8jZI0ceKV_3nPku02cu-ccJMGYSuPcHAWJUE4qAVTP1dRfUM4-Bcpm7R6eurzqF0q8TvJpVZmlCMcJEKw_JxR7j9n5YURvcv7kOe9x07s3r35-wfIXZpsuyoh04vDnfswCPY3zjLy0_t4-5vvJrs2lFnOMn5C5pKxAuHZoNzWddZRGm52iRNF6b2T3P1aFsRFvubCULd5VjKtpdhgor8biP0g3H_KxJDyPk_LyF_5m8-X79BQVmhnUSuDh_ZRC5MHdiL8XUSRs1n9d6y2BfvAbBtr165dCzxG4RKZ3nYYGYWbL78EfC3NWy9sN9HjIP7OefDTXeI73mPqRlv3CzI9YxB0n9zFvuOlThCEmzB5_Bi43YX7NPZX_v47xjI6mMMLNeOQZQz3lxpw9VlcazgwcX0__fqLH_7v_ARhu59KaTeS_BgAPpwb2inPEZ4PiO_3bwr-QBzhZfs3pCINIme1A4SxVmZVflYD4cmanPIn0Mq8FAVhyPRKUmT8BWGM8ByGHfnLen5MSk0kwvaDE63icOOl4caNvnp-6oUx_AKz29C1-qWuhFBEbupK8V3kGUM4oDxnTUG-W-zv04JWJJeioqRG2EZ4gmbLIQ_QzLvxtgv9x5kXhcv7YA3GTY5vIL4XJrANgmF14XK_jvA_E_tfiXnA8Ech34U7zw-T_72PA4Y_LAs9-AWVP0J3_5yTP9uIwmXsxKH_Nwwwenh9Z03emvYmtPctFyiWxttt0i5M-IQDA7nrVHdRPXaK_8-Bpeut1x4pVrGzho3_4MeDc2xIqo8D2l3yq0I9bX4W-mkdyDMBUlWiAiZOcD0TDiG0i5TykzoTy3Mm32-CwAkj30OmA11mGD10qza_XPRa6OO5bpyo7PGmAwhbCFvvC9CdSdrEIhy0u6Ff3X-6AkA73ocu_PmEBg10Xe980fXvl588ZXRnwFdKuKIgK6Keu6tlQ5mkXM8vF2Q6eGyYNjIdhG1dkmeJ8NJ4HpuWYWWqFKYDFVFTXVLBQVYNzzNJCpACjlSq13Hank7T35wIslNGeS3V6tajsWnMDYRnXRi5YIzkEiuRtpJtVQqoiGwqTgoYA3mmEmqZyabuQ58uJxOMcDCxLTT1IKL8m6q3u9-3OJqrulZZ9XJT3x2paMbov1uv9azTxtUHkLLa8gZqKS4XUqgHdXPoP6XgmFFGCv2GgiGcs6cMsqLolu373QqUw5FlJ4RdODQSqAQuJKhaUX7q9YVHda4piTyLQpH2Wgl-6llruyFcMy5VZhWT4Cyu6roQyAxGxcIs5uY8G5HFeDbG05k5mdqj88Ii2BzP5jaZzCbWfEYm-cyc2badW4VhT8hsRBfYwBNjYthjY2pMbd22iqM9L-bW8YDx_HBEE4OUGWW6IpEuqtOI1nVDFvZsPpuPWHYgrG4_STHm5ArtS3WWmHqjatES79CcajQxGK1l_aZFUsnIwqloTZCPkW2gufu3mdQr8l4nQF6JutZyUV4oI6A2PxxFBUqN9gCCw962Rk3FFmcpL3XL8kD1L5Xn5qDnouyb56aH1A5ScdYIB20e_hMAAP__7jGuzw">