Forum: Compiler & IDEs QT auf Raspberry Pi installieren


von User Pi (Gast)


Lesenswert?

Ich versuche nach dieser Anleitung
https://www.tal.org/tutorials/building-qt-510-raspberry-pi-debian-stretch
Qt zu installieren.

Nach
1
pi@raspberrypi:~/build $ sudo make

bekomme ich
1
cd tools/ && ( test -e Makefile || /home/pi/build/qtbase/bin/qmake -o Makefile /home/pi/qt-everywhere-src-5.10.1/qt3d/tools/tools.pro ) && make -f Makefile 
2
make[2]: Verzeichnis /home/pi/build/qt3d/tools wird betreten
3
cd qgltf/ && ( test -e Makefile || /home/pi/build/qtbase/bin/qmake -o Makefile /home/pi/qt-everywhere-src-5.10.1/qt3d/tools/qgltf/qgltf.pro ) && make -f Makefile 
4
make[3]: Verzeichnis /home/pi/build/qt3d/tools/qgltf wird betreten
5
g++ -Wl,--gc-sections -Wl,-O1 -o ../../bin/qgltf .obj/qgltf.o .obj/3DSConverter.o .obj/3DSExporter.o .obj/3DSLoader.o .obj/ACLoader.o .obj/ASELoader.o .obj/ASEParser.o .obj/AssbinExporter.o .obj/AssbinLoader.o .obj/Assimp.o .obj/AssimpCExport.o .obj/AssxmlExporter.o .obj/B3DImporter.o .obj/BaseImporter.o .obj/BaseProcess.o .obj/Bitmap.o .obj/BlenderBMesh.o .obj/BlenderDNA.o .obj/BlenderLoader.o .obj/BlenderModifier.o .obj/BlenderScene.o .obj/BlenderTessellator.o .obj/BVHLoader.o .obj/C4DImporter.o .obj/CalcTangentsProcess.o .obj/COBLoader.o .obj/ColladaExporter.o .obj/ColladaLoader.o .obj/ColladaParser.o .obj/ComputeUVMappingProcess.o .obj/ConvertToLHProcess.o .obj/CreateAnimMesh.o .obj/CSMLoader.o .obj/D3MFImporter.o .obj/D3MFOpcPackage.o .obj/DeboneProcess.o .obj/DefaultIOStream.o .obj/DefaultIOSystem.o .obj/DefaultLogger.o .obj/DXFLoader.o .obj/Exporter.o .obj/FBXAnimation.o .obj/FBXBinaryTokenizer.o .obj/FBXConverter.o .obj/FBXDeformer.o .obj/FBXDocument.o .obj/FBXDocumentUtil.o .obj/FBXImporter.o .obj/FBXMaterial.o .obj/FBXMeshGeometry.o .obj/FBXModel.o .obj/FBXNodeAttribute.o .obj/FBXParser.o .obj/FBXProperties.o .obj/FBXTokenizer.o .obj/FBXUtil.o .obj/FindDegenerates.o .obj/FindInstancesProcess.o .obj/FindInvalidDataProcess.o .obj/FixNormalsStep.o .obj/GenFaceNormalsProcess.o .obj/GenVertexNormalsProcess.o .obj/glTFExporter.o .obj/glTFImporter.o .obj/HMPLoader.o .obj/IFCBoolean.o .obj/IFCCurve.o .obj/IFCGeometry.o .obj/IFCLoader.o .obj/IFCMaterial.o .obj/IFCOpenings.o .obj/IFCProfile.o .obj/IFCReaderGen1.o .obj/IFCReaderGen2.o .obj/IFCUtil.o .obj/Importer.o .obj/ImporterRegistry.o .obj/ImproveCacheLocality.o .obj/IRRLoader.o .obj/IRRMeshLoader.o .obj/IRRShared.o .obj/JoinVerticesProcess.o .obj/LimitBoneWeightsProcess.o .obj/LWOAnimation.o .obj/LWOBLoader.o .obj/LWOLoader.o .obj/LWOMaterial.o .obj/LWSLoader.o .obj/MakeVerboseFormat.o .obj/MaterialSystem.o .obj/MD2Loader.o .obj/MD3Loader.o .obj/MD5Loader.o .obj/MD5Parser.o .obj/MDCLoader.o .obj/MDLLoader.o .obj/MDLMaterialLoader.o .obj/MS3DLoader.o .obj/NDOLoader.o .obj/NFFLoader.o .obj/ObjExporter.o .obj/ObjFileImporter.o .obj/ObjFileMtlImporter.o .obj/ObjFileParser.o .obj/OFFLoader.o .obj/OgreBinarySerializer.o .obj/OgreImporter.o .obj/OgreMaterial.o .obj/OgreStructs.o .obj/OgreXmlSerializer.o .obj/OpenGEXExporter.o .obj/OpenGEXImporter.o .obj/OptimizeGraph.o .obj/OptimizeMeshes.o .obj/PlyExporter.o .obj/PlyLoader.o .obj/PlyParser.o .obj/PostStepRegistry.o .obj/PretransformVertices.o .obj/ProcessHelper.o .obj/Q3BSPFileImporter.o .obj/Q3BSPFileParser.o .obj/Q3BSPZipArchive.o .obj/Q3DLoader.o .obj/RawLoader.o .obj/RemoveComments.o .obj/RemoveRedundantMaterials.o .obj/RemoveVCProcess.o .obj/SceneCombiner.o .obj/ScenePreprocessor.o .obj/SGSpatialSort.o .obj/SIBImporter.o .obj/SkeletonMeshBuilder.o .obj/SMDLoader.o .obj/SortByPTypeProcess.o .obj/SpatialSort.o .obj/SplitByBoneCountProcess.o .obj/SplitLargeMeshes.o .obj/StandardShapes.o .obj/StepExporter.o .obj/STEPFileEncoding.o .obj/STEPFileReader.o .obj/STLExporter.o .obj/STLLoader.o .obj/Subdivision.o .obj/TargetAnimation.o .obj/TerragenLoader.o .obj/TextureTransform.o .obj/TriangulateProcess.o .obj/UnrealLoader.o .obj/ValidateDataStructure.o .obj/Version.o .obj/VertexTriangleAdjacency.o .obj/XFileExporter.o .obj/XFileImporter.o .obj/XFileParser.o .obj/XGLLoader.o .obj/clipper.o .obj/ConvertUTF.o .obj/irrXML.o .obj/DDLNode.o .obj/OpenDDLCommon.o .obj/OpenDDLExport.o .obj/OpenDDLParser.o .obj/Value.o .obj/shapes.o .obj/advancing_front.o .obj/cdt.o .obj/sweep.o .obj/sweep_context.o .obj/ioapi.o .obj/unzip.o   -L/home/pi/build/qtbase/lib -lQt5Bootstrap -lpthread 
6
.obj/IFCReaderGen1.o: file not recognized: File truncated
7
collect2: error: ld returned 1 exit status
8
Makefile:875: die Regel für Ziel ../../bin/qgltf scheiterte
9
make[3]: *** [../../bin/qgltf] Fehler 1
10
make[3]: Verzeichnis /home/pi/build/qt3d/tools/qgltf wird verlassen
11
Makefile:44: die Regel für Ziel sub-qgltf-make_first scheiterte
12
make[2]: *** [sub-qgltf-make_first] Fehler 2
13
make[2]: Verzeichnis /home/pi/build/qt3d/tools wird verlassen
14
Makefile:72: die Regel für Ziel sub-tools-make_first scheiterte
15
make[1]: *** [sub-tools-make_first] Fehler 2
16
make[1]: Verzeichnis /home/pi/build/qt3d wird verlassen
17
Makefile:596: die Regel für Ziel module-qt3d-make_first scheiterte
18
make: *** [module-qt3d-make_first] Fehler 2
Ich weiß weder was die "Regel für Ziel xy" ist noch ob man 
"sub-qgltf-make_first" irgendwie umgehen kann.

