[問題] 動態函式庫存在,程式卻找不到
開發平台(Platform): (Ex: Win10, Linux, ...)
Debian GNU/Linux Jessie
編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
g++ 4.9.2
go 1.7.3
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
None
問題(Question):
我在練習將 Golang 轉出的 shared library 和 C++ 程式結合
程式已經寫好了,也轉成 shared library (.so)
編譯時也沒跳錯誤訊息,編譯指令如下:
$ g++ -o main main.cpp -L. -ldoubler
但是執行時,程式卻說找不到 shared library,訊息如下:
libdoubler.so: cannot open shared object file: No such file or directory
蠻詭異的,那個 .so 檔就在同一個資料夾中 Orz
我另外把這個程式包成 Ruby gem,給 Ruby 程式呼叫,可正確執行
我也在 Mac 上用同樣的 main.cpp,也可正確執行
這個蠻難 google 的,因為會找到一大堆沒裝 xxx library 之類的討論串 = =...
餵入的資料(Input):
None
預期的正確結果(Expected Output):
錯誤結果(Wrong Output):
./main: error while loading shared libraries:
libdoubler.so: cannot open shared object file: No such file or directory
程式碼(Code):(請善用置底文網頁, 記得排版)
# main.cpp
#include <iostream>
#include "libdoubler.h"
using std::cout;
using std::endl;
int main() {
cout << DoubleFloat(1.2) << endl;
}
補充說明(Supplement):
PTT 惠我良多
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 175.180.170.133
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1477306869.A.45D.html
推
10/24 19:04, , 1F
10/24 19:04, 1F
→
10/24 19:04, , 2F
10/24 19:04, 2F
→
10/24 19:05, , 3F
10/24 19:05, 3F
這招有效。不過可以簡要說明一下原理嗎?感恩
※ 編輯: Neisseria (175.180.170.133), 10/24/2016 19:08:40
推
10/24 20:05, , 4F
10/24 20:05, 4F
→
10/24 20:05, , 5F
10/24 20:05, 5F
→
10/24 20:19, , 6F
10/24 20:19, 6F
→
10/24 20:19, , 7F
10/24 20:19, 7F
→
10/24 20:20, , 8F
10/24 20:20, 8F
→
10/24 20:21, , 9F
10/24 20:21, 9F
→
10/24 20:22, , 10F
10/24 20:22, 10F
→
10/24 20:23, , 11F
10/24 20:23, 11F
推
10/24 21:45, , 12F
10/24 21:45, 12F
推
10/25 01:00, , 13F
10/25 01:00, 13F
→
10/25 01:00, , 14F
10/25 01:00, 14F
→
10/25 01:02, , 15F
10/25 01:02, 15F
→
10/25 01:03, , 16F
10/25 01:03, 16F
→
10/25 01:03, , 17F
10/25 01:03, 17F
→
10/25 01:05, , 18F
10/25 01:05, 18F
→
10/25 01:05, , 19F
10/25 01:05, 19F
→
10/25 01:06, , 20F
10/25 01:06, 20F
→
10/25 01:06, , 21F
10/25 01:06, 21F
推
10/25 15:23, , 22F
10/25 15:23, 22F
→
10/25 15:23, , 23F
10/25 15:23, 23F
→
10/25 15:41, , 24F
10/25 15:41, 24F
→
10/25 15:41, , 25F
10/25 15:41, 25F
→
10/25 15:42, , 26F
10/25 15:42, 26F
※ 編輯: Neisseria (112.104.128.230), 12/24/2018 06:37:13