Sida 1 av 1

Problem att migrera MPLAB8-projekt till MPLABX

Postat: 14 mars 2020, 23:08:06
av TomasL
Försöker lyfta ett MPLAB8-projekt till MPLABX och Harmony3, herrejösses vad de har krånglat till det, och dessutom synnerligen dålig dokumentation.

Har kommit till ett stadium där inga källfiler hittas, trots att de är inkluderade.
Funderar på om alla källfiler måste ligga inom projektet, men hur i jösse namn gör man om man har 10 projekt som delar källfiler?


Edit: förtydligade rubrik - hcb

Re: Håller på att bli knäpp.

Postat: 15 mars 2020, 14:18:18
av Krille Krokodil
Ju mer man håller på med ny spännande teknik desto mer lär man sig uppskatta gammal beprövad & väl dokumenterad! :D

Re: Håller på att bli knäpp.

Postat: 15 mars 2020, 15:56:00
av Polyene
Jag stötte häromdagen på ett underligt fenomen i MPLAB X. Jag satt och hoppade fram och tillbaka mellan olika revisioner i SVN, och i en commit så hade en fil tagits bort (och då även tagits bort från projektet). När jag gick tillbaka till revisionen innan det (med MPLAB igång och projektet laddat) så kom ju filen tillbaka i projektet som väntat. Den kompilerade som den skulle, men verkade inte tas med i länkningen av någon anledning.
Det gick att lösa genom att ta bort filen ur projektet och lägga till den igen, eller så fick jag stänga ner MPLAB X medans jag bytte revision. Du kanske har drabbats av något liknande fenomen?

Re: Håller på att bli knäpp.

Postat: 15 mars 2020, 15:59:34
av TomasL
Har lagt till en alla filer i projektet, nu ligger de förvisso utanför projektbiblioteket, X öppnar filen i editorn när jag klickar på den, men får "file does not exist" vid kompilering på alla filer jag lagt till i projektet.

Re: Håller på att bli knäpp.

Postat: 15 mars 2020, 16:21:19
av Polyene
Hur ser kommandoraden ut när den försöker kompilera filerna?
När jag bygger så får jag i början ett meddelande om "Entering directory C:/.../Projektkatalogen.X", och när den sedan börjar kompilera filerna så är alla sökvägar relativa till den katalogen. Eftersom mina källfiler ligger en nivå över projektkatalogen så börjar dessa sökvägar alltså med "../", t.ex. "../main.c".

[EDIT] - Ändrat till "över projektkatalogen"

Re: Håller på att bli knäpp.

Postat: 15 mars 2020, 22:13:43
av TomasL
Nu är detta lilla problem löst.
Det visade sig att MPLAB-X är skiftlägeskänsligt gällande filnamn, Vilket MPLAB8 inte är.

Nu återstår bara jobbet att portera alla drivers från MPLAB8 PLIB till HARMONY PLIB.

Det lär nog bli många gråa hår där också (å andra sidan är jag ju redan nästan vithårig, så...)

Re: Problem att migrera MPLAB8-projekt till MPLABX

Postat: 16 mars 2020, 21:35:34
av JimmyAndersson
Bra att rubriken ändrats och att det löste sig.
I gamla MPLAB så fanns det en inställning för case-sensitiv. Vet inte hur det är nu.

PS:
"Håller på att bli knäpp" är inget att vara rädd för. Det är värre när man blivit dumihuvigare. :)

Re: Problem att migrera MPLAB8-projekt till MPLABX

Postat: 16 mars 2020, 23:54:33
av sodjan
> I gamla MPLAB så fanns det en inställning för case-sensitiv.

Som jag minns det så gällde det enbart MPASM, alltså assembler
och det gällde symboler och variabelnamn i själva koden.

C var nog alltid case sensitive även i MPLAB 8. Däremot så kan
vanliga filnamn i projekt ha varit case insensitive, minns inte.
Filnamn i #include i C är en gråzon...

Re: Problem att migrera MPLAB8-projekt till MPLABX

Postat: 17 mars 2020, 00:04:16
av TomasL
När det gäller kod, funktioner, variabler osv så är det naturligt att det är skiftlägeskänsligt.
Gissar att det har att göra med att MPLAB8 var för Windows enbart, och windows är inte känsligt när det gäller filnamn, troligen därav att att det funkade i #include direktiven.
Nu när MPLABX är multiplattform är det förmodligen en annan sak.
Lite konstigt egentligen för det är ju samma toolchain i bägge, dvs GCC

Re: Problem att migrera MPLAB8-projekt till MPLABX

Postat: 17 mars 2020, 00:04:29
av JimmyAndersson
Sodjan:
Ah, så kan det ha varit ja.
(Det var ju du som lärde mig det en gång i tiden.)

TomasL:
Det låter rimligt.
Bra att veta vad felet berodde på.