eclipse: include path probleme bei debug / release config
wergor 17.04.2023 - 13:39 3143 4
wergor
connoisseur de mimi
|
ich arbeite gerade mit vitis (eclipse based sdk). wenn ich mein projekt (c) mit der debug config builde passt alles, wenn ich die release config nehme failed der build: 'Building file: ../src/main.cpp'
'Invoking: ARM v7 g++ compiler'
arm-none-eabi-g++ -Wall -O2 -IC:/Users/chrigrat/Documents/ecylpsez7/wrapper/export/wrapper/sw/wrapper/standalone_domain/bspinclude/include -I"/eclypsez7/lib/libscpi/inc" -c -fmessage-length=0 -MT"src/main.o" -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -MMD -MP -MF"src/main.d" -MT"src/main.d" -o "src/main.o" "../src/main.cpp"
In file included from ../src/main.cpp:12:
../src/scpi_def.h:18:10: fatal error: scpi/scpi.h: No such file or directory
"blöde frage wergor, der compiler findet die scpi.h nicht, du musst den pfad in den linker settings angeben" - hab ich gemacht: mir ist aufgefallen, dass beim compile for debug der ganze pfad zu libscpi angegeben ist, beim release ists relativ zum workspace dir: make --no-print-directory main-build
'Building file: ../src/main.cpp'
'Invoking: ARM v7 g++ compiler'
arm-none-eabi-g++ -Wall -O0 -g3 -I"C:\Users\chrigrat\Documents\ecylpsez7\eclypsez7\lib\libscpi\inc" -IC:/Users/chrigrat/Documents/ecylpsez7/wrapper/export/wrapper/sw/wrapper/standalone_domain/bspinclude/include -c -fmessage-length=0 -MT"src/main.o" -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -IC:/Users/chrigrat/Documents/ecylpsez/wrapper/export/wrapper/sw/wrapper/standalone_domain/bspinclude/include -MMD -MP -MF"src/main.d" -MT"src/main.o" -o "src/main.o" "../src/main.cpp"
In file included from ../src/scpi_def.h:10,
weis jemand was es da hat? edit: hier noch die g++ compiler directories
Bearbeitet von wergor am 17.04.2023, 13:47
|
Vinci
hatin' on summer
|
Also wenn ich das jetzt richtig verstanden hab gibst du eigentlich 2x den selben Pfad an einmal absolut $workspace_low/$ProjName/lib/libscpi/inc
und einmal relativ /$ProjName/lib/libscpi/inc
Ich könnt mir vorstellen dass Eclipse da irgendeinen Schaß draht und meint "die sind eh ident, da kann ich einen weghaun". Vielleicht hauts den weg der zu einem späteren Zeitpunkt hinzugefügt wurde oder so? Du könntest mal einen Blick in die makefiles werfen die erzeugt werden, vielleicht wird ma daraus schlauer. Ansonsten würde ich raten das Projekt nicht über Eclipse zu baun... Beim nächsten Update sind die ganzen Einstellungen futsch und des Projekt baut gar nimma. Is des Hakn oder privat?
Bearbeitet von Vinci am 19.04.2023, 17:12
|
wergor
connoisseur de mimi
|
Also wenn ich das jetzt richtig verstanden hab gibst du eigentlich 2x den selben Pfad an
einmal absolut
$workspace_low/$ProjName/lib/libscpi/inc
und einmal relativ
/$ProjName/lib/libscpi/inc
vitis weis in beiden fällen dass der pfad relativ zum workspace ist: Du könntest mal einen Blick in die makefiles werfen die erzeugt werden, vielleicht wird ma daraus schlauer. die makesfiles werden autogeneriert, sie sind komplett identisch, in beiden ist der pfad zur library absolut angegeben: -include lib/libscpi/src/subdir.mk
[...]
arm-none-eabi-g++ -L"C:\Users\chrigrat\Documents\ecylpsez7\eclypsez7\lib" -
Ansonsten würde ich raten das Projekt nicht über Eclipse zu baun... Beim nächsten Update sind die ganzen Einstellungen futsch und des Projekt baut gar nimma. Is des Hakn oder privat? ist für die hackn... vitis / eclipse ist teil der toolchain zum programmieren von z.b. Zynq SoCs, ich fürchte ich kann mir nicht wirklich aussuchen ob ich das verwenden will oder nicht...
|
Vinci
hatin' on summer
|
Und deren Eclipse Ding is auch für den FPGA verantwortlich oder was auch immer da drin steckt? Oder baut das "eh nur" die Software... weil dann Stünde einem Umstieg nämlich nichts im Wege.
Mein Arbeitgeber (read as: Bastlerbude) hat(te) das selbe Problem. 10 verschiedene IDE's und 4 verschiedene Compiler. Ende letzten Jahres wurde mir das zu bunt und ich hab angefangen CMake Workshops zu halten...
|
wergor
connoisseur de mimi
|
fpga, prozessor (eigentlich der ganze SoC) und die hardware werden in einem anderen tool konfiguriert das auch den fpga programmieren kann. vitis importiert die hardware spec und fpga bitfile, konfiguriert das c projekt sodass das zusammen passt, baut das boot image fürn SoC etc, das ist schon ein bissl mehr "involved"
|