a级毛片免费全部播放-a级毛片免费观看在线播放-a级毛片免费观看网站-a级毛片免费看-国产成人精品在视频-国产成人精品在线

歡迎來到培訓無憂網!

全國切換

咨詢熱線 400-001-5729

位置:培訓無憂網 > 新聞資訊 > 電腦/IT > python培訓 >  python學習編譯方法介紹

python學習編譯方法介紹

來源:培訓無憂網 發布人:云朵

2022-03-08 10:31:17|已瀏覽:194次

python學習編譯方法介紹

      有時候,需要對python學習程序項目進行打包,即僅打包python文件編譯后的pyc文件,就需要對python文件進行編譯。那么python學習如何編譯呢?一起來了解下吧:

python學習如何編譯?
編譯方法有兩種:
1、寫一個python簡本,對所需編譯的文件進行編譯。(針對比較多的文件,推薦該方法)比如:
      import py_compile<br />
      py_compile.compile("test.py")
2、直接使用python命令(若使用腳本進行打包,而且文件少,可使用該方法)。例子如下:
      python -mpy_compile test.py
怎么編譯Python源代碼?
      通常在 Windows 下安裝軟件,只需要下載可執行文件,一直下一步就可以完成安裝。而 Linux 下,你可以獲取軟件的源代碼,自行編譯生成可執行文件進行安裝。用源代碼有什么好處呢?你可以根據自己的需要對軟件進行修改,甚至提前修補 已經發現但廠商沒有更新 的漏洞。這也就是開源的好處。
       源代碼就是用編程語言編寫好的程序,其實就是文本文件,可以通過文本編輯器進行編輯。而可執行文件是操作系統認識的二進制程序。要想將源代碼變成可執行文件,就需要對源代碼進行編譯。
      C語言的編譯程序就是gcc
      軟件的源代碼(文本文檔)+ 系統已有的函數庫,經過編譯器的編譯,生成可執行文件 函數庫是做什么的?如同 Python 會調用大量外部的模塊/庫幫助實現一些功能一樣,軟件也會用到系統的函數完成一些任務,所以需要在編譯時寫入,以便程序執行時調用。
      一個軟件往往不僅有一個源代碼文件,如果手動對每一個源文件進行編譯,太累了,好在有一個非常有用的工具make,可以自動完成編譯的過程。那么,make根據什么進行編譯呢?他會在當前目錄下搜索 Makefile/makefile 文件,這個文件中提供了所需的所有內容。但這個文件并不是生來就有、一成不變的。
      由于各種 Linux 系統內部環境不同,軟件開發者會編寫一個自動檢測環境是否符合要求,為每種環境生成特定 Makefile/makefile 文件的程序,就是configure。
      值得一提的是,當源代碼修改后重新編譯時,make 能夠識別變動的部分,進行增量更新。
      源代碼是純文本文件,如果軟件開發者直接提供這些純文本文件,會浪費開發者的帶寬,也使得用戶不易下載。
      所以,出現了 Tarball 文件,就是將軟件的所有源代碼先以 tar 打包,然后用壓縮技術壓縮,通常使用 gzip,所以一般擴展名是*.tar.gz或*.tgz。不過后來出現了壓縮效率更高的 bzip2,所以擴展名也會有*.tar.bz2之類。
Tarball 文件通常包含:
      ./configure --enable-framework=/Users/ronald/Library/Frameworks
      setup.py missing.append
      刪除安裝目錄 rm -rf /usr/local/bin/xxx
64位系統如何編譯Python?
      如果在64位系統下默認執行./configure編譯python會使用32位的動態庫,當安裝mod_wsgi或者mod_python時會出錯,這時候需要重新編譯python來解決此問題。
      下載python源碼。比如2.6.5或2.6.6。
解壓后configure:
      ./configure --prefix=/usr/local --with-threads --enable-shared --enable-universalsdk
       --prefix選項表示把目標編譯到/usr/local這個目錄中。
      a. 如果只用./configure命令,那默認會編譯出靜態的.a以及32位的動態庫。 b. 最后一個選項非常重要。如果這個選項不加,那只會編譯出32位的庫。
3. make &&make install
      這時執行python,很有可能會報一個錯:
      libpython2.6.so.1.0:
      cannotopen shared object file: No such file or directory
      這是因為編譯的libpython2.6.so.1.0是在/usr/local/python2.6/lib里面,可以做一個到/usr/lib64的軟鏈接,或者直接把它復制過去就行了。
或者也可以這樣:
      echo‘/usr/local/python2.6/lib’ > /etc/ld.so.conf.d/opt-python2.6.conf
接著執行
      ldconfig
最后可以通過以下命令驗證是否存在64位的libpython:
      ldconfig–p | grep python
      看有沒有類似“libpython2.6.so.1.0(libc6,x86-64) => /usr/local/python2.6/lib/libpython2.6.so.1.0”的輸出。

      注:尊重原創文章,轉載請注明出處和鏈接 http://m.dedgn.cn/news-id-24574.html 違者必究!部分文章來源于網絡由培訓無憂網編輯部人員整理發布,內容真實性請自行核實或聯系我們,了解更多相關資訊請關注python培訓頻道查看更多,了解相關專業課程信息您可在線咨詢也可免費申請試課。關注官方微信了解更多:150 3333 6050

留下你的信息,課程顧問老師會一對一幫助你規劃更適合你的專業課程!
  • 姓名:

  • 手機:

  • 地區:

  • 想學什么:

  • 培訓無憂網
免 費 申 請 試 聽
提交申請,《培訓無憂網》課程顧問老師會一對一幫助你規劃更適合你的專業課程!

主站蜘蛛池模板: 国产日韩精品一区二区在线观看 | 一区二区3区免费视频 | 欧美一区二区三区不卡免费 | 67194国产精品| 手机看片在线播放 | 国产在线小视频 | 永久免费观看午夜视频在线 | 欧美一级毛片高清毛片 | 国产一区二区三区久久 | 欧美午夜视频 | 特黄a大片免费视频 | 精品91| 一级片免费的 | 交视频在线观看国产网站 | 免费一级毛片在播放视频 | 欧美一级特黄aaaaaa在线看首页 | 日本视频免费在线播放 | 在线观看国产一区二三区 | 亚洲视频一区在线观看 | 一级a爰片久久毛片 | 亚洲精品成人一区二区 | 精品视频一区二区三三区四区 | 国产精品免费一级在线观看 | 成人的天堂 | 亚洲看片网站 | 91热国产 | 亚洲日本一区二区三区在线 | 视频在线亚洲 | 久草最新视频 | 男女一级 | 亚洲狠狠狠一区二区三区 | 国产三级香港在线观看 | 精品国产亚一区二区三区 | 日韩精品亚洲一级在线观看 | 日韩一级片网址 | 国产一级片观看 | 国产精品资源在线 | 久久成人免费大片 | 久久91精品国产一区二区 | 国内自拍偷拍视频 | 成人毛片在线视频 |