Ubuntu12.04 自安装python3.3中头文件Python.h路径:usr/local/python3.3/include/python3.3m

Ubuntu12.04 自带的Python2.7中头文件Python.h路径:usr/                      include/python2.7

Ubuntu12.04 自安装python3.3解释器Python路径:usr/local/python3.3/bin

Ubuntu12.04 自带的Python2.7解释器Python路径:usr/                      bin

但默认解释器是python2.7,所以无论在哪个目录下输入python都是python2.7(可能是在安装python3.3时建立了连接关系)

现在将python2.7备份:sudo cp /usr/bin/python ./pythonback

删除原python:sudo rm usr/bin/python

建立新连接 sudo ln -s /usr/local/python3.3/bin/python3.3 /usr/bin/python

之后输入python默认的就是python3.3解释器了,如果想使用python2.7可以在/usr/bin目录下使用pythonback

如果不想更改默认连接,则可以在/usr/local/python3.3/bin目录下使用python3.3

在ubuntu12.04上:

spi源文件名:spi.c   测试文件名:spi_test.py

编译2.7版spi.c:

gcc -fpic -c -I/usr/local/python3.3/include/python3.3m spi.c =>spi.o(用Python3.3的头文件python.h)

gcc -shared -o spi.so spi.o =>spi.so(产生共享库spi.so文件)

python spi_test.py

编译3.3版spi.c

gcc -fpic -c -I/usr/include/python2.7 spi.c

gcc -shared -o spi.so spi.o

pythonback spi_test.py

在raspberry上:

nano使用:

sudo nano /etc/hosts

完成后按ctrl+x退出,按y保存,回车,OK

raspberry找不到spidev0.0和spidev0.1的解决办法:

修改系统配置

  1. $ sudo nano /etc/modprobe.d/raspi-blacklist.conf

都注释掉,修改为:

  1. # blacklist spi and i2c by default (many users don't need them)
  2. #blacklist spi-bcm2708
  3. #blacklist i2c-bcm2708

修改加载模块

  1. $ sudo nano /etc/modules

改为:

  1. snd-bcm2835
  2. i2c-dev
  3. spidev

主要是增加 spidev
重启之后,/dev/中会多出两个设备 spidev0.0 与 spidev0.1, 没有出现的话请google排错。

具体参见:http://www.shumeipai.net/forum.php?mod=viewthread&action=printable&tid=19410

编译python2.7代码:

raspberry的python.h路径:/usr/include/python2.7

raspberry的python2.7解释器路径:/usr/bin    python2.7

pi@raspberrypi:~/Documents/python_spi/python_spi_2$ gcc -fpic -c -I/usr/include/python2.7 spi.c
pi@raspberrypi:~/Documents/python_spi/python_spi_2$ gcc -shared -o spi.so -I/usr/include/python2.7 spi.o
pi@raspberrypi:~/Documents/python_spi/python_spi_2$ python spi_test.py

#raspberry的python3.2解释器路径:

#pi@raspberrypi:/usr/bin$ python3.2mu

#Python.h文件路径:/usr/lib/pypy-upstream/include/

python3.3的python.h文件路径:/usr/local/Python-3.3..2/include/python3.3m/

python3.3解释器python3.3文件路径:/usr/local/Python-3.3..2/bin

将/usr/local/Python-3.3..2/bin添加到PATH路径后,在该路径下即可使用python3.3解释器

pi@raspberrypi:/usr/local/Python-3.3..2/bin$ python3.3

编译:

pi@raspberrypi:~/Documents/python_spi/python_spi_3$ gcc -fpic -c -I/usr/local/Python-3.3..2/include/python3.3m spi.c

pi@raspberrypi:~/Documents/python_spi/python_spi_3$ gcc -shared -o spi.so -I/usr/local/Python-3.3..2/include/python3.3m spi.o

pi@raspberrypi:~/Documents/python_spi/python_spi_3$ /usr/local/Python-3.3..2/bin/python3.3 spi_test.py

