1

我正在尝试使用 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')
    }
}
4

0 回答 0