CentOS下安装python-mysqldb出现的问题
CentOS下python-mysqldb安装过程居然耗费了3个小时,遇到诡异的问题就是python setup.py build 会出现一大堆乱码。看到网上有朋友
CentOS下python-mysqldb安装过程居然耗费了3个小时,遇到诡异的问题就是python setup.py build 会出现一大堆乱码。看到网上有朋友也遇到同样的问题,,贴出来分享一下,希望能节约大家的时间。
_mysql.c: At top level:
_mysql.c:647: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c: In function ????_mysql_ConnectionObject_clear????:
_mysql.c:679: error: ????_mysql_ConnectionObject???? has no member named ????converter????
_mysql.c:680: error: ????_mysql_ConnectionObject???? has no member named ????converter????
_mysql.c:680: error: ????NULL???? undeclared (first use in this function)
_mysql.c:680: warning: statement with no effect
_mysql.c: At top level:
_mysql.c:687: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:715: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:731: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:749: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:768: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:794: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:816: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:848: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:874: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:901: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:916: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:933: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:949: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:967: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1002: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1033: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1035: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1065: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1095: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1129: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1161: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1197: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1221: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1246: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1271: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1310: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1349: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1354: error: expected declaration specifiers or ????...???? before ????PyObject????
_mysql.c:1357: error: expected declaration specifiers or ????...???? before ????_PYFUNC????
_mysql.c: In function ????_mysql__fetch_row????:
_mysql.c:1363: error: ????PyObject???? undeclared (first use in this function)
_mysql.c:1363: error: ????v???? undeclared (first use in this function)
_mysql.c:1363: error: invalid operands to binary *
_mysql.c:1363: warning: statement with no effect
_mysql.c:1364: error: ????_mysql_ResultObject???? has no member named ????use????
_mysql.c:1365: error: ????_mysql_ResultObject???? has no member named ????result????
_mysql.c:1365: warning: passing argument 1 of ????mysql_fetch_row???? from incompatible pointer type
_mysql.c:1367: error: ????Py_BEGIN_ALLOW_THREADS???? undeclared (first use in this function)
_mysql.c:1367: warning: statement with no effect
_mysql.c:1368: error: ????_mysql_ResultObject???? has no member named ????result????
_mysql.c:1368: warning: passing argument 1 of ????mysql_fetch_row???? from incompatible pointer type
_mysql.c:1369: error: ????Py_END_ALLOW_THREADS???? undeclared (first use in this function)
_mysql.c:1369: warning: statement with no effect
_mysql.c:1371: error: ????_mysql_ResultObject???? has no member named ????conn????
_mysql.c:1371: error: ????_mysql_ConnectionObject???? has no member named ????connection????
_mysql.c:1371: warning: passing argument 1 of ????mysql_errno???? from incompatible pointer type
_mysql.c:1372: error: ????_mysql_ResultObject???? has no member named ????conn????
_mysql.c:1376: warning: implicit declaration of function ????_PyTuple_Resize????
_mysql.c:1376: error: ????r???? undeclared (first use in this function)
_mysql.c:1379: warning: implicit declaration of function ????convert_row????
_mysql.c:1379: warning: statement with no effect
_mysql.c: At top level:
_mysql.c:1397: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1476: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1504: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1526: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1566: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1595: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1610: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1625: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1640: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1656: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1691: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1709: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1732: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1749: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1765: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1794: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1817: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1847: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1869: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1896: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1917: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1958: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:1978: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c: In function ????_mysql_ConnectionObject_dealloc????:
_mysql.c:2012: error: ????PyObject???? undeclared (first use in this function)
_mysql.c:2012: error: ????o???? undeclared (first use in this function)
_mysql.c:2012: error: invalid operands to binary *
_mysql.c:2012: warning: statement with no effect
_mysql.c:2015: error: ????_mysql_ConnectionObject???? has no member named ????open????
_mysql.c:2016: warning: implicit declaration of function ????_mysql_ConnectionObject_close????
_mysql.c:2016: error: ????NULL???? undeclared (first use in this function)
_mysql.c:2016: warning: statement with no effect
_mysql.c:2019: warning: implicit declaration of function ????PyMem_Free????
_mysql.c: At top level:
_mysql.c:2022: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:2039: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:2054: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:2076: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c: In function ????_mysql_ResultObject_dealloc????:
_mysql.c:2098: error: ????_mysql_ResultObject???? has no member named ????result????
_mysql.c:2098: warning: passing argument 1 of ????mysql_free_result???? from incompatible pointer type
_mysql.c: At top level:
_mysql.c:2103: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:2113: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????_mysql_ConnectionObject_methods????
_mysql.c:2328: error: array type has incomplete element type
_mysql.c:2329: error: ????T_INT???? undeclared here (not in a function)
_mysql.c:2329: warning: implicit declaration of function ????offsetof????
_mysql.c:2329: error: expected expression before ????_mysql_ConnectionObject????
_mysql.c:2329: error: ????RO???? undeclared here (not in a function)
_mysql.c:2336: error: ????T_OBJECT???? undeclared here (not in a function)
_mysql.c:2336: error: expected expression before ????_mysql_ConnectionObject????
_mysql.c:2343: error: ????T_UINT???? undeclared here (not in a function)
_mysql.c:2343: error: expected expression before ????_mysql_ConnectionObject????
_mysql.c:2350: error: expected expression before ????_mysql_ConnectionObject????
_mysql.c:2357: error: expected expression before ????_mysql_ConnectionObject????
_mysql.c:2364: error: ????NULL???? undeclared here (not in a function)
_mysql.c:2367: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????_mysql_ResultObject_methods????
_mysql.c:2419: error: array type has incomplete element type
_mysql.c:2420: error: expected expression before ????_mysql_ResultObject????
_mysql.c:2430: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:2458: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:2488: error: expected declaration specifiers or ????...???? before ????PyObject????
_mysql.c: In function ????_mysql_ConnectionObject_setattr????:
_mysql.c:2490: error: ????v???? undeclared (first use in this function)
_mysql.c:2491: warning: implicit declaration of function ????PyErr_SetString????
_mysql.c:2491: error: ????PyExc_AttributeError???? undeclared (first use in this function)
_mysql.c:2496: warning: implicit declaration of function ????PyMember_Set????
_mysql.c: At top level:
_mysql.c:2513: error: expected declaration specifiers or ????...???? before ????PyObject????
_mysql.c: In function ????_mysql_ResultObject_setattr????:
_mysql.c:2515: error: ????v???? undeclared (first use in this function)
_mysql.c:2516: error: ????PyExc_AttributeError???? undeclared (first use in this function)
_mysql.c: At top level:
_mysql.c:2534: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????_mysql_ConnectionObject_Type????
_mysql.c:2618: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????_mysql_ResultObject_Type????
_mysql.c:2704: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????_mysql_methods????
_mysql.c:2776: error: expected ????=????, ????,????, ????;????, ????asm???? or ????__attribute__???? before ????*???? token
_mysql.c:2808: warning: return type defaults to ????int????
_mysql.c: In function ????DL_EXPORT????:
_mysql.c:2808: error: expected declaration specifiers before ????init_mysql????
_mysql.c:2886: error: expected ????{???? at end of input
error: command 'gcc' failed with exit status 1
看的头都大了。
解决办法是:
yum install python-devel mysql-devel zlib-devel openssl-devel
然后再build、install

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Backup and Recovery Policy of GitLab under CentOS System In order to ensure data security and recoverability, GitLab on CentOS provides a variety of backup methods. This article will introduce several common backup methods, configuration parameters and recovery processes in detail to help you establish a complete GitLab backup and recovery strategy. 1. Manual backup Use the gitlab-rakegitlab:backup:create command to execute manual backup. This command backs up key information such as GitLab repository, database, users, user groups, keys, and permissions. The default backup file is stored in the /var/opt/gitlab/backups directory. You can modify /etc/gitlab

Improve HDFS performance on CentOS: A comprehensive optimization guide to optimize HDFS (Hadoop distributed file system) on CentOS requires comprehensive consideration of hardware, system configuration and network settings. This article provides a series of optimization strategies to help you improve HDFS performance. 1. Hardware upgrade and selection resource expansion: Increase the CPU, memory and storage capacity of the server as much as possible. High-performance hardware: adopts high-performance network cards and switches to improve network throughput. 2. System configuration fine-tuning kernel parameter adjustment: Modify /etc/sysctl.conf file to optimize kernel parameters such as TCP connection number, file handle number and memory management. For example, adjust TCP connection status and buffer size

The CentOS shutdown command is shutdown, and the syntax is shutdown [Options] Time [Information]. Options include: -h Stop the system immediately; -P Turn off the power after shutdown; -r restart; -t Waiting time. Times can be specified as immediate (now), minutes ( minutes), or a specific time (hh:mm). Added information can be displayed in system messages.

Common problems and solutions for Hadoop Distributed File System (HDFS) configuration under CentOS When building a HadoopHDFS cluster on CentOS, some common misconfigurations may lead to performance degradation, data loss and even the cluster cannot start. This article summarizes these common problems and their solutions to help you avoid these pitfalls and ensure the stability and efficient operation of your HDFS cluster. Rack-aware configuration error: Problem: Rack-aware information is not configured correctly, resulting in uneven distribution of data block replicas and increasing network load. Solution: Double check the rack-aware configuration in the hdfs-site.xml file and use hdfsdfsadmin-printTopo

The key to installing MySQL elegantly is to add the official MySQL repository. The specific steps are as follows: Download the MySQL official GPG key to prevent phishing attacks. Add MySQL repository file: rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm Update yum repository cache: yum update installation MySQL: yum install mysql-server startup MySQL service: systemctl start mysqld set up booting

CentOS will be shut down in 2024 because its upstream distribution, RHEL 8, has been shut down. This shutdown will affect the CentOS 8 system, preventing it from continuing to receive updates. Users should plan for migration, and recommended options include CentOS Stream, AlmaLinux, and Rocky Linux to keep the system safe and stable.

Building a Hadoop Distributed File System (HDFS) on a CentOS system requires multiple steps. This article provides a brief configuration guide. 1. Prepare to install JDK in the early stage: Install JavaDevelopmentKit (JDK) on all nodes, and the version must be compatible with Hadoop. The installation package can be downloaded from the Oracle official website. Environment variable configuration: Edit /etc/profile file, set Java and Hadoop environment variables, so that the system can find the installation path of JDK and Hadoop. 2. Security configuration: SSH password-free login to generate SSH key: Use the ssh-keygen command on each node

Installing MySQL on CentOS involves the following steps: Adding the appropriate MySQL yum source. Execute the yum install mysql-server command to install the MySQL server. Use the mysql_secure_installation command to make security settings, such as setting the root user password. Customize the MySQL configuration file as needed. Tune MySQL parameters and optimize databases for performance.
