成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

為setup.py添加c/c++ 頭文件或者庫的搜索路徑

shleyZ / 2738人閱讀

摘要:背景通過源碼安裝第三方庫時(shí),經(jīng)常會出現(xiàn)該庫依賴的頭文件庫找不到的情況,特別是自己編譯安裝的庫時(shí)。

背景

通過源碼安裝python第三方庫時(shí),經(jīng)常會出現(xiàn)該庫依賴的c/c++頭文件、庫找不到的情況,特別是自己編譯安裝的c/c++庫時(shí)。比如leveldb,mysql等等。我今天安裝leveldb的python庫時(shí),就遇到了這個(gè)情況。

解決:

通過setup.py的錯(cuò)誤,定位到出錯(cuò)的setup.py代碼行,如下:

    ext_modules = [
        Extension(
            "plyvel._plyvel",
            sources=["plyvel/_plyvel.cpp", "plyvel/comparator.cpp"],
            libraries=["leveldb"],
            extra_compile_args=["-Wall", "-g"]
        )   
    ]

通過上網(wǎng)查詢,得知,setup.py的ext_modules參數(shù)的詳細(xì)解釋,所以,只用在Extension中加上兩個(gè)參數(shù),加完后:

    ext_modules = [
        Extension(
            "plyvel._plyvel",
            sources=["plyvel/_plyvel.cpp", "plyvel/comparator.cpp"],
            libraries=["leveldb"],
            extra_compile_args=["-Wall", "-g"],
            include_dirs = ["/Users/simon/Downloads/leveldb-1.15.0/include"],
            library_dirs = ["/Users/simon/Downloads/leveldb-1.15.0"]
        )   
    ]

include_dirs指定了搜索的頭文件路徑,library_dirs指定了搜索的動態(tài)庫或者靜態(tài)庫的路徑

后記

以前經(jīng)常遇到,現(xiàn)在解決了,留個(gè)學(xué)習(xí)筆記,方便自己以后查看

setup.py參數(shù)詳解:http://blog.csdn.net/yiliumu/article/details/30841377

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/45351.html

相關(guān)文章

  • C++開發(fā)python windows版本的擴(kuò)展模塊示例

    摘要:主要是庫文件頭文件文件不一致的問題。定義模塊函數(shù)其中函數(shù)參數(shù)是模塊自身,是傳遞的參數(shù)列表,返回值定義了一個(gè)整形數(shù),這里會申請空間增加引用計(jì)數(shù),交由來管理這個(gè)引用。 C++開發(fā)python windows版本的擴(kuò)展模塊示例測試環(huán)境介紹和準(zhǔn)備測試環(huán)境:操作系統(tǒng):windows10Python版本:3.7.0VS版本:vs2015社區(qū)版(免費(fèi))相關(guān)工具下載:VS版本vs2015社區(qū)版(免費(fèi))...

    junfeng777 評論0 收藏0
  • C++開發(fā)python windows版本的擴(kuò)展模塊示例

    摘要:主要是庫文件頭文件文件不一致的問題。定義模塊函數(shù)其中函數(shù)參數(shù)是模塊自身,是傳遞的參數(shù)列表,返回值定義了一個(gè)整形數(shù),這里會申請空間增加引用計(jì)數(shù),交由來管理這個(gè)引用。 C++開發(fā)python windows版本的擴(kuò)展模塊示例測試環(huán)境介紹和準(zhǔn)備測試環(huán)境:操作系統(tǒng):windows10Python版本:3.7.0VS版本:vs2015社區(qū)版(免費(fèi))相關(guān)工具下載:VS版本vs2015社區(qū)版(免費(fèi))...

    Meathill 評論0 收藏0
  • Python的C/C++擴(kuò)展——用SWIG封裝C++Python模塊

    摘要:所以,最大的好處就是將腳本語言的開發(fā)效率和的運(yùn)行效率有機(jī)的結(jié)合起來。前面的文章提到一個(gè)實(shí)現(xiàn)的雙數(shù)組的實(shí)現(xiàn),它在中文分詞新詞發(fā)現(xiàn)等算法中的應(yīng)用。本文以的封裝實(shí)現(xiàn)來說明的使用。編譯生成動態(tài)庫編譯生成的使用的,可以參考的編寫。 如果覺得文章對你有幫助,你也可以訪問老猿的個(gè)人博客https://www.yuanrenxue.com/ Python調(diào)用C/C++代碼的利器除了boost_pyt...

    鄒強(qiáng) 評論0 收藏0
  • 使用C/C++編寫Python模塊擴(kuò)展

    摘要:起步由于在底層運(yùn)算中會對每個(gè)運(yùn)算做類型檢查這就影響了運(yùn)行的性能,而利用擴(kuò)展可以避免這樣的情況獲得優(yōu)越的執(zhí)行性能,利用提供的,如宏,類型,函數(shù)等來編寫擴(kuò)展。測試更多關(guān)于模塊擴(kuò)展內(nèi)容 起步 由于python在底層運(yùn)算中會對每個(gè)運(yùn)算做類型檢查, 這就影響了運(yùn)行的性能,而利用擴(kuò)展, 可以避免這樣的情況, 獲得優(yōu)越的執(zhí)行性能,利用Python提供的C API,如宏,類型,函數(shù)等來編寫擴(kuò)展。 前期...

    Aklman 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<