Was macht man da am Besten...?

von Rolf M. (rmagnus)


Lesenswert?

User Pi schrieb:
> Ich weiß weder was die "Regel für Ziel xy" ist

Na das, was drüber steht.

> noch ob man "sub-qgltf-make_first" irgendwie umgehen kann.

Sollte man vermutlich nicht. Aber das sind alles nur Folgemeldungen von 
make, weil es nicht weiter machen kann. Der wichtige Teil ist die 
Meldung vom Linker:
1
obj/IFCReaderGen1.o: file not recognized: File truncated
2
collect2: error: ld returned 1 exit status

Aus irgendeinem Grund hast du also eine defekte Objektdatei, mit der der 
Linker nix anfangen kann. Du könntest diese Datei mal löschen und 
nochmal make aufrufen. Dann sollte sie neu erstellt werden.

Übrigens:

User Pi schrieb:
> Nachpi@raspberrypi:~/build $ sudo make

Es gibt eigentlich keinen Grund, make als root auszuführen. Wobei du 
jetzt, da es alle Dateien als root erzeugt hat, wohl erstmal dabei 
bleiben musst.

von User Pi (Gast)


Lesenswert?

sudo kompilert immer alles. Ich weiß, das ist die Brachialo-Methode, 
aber manchmal scheitert's an den Rechten.

