Bor*_*zza 5 c++ qt qmake jenkins
我正在尝试从 Linux 进行构建,因为我决定开始使用 Jenkins,这是我的个人作品,但是,即使安装了 freetype:v.2.6.3,它也无法识别这个 ft2build.h。
这是加载了 freetype 的 QT Pro。我现在在 UBuntu 16.04 上运行:
linux {
message("Build for Linux")
DEFINES += LINUX
DEFINES += BOOST_LOG_DYN_LINK
LIBS += -lGLU
LIBS += -lfreetype
LIBS += -L/usr/lib/x86_64-linux-gnu/-libboost_timer.so -libboost_log.so -libboost_log_setup.so -libboost_system.so -libboost_thread.so -libboost_filesystem.so
}
Run Code Online (Sandbox Code Playgroud)
所以我尝试手动更改 lib 指针:
LIBS *= -L/usr/local/lib/ -lfreetype
Run Code Online (Sandbox Code Playgroud)
但仍然没有任何进展。我得到的错误来自 lGLU
In file included from displays/display.cpp:3:0:
displays/./../oglft/oglft.h:50:22: fatal error: ft2build.h: No such file or directory
compilation terminated.
Makefile:1093: recipe for target 'display.o' failed
Run Code Online (Sandbox Code Playgroud)
我总是运行 'qmake make clean' 然后 /usr/lib/x86_64-linux-gnu/qt5/bin/qmake && make && make 检查以确保它正常启动。有人可以帮我解决这个错误吗?
我通过执行以下操作检查了 freetype lib 的位置:
pkg-config --cflags --libs freetype2
Run Code Online (Sandbox Code Playgroud)
这就是我得到的
-I/usr/local/include/freetype2 -L/usr/local/lib -lfreetype
Run Code Online (Sandbox Code Playgroud)
问题解决了!
我也必须在环境变量中将 FREETYPE 设置为 BOOST,现在一切正常!这是我的情况:
export BOOST=/var/lib/jenkins/workspace/boost_1_59_0
export FREETYPE=/var/lib/jenkins/workspace/freetype-2.6.3
Run Code Online (Sandbox Code Playgroud)
我更喜欢将这两个库移到 Jenkins 下以避免权限问题。
;-)
| 归档时间: |
|
| 查看次数: |
14686 次 |
| 最近记录: |