Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/182.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
OpenGL ES-GLM库和Android Studio 我试图导入一个C++的开放GL框架,我为IOS应用程序编写到Android应用程序中。 我想使用Android NDK导入这个框架。 由于该框架将在iOS和Android之间共享,我将其放在jni文件夹之外。我在grade文件中指定了此框架的源目录的路径,如下所示():_Android_Android Studio_Opengl Es_Android Ndk_Glm Math - Fatal编程技术网

OpenGL ES-GLM库和Android Studio 我试图导入一个C++的开放GL框架,我为IOS应用程序编写到Android应用程序中。 我想使用Android NDK导入这个框架。 由于该框架将在iOS和Android之间共享,我将其放在jni文件夹之外。我在grade文件中指定了此框架的源目录的路径,如下所示():

OpenGL ES-GLM库和Android Studio 我试图导入一个C++的开放GL框架,我为IOS应用程序编写到Android应用程序中。 我想使用Android NDK导入这个框架。 由于该框架将在iOS和Android之间共享,我将其放在jni文件夹之外。我在grade文件中指定了此框架的源目录的路径,如下所示():,android,android-studio,opengl-es,android-ndk,glm-math,Android,Android Studio,Opengl Es,Android Ndk,Glm Math,在这个框架中,我使用GLM库进行数学运算,但正如您从上面的屏幕截图中再次看到的,当我尝试编译项目时,我收到了错误: /Users/chicio/Desktop/SpectralBRDFExplorer/SpectralBRDFExplorer/glm/detail/glm.cpp:4:10:致命错误:未找到“glm/glm.hpp”文件 我做错了什么?我自己找到了解决问题的办法。 如前所述,include目录的设置中存在问题。 我通过在Gealle文件中指定C++目录-I的包含目录来编译应用程序

在这个框架中,我使用GLM库进行数学运算,但正如您从上面的屏幕截图中再次看到的,当我尝试编译项目时,我收到了错误:

/Users/chicio/Desktop/SpectralBRDFExplorer/SpectralBRDFExplorer/glm/detail/glm.cpp:4:10:致命错误:未找到“glm/glm.hpp”文件


我做错了什么?

我自己找到了解决问题的办法。 如前所述,include目录的设置中存在问题。 我通过在Gealle文件中指定C++目录-I的包含目录来编译应用程序。 在这里您可以找到完整的gradle文件:

apply plugin: 'com.android.model.application'

model {
    android {
        compileSdkVersion 24
        buildToolsVersion "23.0.3"

        defaultConfig {
            applicationId "it.chicio.android.spectralbrdfexplorer"
            minSdkVersion.apiLevel 22
            targetSdkVersion.apiLevel 23
            versionCode 1
            versionName "1.0"
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles.add(file('proguard-android.txt'))
            }
        }
        ndk {
            moduleName "LibOpenGLJNI"
            toolchain = 'clang'
            stl         = 'gnustl_static'
            CFlags.addAll(['-Wall'])
            cppFlags.addAll(['-std=c++11','-Wall',
                             '-I' + file('src/main/jni'),
                             '-I' + file('../../SpectralBRDFExplorer'),
                             '-I' + file('../../SpectralBRDFExplorer/lodepng')])
            ldLibs.addAll(['android', 'log', 'GLESv3'])
        }
        sources {
            main {
                jni {
                    source {
                        srcDir "../../SpectralBRDFExplorer"
                    }
                }
            }
        }
        sources {
            main {
                assets {
                    source {
                        srcDir "../../Assets"
                    }
                }
            }
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:design:24.2.0'
}

设置include目录时可能会出现问题。这个错误是清楚的,不言自明的,试图设置头目录的问题是什么。GLM是编译时没有任何问题的库之一。