2010-11-21 68 views
0

我擅長Python編程。我試圖用我自己的c程序來擴展python。 我有一些教程,但我的操作系統是相當跛腳。它說,如何在c中擴展python?

python.h沒有找到

在還我試過的OpenGL編程。 我不得不面對類似的錯誤

GL/gl.h沒有找到

我覺得我沒有GL dev-library在我的Linux。但我敢肯定python.h在我的硬盤上,因爲我已經在適當的目錄中找到了它。

我使用PCLinux OS 2010 Dell Vostro 1510 with Intel 1.8GHz Q2duo
2Gb ram
gcc4.4.1

我不能在Windows上使用痛飲,因爲我無法在其上安裝GCC。 Swig不會在我當前的操作系統上運行。如果我自己編寫代碼,它會顯示這種錯誤。 (我敢肯定,代碼的完整性,因爲它是一個例子文件)

請告訴我的程序編譯.so文件在我目前的OS擴展Python
OR
請告訴我哪OS效果最好對於這種有點編程的東西。

告訴我,如何將所有功能安裝到Windows中進行此項工作。

有沒有一個IDE可以幫助我解決這個問題。

請幫幫我。很長一段時間,我一直在撓頭,試圖做到這一點。 我厭倦了理想化的教程,它假設理想的功能計算機在哪裏工作。謝謝

我不是專家程序員。但我做了一些非常有趣的事情。我學習turbo的編程c++.gcc對我來說並不新鮮。請考慮我的新手問題。

+0

GCC(MinGW)和SWIG都可以在Windows上運行。 – Kos 2010-11-21 13:59:31

+0

@Kos,他沒有使用Windows,而是使用PCLinux OS 2010. – 2010-11-21 14:02:40

+0

他明確表示他無法在Windows上安裝gcc。 – Kos 2010-11-21 14:35:13

回答

6

至於編譯PCLinux的東西去,似乎你確實缺少頭文件。

你需要通過包管理器進行安裝:

sudo apt-get install python-devel 
sudo apt-get install libnvidia-xorg1-devel 

這將安裝蟒蛇頭,OpenGL的頭。

只要讓東西在Windows上運行,你需要設置一個posix環境(cygwin或mingw)以便能夠在那裏使用gcc,關於這個主題的更多信息可以在這裏找到問題:
What is the difference between Cygwin and MinGW?

更新
我讀了一些關於PCLinuxOS的,這似乎是很糟糕的,這意味着它缺少從倉庫的東西很多。

我給你的建議是使用Ubuntu發展,因爲:

  1. Ubuntu的用戶羣比PCLinux的一個大很多
  2. 這裏
  3. 很多人都積極開發在Ubuntu
  4. Ubuntu的倉庫有更好的維護和幾乎沒有人不能通過apt
  5. 因此讓您的python c擴展運行在那裏將有微不足道
  6. 最後但並非最不重要的以後的問題將得到應有的上述事實,有更多的答案,如果你有問題與Ubuntu本身甚至還有一個stackexchange site

使用一個良好的發展環境,爲您節省了不少時間和頭痛。

更新2在Ubuntu上安裝

sudo apt-get install python-dev 
sudo apt-get install libgl1-mesa-dev 
sudo apt-get install libglu1-mesa-dev 
sudo apt-get install libglew1.5-dev 

這將安裝python頭,OpenGL的頭,OpenGL實用頭和OpenGL擴展報頭。

+0

Thanx的建議很多。 – 2010-11-21 14:47:56

+0

我會嘗試安裝Ubuntu今晚。 – 2010-11-21 14:48:16

+0

另一件需要注意的事項是大寫 - 我認爲頭文件名爲Python.h,而不是python.h。 – 2010-11-22 19:20:38

1

根據我的經驗,您需要在您的系統上安裝Python開發庫,然後通過編寫C代碼然後使用Python解釋器編譯該C代碼來擴展Python。例如參見文章How to extend Python