itop4412 python,boost,libxml2移植

python移植

host:

./configure
make python Parser/pgen
mv python hostpython
mv Parser/pgen Parser/hostpgen
make distclean

optional:

echo ac_cv_file__dev_ptmx=yes > config.site
echo ac_cv_file__dev_ptc=yes >> config.site
export CONFIG_SITE=config.site

configure arm:

CC=arm-linux-gnueabihf-gcc CXX=arm-linux-gnueabihf-g++ AR=arm-linux-gnueabihf-ar RANLIB=arm-linux-gnueabihf-ranlib
./configure --host=arm-linux --build=x86_64-linux-gnu --prefix=/home/jason/lib/arm-python --disable-ipv6 --enable-shared

build:

chmod 777 ./setup.py
make HOSTPYTHON=./hostpython HOSTPGEN=./Parser/hostpgen BLDSHARED="arm-linux-gnueabihf-gcc -shared" CROSS_COMPILE=arm-linux-gnueabihf- CROSS_COMPILE_TARGET=yes HOSTARCH=arm-linux BUILDARCH=x86_64-linux-gnu
make install HOSTPYTHON=./hostpython BLDSHARED="arm-linux-gnueabihf-gcc -shared" CROSS_COMPILE=arm-linux-gnueabihf- CROSS_COMPILE_TARGET=yes prefix=/home/jason/lib/arm-python

Note

  • 编译好的目录可由其他库引用,具体如下:
  • include paths: ~/lib/arm-python/include
  • library paths: ~/lib/arm-python/lib

boost_python移植

  • 备份宿主机的/usr/include/python2.7文件夹
  • 将移植好的arm-python中的头文件拷贝到/usr/include/python2.7
  • ./bootstrap.sh
  • 修改生成的project-config.jam文件,具体可以参照

修改:(共五处)

  • using gcc : arm : arm-none-linux-gnueabi-gcc ;
  • option.set prefix :(交叉编译器所在位置);
  • option.set exec-prefix :(交叉编译器所在位置)/bin ;
  • option.set libdir :(交叉编译器所在位置)/lib ;
  • option.set includedir :(交叉编译器所在位置)/include ;
  • ./bjam stage
  • 还原宿主机的python2.7头文件夹
  • 编译好的目录可由其他库引用,具体如下:
  • include paths: ~/lib/boost/boost
  • library paths: ~/lib/boost/stage/lib

libxml2移植

  1. mkdir build
  2. ./configure CC=/usr/bin/arm-linux-gnueabihf-gcc --host=arm-linux --prefix=/home/jason/lib/libxml2/build/ --with-python=/home/jason/lib/libxml2/python
    CFLAGS="-I/home/jason/lib/arm-python/include/python2.7/" LDFLAGS="-L/home/jason/lib/arm-python/lib"
  3. make -j8
  4. make install
  • 编译好的目录可由其他库引用,具体如下:
  • include paths: ~/lib/libxml2/build/include
  • library paths: ~/lib/libxml2/build/lib
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容