ubuntu和raspberry下调试python_spi备忘的更多相关文章

  1. ubuntu下串口编程备忘

    弄了一下串口,一个小问题多折腾了下,备忘.软件环境:zl@zhanglong:~$ cat /etc/lsb-release DISTRIB_ID=UbuntuDISTRIB_RELEASE=12.0 ...

  2. tomcat远程调试参数备忘

    tomcat远程调试,启动时添加参数: -server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,ser ...

  3. (转)利用libcurl和国内著名的两个物联网云端通讯的例程, ubuntu和openwrt下调试成功(四)

    1. libcurl 的参考文档如下 CURLOPT_HEADERFUNCTION Pass a pointer to a function that matches the following pr ...

  4. Asp.Net调试方法备忘

    由于种种原因导致vs不能启用Web服务器调试.可用如下方法来执行调试. 1.在vs中选择 调试>启动不调试(ctr+f5), 2.设置你需调试的相关断点,然后选择 调试>进程.选择Aspn ...

  5. Ubuntu 14.04 忘记用户密码(备忘)

    参考文章地址:www.linuxidc.com/Linux/2013-11/92236.htm 重启电脑 开机就会进入一个Grub引导页面,选择 "Ubuntu 高级选项"之后,按 ...

  6. linux下常用命令备忘

    转自:Linux 命令集锦 linux下查看监听端口对应的进程 # lsof -i:9000 # lsof -Pnl +M -i4 如果退格键变成了:"^h". 终端连接unix删 ...

  7. Linux下Vim使用备忘

    1.Insert键,决定是Insert模式还是Replace模式. 2.Esc键,退出编辑模式(Insert Or Replace). 3.:wq (ZZ) 保存并退出Vim. http://caib ...

  8. WPF 用户控件的自定义依赖属性在 MVVM 模式下的使用备忘

    依赖属性相当于扩充了 WPF 标签的原有属性列表,并可以使用 WPF 的绑定功能,可谓是十分方便的:用户控件则相当于代码重用的一种方式:以上几点分开来还是比较好理解的,不过要用到MVVM 模式中,还是 ...

  9. sqlserver -- 学习笔记(一)自定义函数(学习总结,备忘)

    SQL Server自定义函数,以前只在书上看过,没有动手去敲一敲,今天刚好接触到,看了几篇博文学习了下.做好备忘很重要!! (@_@)Y Learn from:http://www.cnblogs. ...

随机推荐

  1. 设置eclipse中的${user}

    打开eclipse根目录找到eclipse.ini文件增加初始配置: -Duser.name=snzigod@hotmail.com 重启eclipse后${user}变量的值就变成了snzigod@ ...

  2. apple苹果产品国行和港行的区别

    [iPhone国行和港行的区别]国行:耳机只能用在苹果设备上,不能用其它设备.充电器不用转接,直接可以用,保修的时候如果换新了,重新计算一年保修期.国行是三网通用.港行:耳机可以用在任何设备上.充电器 ...

  3. debug环境下打印

    #ifdef DEBUG #    define NSLog(...) NSLog(__VA_ARGS__) #else #    define NSLog(...) {} #endif

  4. 解决debian 9 重启nameserver失效问题

    目录 解决debian 9 重启nameserver失效问题 安装resolvconf 编辑文件 测试 解决debian 9 重启nameserver失效问题 刚安装完debian9,用过之后会发现/ ...

  5. [POJ 1005] I Think I Need a Houseboat C++解题

        I Think I Need a Houseboat Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 81874   ...

  6. 理解依赖注入 for Zend framework 2

    依赖注入(Dependency Injection),也成为控制反转(Inversion of Control),一种设计模式,其目的是解除类之间的依赖关系. 假设我们需要举办一个Party,Part ...

  7. 大数据学习——kettle的简单使用

    1 生成随机数保存到本地文件 新建转换--输入--生成随机数--输出--文本文件输出--保存到本地文件 2 在线预览生成结果 3 字段选择 4 增加常量 5 生成多条数据 右键生成随机数--改变开始复 ...

  8. selenium - 常用浏览器操作方法

    常用浏览器操作 (1)初始化浏览器会话: from selenium import webdriver driver = webdriver.Chrome() (2)浏览器最大化操作: driver. ...

  9. 初学-BeautifulSoup爬取豆瓣页面

    # -*- coding: utf-8 -*-import osimport urllibimport urllib2from bs4 import BeautifulSoup headers = { ...

  10. day01_04.变量

    变量的命名规则 变量名由字母小写a-z,大写A-Z,_下划线,数字0-9组成,php的变量名区分大小写;python的变量名也是区分大小写的 注意: PHP变量名必须以美元$符号开始; 变量名开头可以 ...