发生此错误后,如何安装aggdraw?

2024-10-03 11:14:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图安装aggdraw python库来创建高质量的图形,但我一直收到以下错误:

agg22/include/agg_array.h: In member function `agg::int8u*

解决方法是什么?如何安装?在


Tags: 方法in图形include错误functionarrayagg
2条回答

(是的,我正在回答我自己的问题)

在网上搜索了很多之后,我发现

export CFLAGS="-fpermissive"   

在用python setup.py build_ext -i构建扩展之前,似乎可以做到这一点。在

您应该按照http://www.pocketuniverse.ca/archive/2008/december/11/pil-and-aggdraw/中的说明来修补AGG,而不是让编译器允许编译64位不兼容的代码。在

有一种方法可以在shell中实现:

cd /tmp
svn co http://svn.effbot.org/public/tags/aggdraw-1.2a3-20060212
cd aggdraw-1.2a3-20060212
patch -p0 <<EOF
Index: agg2/include/agg_array.h
===================================================================
 - agg2/include/agg_array.h    (revision 532)
+++ agg2/include/agg_array.h    (working copy)
@@ -520,7 +520,7 @@
                 int8u* ptr = m_buf_ptr;
                 if(alignment > 1)
                 {
-                    unsigned align = (alignment - unsigned(ptr) % alignment) % alignment;
+                    unsigned align = (alignment - (unsigned long)(ptr) % alignment) % alignment;
                     size += align;
                     ptr += align;
                     if(size <= m_rest)
EOF

python setup.py build_ext -i
python selftest.py
sudo python setup.py install

相关问题 更多 >