Vielleicht ist das Install Script ja zu alt.



Ich habe's immer noch nicht verstanden:
die Regel für Ziel „../../bin/qgltf“ scheiterte

Welche Regel? Wie kann eine Regel scheitern...? Es kann z.B. nur ein 
Individuum/ein automatisiertes Objekt scheitern der sich an eine Regel 
hält. Dass eine Regel selbst scheitert ist kognitiver Unfug - es sei 
denn, man meint damit z.B. eine (gesellschaftliche) Norm, die von 
gewissen Kreisen abgelehnt wird.

Manches versteht man einfach nicht...

von Rolf M. (rmagnus)


Lesenswert?

User Pi schrieb:
> Ich habe's immer noch nicht verstanden:
> die Regel für Ziel „../../bin/qgltf“ scheiterte
>
> Welche Regel?

Die make-Regel.

> Wie kann eine Regel scheitern...?

Indem das Tool, das durch die Regel aufgerufen wird, mit Fehler 
abbricht. In diesem Fall ist das der Linker.

> Es kann z.B. nur ein Individuum/ein automatisiertes Objekt scheitern der
> sich an eine Regel hält. Dass eine Regel selbst scheitert ist kognitiver
> Unfug - es sei denn, man meint damit z.B. eine (gesellschaftliche) Norm,
> die von gewissen Kreisen abgelehnt wird.

Mit "Regel" ist hier ein Eintrag in einem Makefile gemeint, der 
beschreibt, wie aus einer oder mehreren Quelldateien ein Ziel erstellt 
werden kann. Das   ist nach diesem Schema aufgebaut:
1
Ziel: Quelle1 Quelle2
2
        kommando_zum_erstellen_des_Ziels
Wenn dann irgendwo das Ziel benötigt wird, aber nicht existiert oder 
veraltet ist, führt make die Regel aus, um es zu erstellen.

> Manches versteht man einfach nicht...

Was willst du denn nun? Qt übersetzen oder über die Semantik von 
Fehlermeldungen diskutieren?

von Georg A. (georga)


Lesenswert?

Filesystem voll?

von AbcAbc (Gast)


Lesenswert?

Und warum installierst du nicht Qt aus dem Repository? Im Zweifelsfall 
halt das Testing Repo verwenden.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.