假設(shè)我有一個(gè)共享庫libSomething.so和頭文件something.h。該庫是交叉編譯和測試的(或者更好的是,直接在目標(biāo)平臺(tái)上編譯,與示例應(yīng)用程序鏈接和測試)?,F(xiàn)在,我想在另一個(gè)大型項(xiàng)目中使用此共享庫,在該項(xiàng)目中Eclipse交叉編譯所有文件,然后將可執(zhí)行文件發(fā)送到目標(biāo)。(不幸的是,不可能直接在目標(biāo)上編譯該項(xiàng)目)。目的是在SDSoC *(基于Eclipse的Vivado程序)上使用相同的共享庫。去做這個(gè):右鍵單擊應(yīng)用程序->屬性-> C / C ++構(gòu)建->設(shè)置->工具設(shè)置-> SDS ++鏈接器->庫庫搜索路徑(-L)->添加->“路徑/到/庫”庫(-l)->添加->“ libSomething”(我也嘗試過“ libSomething.so”,但效果相同)??刂婆_(tái)顯示cannot find -llibSomething。完整的行是:/opt/Xilinx/SDK/2017.4/gnu/aarch32/lin/gcc-arm-linux-gnueabi/bin/../lib/gcc/arm-linux-gnueabihf/6.2.1/../../../../arm-linux-gnueabihf/bin/ld: cannot find -llibSomething另外,我嘗試在C / C ++常規(guī)->代碼分析->路徑和符號(hào)->庫和庫路徑中添加文件夾和庫。結(jié)果是一樣的。另外,我已經(jīng)遍歷了控制臺(tái)消息,并且驗(yàn)證了sds ++編譯器調(diào)用是正確的:sds++ -L/path/to/library --remote_ip_cache ......即使在Makefile中,該指令也是正確的。我不能面對(duì)這個(gè)問題。我究竟做錯(cuò)了什么?在帖子末尾,問題是:如何在SDSoC中使用(鏈接)共享庫?SDSoC是xilinx開發(fā)的程序。更多信息 在這里。我也曾在xilinx論壇上發(fā)布了類似的問題, 到目前為止還沒有答案。
添加回答
舉報(bào)
0/150
提交
取消