c++ - 将链接器参数添加到 gradle
问题描述
我正在尝试使用 gradle 在 Linux 上编译和链接应用程序。编译部分工作正常,但是当它链接时,它会得到未定义的项目,因为链接器不包含库。我尝试了多种方法来添加它(见下文),但它们都不起作用。你知道我需要做什么来为喜欢的人包含库吗?
plugins {
// Apply the cpp-application plugin to add support for building C++ executables
id 'cpp-application'
}
model {
binaries {
all {
linker.args "-lQt5Widgets -lQt5Gui -lQt5Core -lGL -lpthread"
}
}
}
// Set the target operating system and architecture for this application
application {
privateHeaders {
from('src/headers')
from('/usr/include/qt5')
from('/usr/include/qt5/QtCore')
from('/usr/include/qt5/QtGui')
from('/usr/include/qt5/QtWidgets')
}
source.from file('src/cpp')
println source
binaries.configureEach {
compileTask.get().compilerArgs.add('-O2')
compileTask.get().compilerArgs.add('-fPIC')
compileTask.get().compilerArgs.add('-std=gnu++11')
println compileTask.get()
//linker.args '-lQt5Widgets -lQt5Gui -lQt5Core -lGL -lpthread'
//println createTask.get()
//println LinkExecutable.getLinkerArgs()
//linkerTask.get().linkerArgs.add('-lQt5Widget')
//linkerTask.get().linkerArgs.add('-lQt5Gui')
//linkerTask.get().linkerArgs.add('-lGl')
//linkerTask.get().linkerArgs.add('-lpthread')
}
}
解决方案
推荐阅读
- ios - 解码从前端 IOS 应用程序获取的访问令牌以使用 Okta 和 Node JS 获取用户信息
- sql - Convert date column to new UTC date column
- ios - Access to the coordinates from an address swift
- python - python从请求中获取url
- c# - 在调用 Start 之前向 ServiceStack 的 ServerEventsClient 注册 displayName
- c# - UWP 中 ComboBox 的 CompositeCollection 的真正替代品?
- html - 存储在 spiffs 上的 chart.js 不起作用(图表未出现在网页上)
- templates - Helm 模板变量为零
- ios - 屏幕转换期间的 UINavigationItem backBarButtonItem 问题
- javascript - console.log 和查询字符串中的值不同