compile boost with -fPIC

第一步: $ ./bootstrap.sh  --with-libraries=[list]  

list是你要编译的库

比如 你只想编译libboost_thread , ./bootstrap.sh  --with-libraries=thread


第二步:$ ./bjam cflags='-fPIC' cxxflags='-fPIC'

Performing C SOURCE FILE Test HAVE_NOT_C_BUG_LOOP_VECTORIZE failed with the following compile output: Change Dir: /media/zhang/qtcpp/mysql-boost-8.0.16/mysql-8.0.16/bud/CMakeFiles/CMakeTmp Run Build Command:"/usr/bin/make" "cmTC_d4c88/fast" /usr/bin/make -f CMakeFiles/cmTC_d4c88.dir/build.make CMakeFiles/cmTC_d4c88.dir/build make[1]: 进入目录“/media/zhang/qtcpp/mysql-boost-8.0.16/mysql-8.0.16/bud/CMakeFiles/CMakeTmp” Building C object CMakeFiles/cmTC_d4c88.dir/src.c.o /usr/bin/aarch64-linux-gnu-gcc -O2 -fno-tree-loop-vectorize -DHAVE_NOT_C_BUG_LOOP_VECTORIZE -O3 -fPIC -o CMakeFiles/cmTC_d4c88.dir/src.c.o -c /media/zhang/qtcpp/mysql-boost-8.0.16/mysql-8.0.16/bud/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_d4c88 /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_d4c88.dir/link.txt --verbose=1 /usr/bin/aarch64-linux-gnu-gcc -O2 -fno-tree-loop-vectorize -DHAVE_NOT_C_BUG_LOOP_VECTORIZE -O3 -fPIC CMakeFiles/cmTC_d4c88.dir/src.c.o -o cmTC_d4c88 make[1]: 离开目录“/media/zhang/qtcpp/mysql-boost-8.0.16/mysql-8.0.16/bud/CMakeFiles/CMakeTmp” ...and run output: /media/zhang/qtcpp/mysql-boost-8.0.16/mysql-8.0.16/bud/CMakeFiles/CMakeTmp/cmTC_d4c88: 1: /media/zhang/qtcpp/mysql-boost-8.0.16/mysql-8.0.16/bud/CMakeFiles/CMakeTmp/cmTC_d4c88: ELF�,@p@8: not found /media/zhang/qtcpp/mysql-boost-8.0.16/mysql-8.0.16/bud/CMakeFiles/CMakeTmp/cmTC_d4c88: 3: /media/zhang/qtcpp/mysql-boost-8.0.16/mysql-8.0.16/bud/CMakeFiles/CMakeTmp/cmTC_d4c88: Syntax error: word unexpected (expecting ")") Return value: 2 Source file was: inline void g(unsigned size, unsigned x[], unsigned y[]) { unsigned i; for (i = 0; i < size; i++) { x[i] |= y[i]; } for (i = 0; i < size; i++) { y[i] = 0; } } struct A { long a; // Make struct A 8 byte aligned int b; // Make x[] not 8 byte aligned unsigned x[6]; unsigned y[6]; }; void f(struct A* a) { g(6, a->x, a->y); } int main() { struct A a; f(&a); return 0; } Performing C SOURCE FILE Test HAVE_NOT_C_BUG_LOOP_VECTORIZE_WORKAROUND failed with the following compile output: Change Dir: /media/zhang/qtcpp/mysql-boost-8.0.16/mysql-8.0.16/bud/CMakeFiles/CMakeTmp Run Build Command:"/usr/bin/make" "cmTC_3e9cd/fast" /usr/bin/make -f CMakeFiles/cmTC_3e9cd.dir/build.make CMakeFiles/cmTC_3e9cd.dir/build make[1]: 进入目录“/media/zhang/qtcpp/mysql-boost-8.0.16/mysql-8.0.16/bud/CMakeFiles/CMakeTmp” Building C object CMakeFiles/cmTC_3e9cd.dir/src.c.o /usr/bin/aarch64-linux-gnu-gcc -O2 -fno-tree-loop-vectorize -DHAVE_NOT_C_BUG_LOOP_VECTORIZE_WORKAROUND -O3 -fPIC -fvect-cost-model=cheap -fno-tree-loop-distribute-patterns -fno-tree-loop-vectorize -o CMakeFiles/cmTC_3e9cd.dir/src.c.o -c /media/zhang/qtcpp/mysql-boost-8.0.16/mysql-8.0.16/bud/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_3e9cd /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_3e9cd.dir/link.txt --verbose=1 /usr/bin/aarch64-linux-gnu-gcc -O2 -fno-tree-loop-vectorize -DHAVE_NOT_C_BUG_LOOP_VECTORIZE_WORKAROUND -O3 -fPIC -fvect-cost-model=cheap -fno-tree-loop-distribute-patterns -fno-tree-loop-vectorize CMakeFiles/cmTC_3e9cd.dir/src.c.o -o cmTC_3e9cd make[1]: 离开目录“/media/zhang/qtcpp/mysql-boost-8.0.16/mysql-8.0.16/bud/CMakeFiles/CMakeTmp” ...and run output: /media/zhang/qtcpp/mysql-boost-8.0.16/mysql-8.0.16/bud/CMakeFiles/CMakeTmp/cmTC_3e9cd: 1: /media/zhang/qtcpp/mysql-boost-8.0.16/mysql-8.0.16/bud/CMakeFiles/CMakeTmp/cmTC_3e9cd: Syntax error: "(" unexpected Return value: 2 Source file was: inline void g(unsigned size, unsigned x[], unsigned y[]) { unsigned i; for (i = 0; i < size; i++) { x[i] |= y[i]; } for (i = 0; i < size; i++) { y[i] = 0; } } struct A { long a; // Make struct A 8 byte aligned int b; // Make x[] not 8 byte aligned unsigned x[6]; unsigned y[6]; }; void f(struct A* a) { g(6, a->x, a->y); } int main() { struct A a; f(&a); return 0; }
最新发布
11-13
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值