summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeronimo Pellegrini2024-09-21 18:46:36 +0000
committerPetr Štetiar2024-11-28 18:47:29 +0000
commit994a95584aeb7b5168306eaac6d62dcae4784106 (patch)
tree356fd7f7ea40caa38c51edbfa303cb89df2cf05c
parent4c22224bcc08c9bd18e6e9921280c73e2abcd7c3 (diff)
downloadopenwrt-994a95584aeb7b5168306eaac6d62dcae4784106.tar.gz
libreadlne: create symlinks for .so
Currently, libreadline only installs ``` /usr/lib/libhistory.so.8 -> libhistory.so.8.2 /usr/lib/libhistory.so.8.2 /usr/lib/libreadline.so.8 -> libreadline.so.8.2 /usr/lib/libreadline.so.8.2 ``` But there is no `libreadline.so` or `libhistory.so` available. So this happens: ``` root@OpenWRT:~# cat a.c int main() { } root@OpenWRT:~# gcc a.c -lreadline /usr/bin/ld: cannot find -lreadline: No such file or directory collect2: error: ld returned 1 exit status ``` Unless, of course, one uses `-l:libreadline.so.8`... But that doesn't help with binaries that try to dynamically open `libreadline.so`. I have one of those here (the STklos Scheme compiler -- I didn't make a PR for it because it's far from being ready, but one issue is that it does use dlopen to use readline...) With the symlink, it works: ``` root@OpenWRT:~# ln -s /usr/lib/libreadline.so.8 /usr/lib/libreadline.so root@OpenWRT:~# root@OpenWRT:~# gcc a.c -lreadline root@OpenWRT:~# ``` Another example: when trying to package rlwrap, the build failed complaining it could not find readline (using `-lreadline`). It would then be necessary to change rlwrap's `configure.ac` (and also in all packages that use readline), but it seems simpler to add the symlinks... This PR changes the Makefile so it will include the links. Signed-off-by: Jeronimo Pellegrini <j_p@aleph0.info> Link: https://github.com/openwrt/openwrt/pull/16445 Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> (cherry picked from commit 0000ba6ab8062f965d8fed240b76d36f9a493b55) Link: https://github.com/openwrt/openwrt/pull/17097 Signed-off-by: Petr Štetiar <ynezz@true.cz>
-rw-r--r--package/libs/readline/Makefile2
1 files changed, 1 insertions, 1 deletions
diff --git a/package/libs/readline/Makefile b/package/libs/readline/Makefile
index 11b9e0172f..03e56f36ed 100644
--- a/package/libs/readline/Makefile
+++ b/package/libs/readline/Makefile
@@ -69,7 +69,7 @@ endef
define Package/libreadline/install
$(INSTALL_DIR) $(1)/usr/lib
- $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{history,readline}.so.* $(1)/usr/lib/
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{history,readline}.so* $(1)/usr/lib/
endef
$(eval $(call HostBuild))