我包括靜態庫,「libChild.a」到第二個靜態庫,「libParent.a」頭一個靜態庫靜態庫,然後鏈接兩個孩子家長到我的主要應用,但是獲得在孩子中定義的父符號中的「未定義參考」。我使用netbeans 7.0創建兩個靜態庫,然後將.a文件複製到/ usr/lib並將頭文件複製到/ usr/include。我使用netbeans項目屬性將這兩個庫添加到主項目。包括在NetBeans
有趣的是,小孩圖書館直接在主項目代碼單獨使用,而這些引用編譯就好了。只有父級靜態庫內的子級用法會導致未定義的引用錯誤。
一個解決方案是使用「ar」工具合併靜態庫。不幸的是,這是不切實際的,因爲每個版本都有多個版本,並且必須分別對每個組合進行合併,一個變化是在任何一個版本進行的每一次合併..
那麼,爲什麼在NetBeans中生成做主代碼內的孩子符號引用正確的鏈接,但不是在靜態母庫的代碼?我如何得到這個工作?