不能使用 rpath 进行交叉编译

时间:2021-06-18 09:13:46

标签: c++ linux gcc cross-compiling rpath

继续this topic

首先,我是这个网站的新手,如果我犯了初学者的错误,请见谅:)

然后,我的主题一直在很多主题的首页,但我真的没有发现任何相似之处或主题很旧。

放在上下文中:

我有一台 Linux Debian Jessie ARMhf 平板电脑(gcc 版本 4.9.2)
我有一台 Linux Mint 19.1 Tessa x86_64 PC
我想从 PC 到平板电脑交叉编译文件
平板电脑通过 SSH 与 PC 连接(所以我无法在平板电脑上做“目标”)

问题描述:

我正在尝试编译一个依赖于共享 .so 库的 C++ 文件。

我想用 -Wl,-rapth,/path/to/lib 设置这些库的位置,但它似乎不起作用。

该错误必须与arm-linux-gnueaihf-g++编译器有关
事实上,当我使用基本的 pc 编译器时:

`$ g++ -o test test.cpp -Iinclude -Wl,-rpath,/path/to/my/lib -L/path/to/lib -lLib1name -lLib2name`

没有错误,但使用交叉编译器

`$ arm-linux-gnueabihf-g++ ...` 

它表示一个错误:

`$ /usr/local/lib/lLib1name.so file not recognized`

您已经可以看到它没有考虑 -rpath(因为路径不同)并且 arm-linux-gnueabihf 应该是错误的来源。

谢谢你帮助我:)

信息:
  • 问题 8
  • 从 18/06/2021 开始
  • 关闭时间 --
  • 查看problems here的历史

0 个答案:

没有答案