static-linking

我无法解决这个链接错误(在编译期间)
static-linking

我无法解决这个链接错误(在编译期间)

asus@asusLaptop:/home/linuxbrew/.linuxbrew/Cellar/chapel/1.33.0/libexec/examples$ chpl -L/usr/lib/x86_64-linux-gnu/libstdc++.so.6 hello3-datapar.chpl /usr/bin/ld:找不到 -lstdc++ clang-15:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)错误:制作二进制文件 - 链接 asus@asusLaptop:~$ ls /usr/lib32 | grep -i stdc++ li...

Admin

构建 Ubuntu 包时自定义--prefix 目录?
static-linking

构建 Ubuntu 包时自定义--prefix 目录?

我正在尝试在焦点窝中构建纳米包: sudo apt-get build-dep nano export CFLAGS=-static export LDFLAGS=-static export CPPFLAGS=-static export CFLAGS_APPEND=-static export LDFLAGS_APPEND=-static export CPPFLAGS_APPEND=-static export PREFIX=/Opt/nano apt-get source --build nano 基本上,我正在尝试使用自定义安装目录构建静态包,但...

Admin

如何编译 glibc(32 位和 64 位)?
static-linking

如何编译 glibc(32 位和 64 位)?

我有一个程序正在向多个 Linux 平台发布,并且需要在可执行文件本身内编译所有引用。 我了解到它们需要被编译,*.a 库放在项目内的文件夹中,为包含标题添加“-I//location//”,并为库本身添加“-L//location//”。 但是,就问题本身而言...... 如何编译 glibc(32 位和 64 位)? 通过开源研究,我找到了这个链接,并且克隆了该仓库,但我找不到有关如何实际编译它的任何文档。 git clone git://sourceware.org/git/glibc.git 嗯,更具体地说,我还没有找到有关使用哪些参数的任何信息。 ...

Admin

尝试使用 -lcurses 构建 32 位二进制文​​件时,安装 multilib 仍然无法解析 -ltinfo
static-linking

尝试使用 -lcurses 构建 32 位二进制文​​件时,安装 multilib 仍然无法解析 -ltinfo

尝试在 kubuntu 18.04 上构建 32 位应用程序。我已经可以使用 -m32 在 32 位模式下编译我的代码,并且能够构建一个简单的应用程序(一旦我安装了多库)。但现在我正尝试构建一个使用 -lcurses 的应用程序,而 ld 抱怨 -ltinfo 的 X86-64 版本不兼容(我假设它是“terminfo”库 - 并通过调用 curses 库来调用)。具体来说: /usr/bin/ld: skipping incompatible //usr/lib/x86_64-linux-gnu/libtinfo.so when searching fo...

Admin

gcc 静态链接尝试/失败找到 libgcc_s.a
static-linking

gcc 静态链接尝试/失败找到 libgcc_s.a

我的 C++ 应用程序在默认动态链接下运行良好,但是...我试图将所有库静态链接到应用程序,因为不幸的是用户似乎无法安装适当的库(或者更准确地说,他们的 ISP 不会在正在使用的服务器上安装)。所以我添加了 -static 作为链接选项。LD 尝试打开 libgcc_s.a 失败,这似乎是错误的。 如果我理解正确的话(如果我有错误,请纠正我!), LD 确实成功打开了 libgcc.a : libgcc_s 是 libgcc 的共享版本,因此是一个共享对象。 静态链接的可执行文件应该只使用 libgcc.a,而不是 libgcc_s,对吗? 除了 -st...

Admin

安装构建库
static-linking

安装构建库

我正在 Ubuntu 14.04 32 位上为 squeak 构建虚拟机。它无法调用库的入口点,无论这些库是静态链接的还是加载的。我一直在研究其他问题,发现了 4 个相关问题,但导出 LD_LIBRARY_PATH 和运行“sudo ldconfig”都无济于事: Ubuntu 在哪里寻找共享库? 为什么我的程序找不到“/usr/local/lib”中的库? OpenGL GLX 上下文未使用直接渲染,这可能会导致性能问题。(steam)AMD 驱动程序 Ubuntu 14.04“无法找到所需的 OpenGL 入口点‘glGetError’!” 我注意到...

Admin

如何通过 musl-gcc 在 Ubuntu 上静态编译 libcurl
static-linking

如何通过 musl-gcc 在 Ubuntu 上静态编译 libcurl

首先我要声明我不是编译专家。我正在尝试编译一些使用 libcurl(以及其他库)的 c 代码,并且我希望它尽可能跨 Linux 平台。我使用的是 Ubuntu 22.04.1 x86_x64 桌面版。我也尝试过使用 alpine docker,但结果同样失败。我将分享我在 Ubuntu 上尝试过的步骤: 首先,我更新了我的计算机:sudo apt-get update。然后我下载了 musl。我使用了sudo apt-get install musl-tools && sudo apt-get install musl-dev。克隆还需要其他...

