2011-10-25 39 views
10

我想爲C++庫編寫Perl綁定,以便可以使用Perl庫。我將如何開始這樣做?我以前爲CPAN編寫過純Perl模塊。如何開始爲C++庫編寫Perl綁定?

+1

[Swig ++](http://www.swig.org/Doc1.3/SWIGPlus.html)浮現在腦海 – sehe

+1

上次我試了一下,Swig生成了這樣可怕的代碼,我永遠留下了傷痕。 – tsee

回答

6

SWIG那裏有XS。我使用XS作爲Net::Sharktools這是我第一次編寫任何XS代碼。我指出它是因爲它是一個特別微不足道的情況,並且可能是瞭解涉及什麼的好方法。

perldoc perlxs也包含關於C++特定方面的部分。

+1

確保在XS中處理C++時檢查xsubpp的-hiertype選項。 – tsee

6

由於很多原因,綁定C++庫是一個非常複雜的C庫。不在最後,因爲標準工具鏈是相當以C爲中心的。 XSpp比普通XS更強大,雖然它有一個額外的學習曲線。

我很樂意爲此推薦我自己的libperl++,但它仍然處於alpha階段。

+1

Leon說了些什麼。對於XS ++(XSpp),YAPC在比薩的幻燈片可能很有用:http://steffen-mueller.net/talks/xspp/ XS ++示例按複雜程度排列:Math :: ThinPlateSpline,Math :: Clipper,Wx – tsee

+0

哦,我忘記提及'SOOT'爲例。但這太奇怪了,任何人從中學習都不得不多一點瘋狂。 :) – tsee