Open
Description
Issue Description
Hi.
I’m building OpenWrt for the IPQ807x platform and encountered a build failure in the qca-ssdk-shell package. The build error appears related to relocations that are invalid in shared objects unless compiled with -fPIC.
Error Log (Excerpt)
/home/<user>/openwrt-ipq/staging_dir/toolchain-aarch64_cortex-a53_gcc-13.3.0_musl/bin/aarch64-openwrt-linux-musl-ar: creating /home/<user>/openwrt-ipq/build_dir/target-aarch64_cortex-a53_musl/linux-qualcommax_ipq807x/qca-ssdk-shell-12.5.2024.05.06~83c1a4a/build/bin/libssdk_us_um.a
/home/<user>/openwrt-ipq/staging_dir/toolchain-aarch64_cortex-a53_gcc-13.3.0_musl/lib/gcc/aarch64-openwrt-linux-musl/13.3.0/../../../../aarch64-openwrt-linux-musl/bin/ld: /home/<user>/openwrt-ipq/build_dir/target-aarch64_cortex-a53_musl/linux-qualcommax_ipq807x/qca-ssdk-shell-12.5.2024.05.06~83c1a4a/build/linux/USLIB/sd.o: relocation R_AARCH64_ADR_PREL_PG_HI21 against symbol `ssdk_mdio_set' which may bind externally can not be used when making a shared object; recompile with -fPIC
/home/<user>/openwrt-ipq/build_dir/target-aarch64_cortex-a53_musl/linux-qualcommax_ipq807x/qca-ssdk-shell-12.5.2024.05.06~83c1a4a/build/linux/USLIB/sd.o: in function `sd_reg_mdio_set':
sd.c:(.text.sd_reg_mdio_set+0x0): dangerous relocation: unsupported relocation
/home/<user>/openwrt-ipq/staging_dir/toolchain-aarch64_cortex-a53_gcc-13.3.0_musl/lib/gcc/aarch64-openwrt-linux-musl/13.3.0/../../../../aarch64-openwrt-linux-musl/bin/ld: /home/<user>/openwrt-ipq/build_dir/target-aarch64_cortex-a53_musl/linux-qualcommax_ipq807x/qca-ssdk-shell-12.5.2024.05.06~83c1a4a/build/linux/USLIB/sd.o: relocation R_AARCH64_ADR_PREL_PG_HI21 against symbol `ssdk_mdio_get' which may bind externally can not be used when making a shared object; recompile with -fPIC
/home/<user>/openwrt-ipq/build_dir/target-aarch64_cortex-a53_musl/linux-qualcommax_ipq807x/qca-ssdk-shell-12.5.2024.05.06~83c1a4a/build/linux/USLIB/sd.o: in function `sd_reg_mdio_get':
sd.c:(.text.sd_reg_mdio_get+0x0): dangerous relocation: unsupported relocation
...
collect2: error: ld returned 1 exit status
make[4]: *** [Makefile:26: uslib] Error 1
make[3]: *** [Makefile:54: /home/<user>/openwrt-ipq/build_dir/target-aarch64_cortex-a53_musl/linux-qualcommax_ipq807x/qca-ssdk-shell-12.5.2024.05.06~83c1a4a/.built] Error 2
make[2]: *** [package/Makefile:176: package/feeds/nss_packages/qca-ssdk-shell/compile] Error 1
make[1]: *** [package/Makefile:170: /home/<user>/openwrt-ipq/staging_dir/target-aarch64_cortex-a53_musl/stamp/.package_compile] Error 2
make: *** [/home/<user>/openwrt-ipq/include/toplevel.mk:233: world] Error 2
1. Which OpenWrt NSS fork are you using?
qosmio/openwrt-ipq
2. If you selected 'qosmio/openwrt-ipq', what branch are you building from?
24.10-nss
3. If you selected 'other', what is the full repository?
No response
4. What is the exact device you are building for?
DEVICE_linksys_mx4300
.config
CONFIG_TARGET_qualcommax=y
CONFIG_TARGET_qualcommax_ipq807x=y
CONFIG_TARGET_qualcommax_ipq807x_DEVICE_linksys_mx4300=y
CONFIG_TARGET_SUBTARGET="ipq807x"
CONFIG_TARGET_PROFILE="DEVICE_linksys_mx4300"
# CONFIG_FEED_nss_packages is not set
# CONFIG_NSS_FIRMWARE_VERSION_12_5 is not set
# CONFIG_NSS_FIRMWARE_VERSION_12_2 is not set
# CONFIG_NSS_FIRMWARE_VERSION_12_1 is not set
CONFIG_NSS_FIRMWARE_VERSION_11_4=y
CONFIG_PACKAGE_kmod-qca-nss-dp=y
CONFIG_PACKAGE_kmod-qca-nss-drv=y
CONFIG_NSS_MEM_PROFILE_HIGH=y
# CONFIG_NSS_MEM_PROFILE_MEDIUM is not set
# CONFIG_NSS_MEM_PROFILE_LOW is not set
CONFIG_PACKAGE_kmod-qca-nss-drv-bridge-mgr=y
CONFIG_PACKAGE_kmod-qca-nss-drv-gre=y
CONFIG_PACKAGE_kmod-qca-nss-drv-igs=y
CONFIG_PACKAGE_kmod-qca-nss-drv-lag-mgr=y
CONFIG_PACKAGE_kmod-qca-nss-drv-map-t=y
CONFIG_PACKAGE_kmod-qca-nss-drv-pppoe=y
CONFIG_PACKAGE_kmod-qca-nss-drv-pptp=y
CONFIG_PACKAGE_kmod-qca-nss-drv-qdisc=y
CONFIG_PACKAGE_kmod-qca-nss-drv-tun6rd=y
CONFIG_PACKAGE_kmod-qca-nss-drv-tunipip6=y
CONFIG_PACKAGE_kmod-qca-nss-drv-vlan-mgr=y
CONFIG_PACKAGE_kmod-qca-nss-drv-wifi-meshmgr=y
CONFIG_PACKAGE_kmod-qca-ssdk=y
CONFIG_PACKAGE_kmod-qca-mcs=y
CONFIG_PACKAGE_kmod-qca-nss-ecm=y
CONFIG_ATH11K_NSS_SUPPORT=y
CONFIG_ATH11K_NSS_MESH_SUPPORT=y
CONFIG_ATH11K_MEM_PROFILE_1G=y
# CONFIG_ATH11K_MEM_PROFILE_512M is not set
# CONFIG_ATH11K_MEM_PROFILE_256M is not set
CONFIG_PACKAGE_MAC80211_NSS_SUPPORT=y
# CONFIG_PACKAGE_MAC80211_NSS_REDIRECT is not set
CONFIG_IPQ_MEM_PROFILE_1024=y
# CONFIG_IPQ_MEM_PROFILE_512 is not set
# CONFIG_IPQ_MEM_PROFILE_256 is not set
CONFIG_KERNEL_IPQ_MEM_PROFILE=1024
Metadata
Metadata
Assignees
Labels
No labels