Admin

与 lapack 链接的问题
static-linking

与 lapack 链接的问题

我在新的 ubuntu 机器上使用 lapack 时遇到问题(编辑:Ubuntu 20.04.5 LTS)。我安装liblapack-dev并libblas-dev使用了apt-get。我使用了以下代码,该代码在不同的机器上正常运行。 #include <stdlib.h> #include <stdio.h> /* DGESV prototype */ extern void dgesv( int* n, int* nrhs, double* a, int* lda, int* ipiv, doub...

Admin

libudev 的静态版本在哪里?
static-linking

libudev 的静态版本在哪里?

因为我希望我的二进制文件可以在较旧的发行版上运行,我决定构建一个静态链接的二进制文件。 我的应用程序取决于libhid-hidraw并通过此libudev。 我已经安装了开发包: sudo apt install libudev-dev libhidapi-dev 当我尝试链接时,出现此错误: cc -g -Wall -Wextra -static daemon/turboledzd.c -o daemon/turboledzd -lhidapi-hidraw -ludev /usr/bin/ld: cannot find -ludev collect2:...

Admin

Gcc 没有链接库
static-linking

Gcc 没有链接库

我正在尝试使用 gcc 在终端中编译一个程序。我对此还不太熟悉,所以我正在尝试链接各种库。但是有些可以工作,有些则不行,我想知道为什么,我该怎么做才能解决这个问题。这是我所拥有的屏幕截图(如果相关的话,其中还包括我的 gcc 版本)。 ...

Admin

./a.out 加载失败
static-linking

./a.out 加载失败

我正在尝试在 ubuntu 18.04 上通过 gcc 编译器执行 C 程序 在名为“gsl”的文件夹中,我提取了 gsl.tar 文件。这也是我保存在 gedit 中编写的所有“ ”.c 程序的文件夹。 当尝试通过终端执行以下操作时, gcc -Wall -I/Home/gsl/include -c sample.c 其次是 ./a.out 我收到以下错误:bash: ./a.out: No such file or directory 我很快意识到这是由于永久删除了名为a.outgsl 文件夹的文件(代表我)。 执行以下命令进行确认...

Admin

我如何获得 glibc 作为静态库?
static-linking

我如何获得 glibc 作为静态库?

我想编译一个程序并将其静态链接到 glibc,这样它就可以在其他 Linux 发行版上运行,而无需用户进行任何特殊配置。 我尝试使用CFLAGS="-static -static-libgcc",但它静态链接了所需的所有其他库,除了 glibc。我尝试在 apt 存储库中搜索 glibc 的静态版本,但找不到。 如何在 Ubuntu 18.04 上获取 glibc 的静态库版本? 更多信息: 该项目正在使用 autotools 我使用 Ubuntu 预装的默认 gcc 我设置 CFLAGS 为export CFLAGS="-static -stat...

Admin

是否可以在 18.04 x86_64 中从 apt 安装静态库?
static-linking

是否可以在 18.04 x86_64 中从 apt 安装静态库?

我正在尝试构建一个依赖于二进制分布式静态库的项目。 链接器抱怨它找不到ini_config函数,其中包括: config_params.c:(.text+0x16f): undefined reference to `ini_get_config_valueobj' 它找到了动态库,但没有找到静态版本: attempt to open /usr/lib/gcc/x86_64-linux-gnu/7/libini_config.a failed attempt to open /usr/lib/gcc/x86_64-linux-gnu/7/../....

Admin

/usr/lib/x86_64-linux-gnu/libpthread_nonshared.a(pthread_atfork.oS) 中的隐藏符号“pthread_atfork”被 DSO 引用
static-linking

/usr/lib/x86_64-linux-gnu/libpthread_nonshared.a(pthread_atfork.oS) 中的隐藏符号“pthread_atfork”被 DSO 引用

我正在尝试编译一个大型项目,其中包含一个库: SAMG/ifort64.9.1.041-emt64/lib/libguide.so 当我尝试创建项目时,出现一条错误消息: hidden symbol `pthread_atfork' in /usr/lib/x86_64-linux-gnu/libpthread_nonshared.a(pthread_atfork.oS) is referenced by DSO /usr/bin/ld: final link failed: Bad value 我尝试添加 -pthreads 以及 -lpthre...

Admin

什么是动态链接和静态链接?
static-linking

什么是动态链接和静态链接?

我听到过关于包装的“动态链接”和“静态链接”这两个术语,但我一直不清楚这些术语的实际含义。 什么是动态链接和静态链接? ...

Admin