-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathreadme.txt
More file actions
99 lines (80 loc) · 3.1 KB
/
readme.txt
File metadata and controls
99 lines (80 loc) · 3.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
支持环境版本
[最后一个编译版本在最上面]
cmake ndk-10e
standalone ndk-10e
standalone vs 2013 64bit
cmake vs 2013 64bit
mingw w64
vs 2015 32bit
已知的版本问题
在vs1015 64bit上编译错误
libxml
leveldb
osgbullet
编译顺序
prebuild_ffmpeg (在 prebuild_osg 之前)
prebuild_opencv (依赖ffmpeg)
prebuild_boost
prebuild
prebuild_osg
prebuild_osgbullet
prebuild_osgearth
prebuild_vtk
prebuild_pcl
依赖库预编译[cmake]
windows-vc:
启动vcvarsall.bat
修改common.py中的cmake路径
运行python.exe prebuild.py vc
(文件自动安装到3rdparty目录)
windows-mingw:
启动msys.bat(需要安装win32版本的 cmake python2)
修改common.py中的cmake路径
运行python.exe prebuild.py mingw
(文件自动安装到3rdparty目录)
windows-ndk:
(安装NDK到任意目录)
启动msys
设置环境变量 export ANDROID_NDK=/d/android-ndk-r10d
修改common.py中的cmake路径
运行prebuild.py ndk
(生成的文件存放在ABI名称对应的目录中,但是因为标准库并不支持obj/loacl/ABI路径所以需要手工调整。)
依赖库预编译[非cmake]
boost(无法cmake编译)
vc版本:
修改common.py中的配置信息
打开vc控制台 运行prebuild_boost.py vc
ffmpeg+x264(无法cmake编译)
mingw-dll:
(widnows下只能用mingw编译dll方式 手工补充h和dll依赖)
(注意wrt版本 目前321版本是错误的 只能使用320-2)
(编译64bit版本 可安装mingw w64 然后修改fstab文件内的 /mingw挂载点 路径必须是/无空格)
编译安装yasm(32 64根据环境自动识别)
./configure
make install
编译安装x264 static版本 不知道为什么只要不是/usr/local/lib路径就提示找不到libx264
(32bit)
./configure --enable-static --enable-shared
make install
(64bit)
./configure --prefix=/mingw --enable-win32thread --host=x86_64-w64-mingw32 --enable-static --enable-shared
make install
python prebuild_ffmpeg vc
其他gcc编译器
直接静态编译安装(全自动)
android版本
mingw交叉编译(不确定是否必须是mingw32)
(因为只能使用ndk的toolchian编译,所以多个arch版本无法同时保留配置)
修改一下 common.py setup_ndk_standalone.sh 脚本中的 ndk路径 api版本 arch 编译器版本
运行一下命令行:
python make_ndk_standalone.py 在更换工具链的时候才需要重新执行(需要系统权限 因为tmp在c盘 有可能需要执行两次 因为目录存在关系的问题)
source setup_ndk_standalone.sh 设定编译需要的环境变量
python prebuild_ffmpeg.py ndk 执行编译 内涵x264编译
ndk-10e 之后的版本都无法通过
项目编译
因为针对安卓发布的程序只能有一个入口 所以项目是按发布程序拆分的
build.py vc test_cube(项目名称)
codework的cmake基本编译方式
1 启动vs命令行
2 set ANDROID_NDK=d:\NVPACK\android-ndk-r10e
3 "C:\Program Files (x86)\CMake\bin\cmake.exe" -DCMAKE_TOOLCHAIN_FILE=..\android.toolchain.cmake -G "Visual Studio 11 2012" ..