Closed Steve-Paselli closed 5 years ago
I think it's unlikely to happen since it compiles fine on a fresh install on Travis. Could you please clean your build directory and try to rebuild? thanks.
When cloning on Mac, I got this error:
$ git clone https://github.com/micmacIGN/micmac.git micmac
Cloning into 'micmac'...
remote: Enumerating objects: 163, done.
remote: Counting objects: 100% (163/163), done.
remote: Compressing objects: 100% (116/116), done.
remote: Total 77222 (delta 76), reused 89 (delta 45), pack-reused 77059
Receiving objects: 100% (77222/77222), 297.35 MiB | 9.08 MiB/s, done.
Resolving deltas: 100% (63174/63174), done.
Checking out files: 100% (5342/5342), done.
warning: the following paths have collided (e.g. case-sensitive paths
on a case-insensitive filesystem) and only one from the same
colliding group is in the working tree:
'src/TpMMPD/SimuBBA/SimuRolShut.h'
'src/TpMMPD/SimuBBA/simurolshut.h'
'src/uti_files/CPP_XifGps2Xml.h'
'src/uti_files/cpp_xifgps2xml.h'
It seems the lower-case versions of these files are preferable.
hmm ok thanks, the issue could potentially make sense now. I'll try to see if it is really reproducible and if it is i'll try figure out the best way to tackle this.
Hello @rjanvier , FYI the files that were used by my successful build of the more-portable-gimmi-branch
(see #118) are the mixed case versions. As @nerdinand reports, I previously got git complaining when pulling the micmac master branch, since lower case and mixed case versions both refer to the same file on a regular MacOS setup. I think the issue arises when one of these files are modified: a subsequent pull on an already existing local repository stops because of the mixup (a situation that probably does not happen with Travis CI, since I guess the local repository always start fresh). My solution was to remove the local repository, and clone it again (but I only got the two mixed case version of the files in the end).
thanks @gmorain could you please make a pull request with these changes?
git mv --force src/TpMMPD/SimuBBA/simurolshut.h src/TpMMPD/SimuBBA/SimuRolShut.h
git mv --force src/uti_files/cpp_xifgps2xml.h src/uti_files/cpp_xifgps2xml.h
thanks
@rjanvier I actually was wrong earlier, in the more-portable-gimmi
branch I only see src/TpMMPD/SimuBBA/SimuRolShut.cpp
and src/uti_files/CPP_XifGps2Xml.cpp
files, not the matching .h, so both commands above fail (but the second one is probably wrong, I suppose the second file path should have been the mixed case version ?). After a git checkout on master, a git status gives:
git status
Sur la branche master
Votre branche est à jour avec 'origin/master'.
Modifications qui ne seront pas validées :
(utilisez "git add <fichier>..." pour mettre à jour ce qui sera validé)
(utilisez "git checkout -- <fichier>..." pour annuler les modifications dans la copie de travail)
modifié : src/TpMMPD/SimuBBA/SimuRolShut.h
modifié : src/uti_files/CPP_XifGps2Xml.h
Trying again your commands (with the second one modified to have the mixed case name as second argument):
git mv --force src/TpMMPD/SimuBBA/simurolshut.h src/TpMMPD/SimuBBA/SimuRolShut.h
git mv --force src/uti_files/cpp_xifgps2xml.h src/uti_files/CPP_XifGps2Xml.h
gives this:
git status
Sur la branche master
Votre branche est à jour avec 'origin/master'.
Modifications qui seront validées :
(utilisez "git reset HEAD <fichier>..." pour désindexer)
modifié : src/TpMMPD/SimuBBA/SimuRolShut.h
supprimé : src/TpMMPD/SimuBBA/simurolshut.h
modifié : src/uti_files/CPP_XifGps2Xml.h
supprimé : src/uti_files/cpp_xifgps2xml.h
Files end nearly empty (just #ifndef / #define / #endif empty shell in both cases), which is what @nerdinand suggested (content of the lower case versions as I can see when browsing the Github repo), but I am not sure this is actually what we want, since the mixed case versions (merged from the Yilin
branch) are more recent (16 days/26 days vs 2 months). I am totally unaware of what to expect in those files, since I am just trying to build micmac initially...
Well, building the master branch like this gives the answer:
micmac/src/uti_files/CPP_XifGps2Xml.cpp:329:9: error: unknown type name 'cAppli_XifDate'
cAppli_XifDate anAppli(aFullName);
^
micmac/src/uti_files/CPP_XifGps2Xml.cpp:334:9: error: unknown type name 'cAppli_VByDate'
cAppli_VByDate anAppli(aFullName,aCalVOri);
^
micmac/src/uti_files/CPP_XifGps2Xml.cpp:365:5: error: unknown type name 'cAppli_XifGps2Xml'
cAppli_XifGps2Xml anAppli(aFullName,aDefZ);
^
micmac/src/uti_files/CPP_XifGps2Xml.cpp:411:5: error: unknown type name 'cAppli_XifGps2Xml'
cAppli_XifGps2Xml anAppli(aFullName,aDefZ);
...while having the mixed case file names with the content of the lower case counterparts all the classes definitions + some includes) leads to a successful build on master branch, with the ability to start the GIMMI
UI in the end.
I am not sure a pull request to fix this should come from a MacOS system using the default config (i.e. ignore case in names on file system), because of this (git thinks I've changed the lower case versions which do not exist any more on my working folder):
git status
Sur la branche master
Votre branche est à jour avec 'origin/master'.
Modifications qui ne seront pas validées :
(utilisez "git add <fichier>..." pour mettre à jour ce qui sera validé)
(utilisez "git checkout -- <fichier>..." pour annuler les modifications dans la copie de travail)
modifié : ../src/TpMMPD/SimuBBA/simurolshut.h
modifié : ../src/uti_files/cpp_xifgps2xml.h
Ok I was unaware of the lower case src/TpMMPD/SimuBBA/simurolshut.h
I guess removing it should be fine. For the CPP_XifGps2Xml.h
file the git mv --force src/uti_files/cpp_xifgps2xml.h src/uti_files/CPP_XifGps2Xml.h
should do the trick. Sorry I haven't any macOS box with me to test right now.
sorry removing both lower cases should be fine
I just tried git mv --force src/uti_files/cpp_xifgps2xml.h src/uti_files/CPP_XifGps2Xml.h
before pulling your latest changes to master
(to be in the same conditions as yesterday), but got this:
fatal: mauvaise source, source=build/src/uti_files/cpp_xifgps2xml.h, destination=build/src/uti_files/CPP_XifGps2Xml.h
git pull
fails:
Mise à jour f35a8d455..c101a93e3
error: Vos modifications locales aux fichiers suivants seraient écrasées par la fusion :
src/TpMMPD/SimuBBA/simurolshut.h
src/uti_files/cpp_xifgps2xml.h
Veuillez valider ou remiser vos modifications avant la fusion.
Abandon
it's fixed, no need to git mv
Yes, I've seen that, I was just trying to see if the suggested command was actually working since you do not have a MacOS box available. Will update soon when new build is over
This is what I had to do to catch up with latest commit (c101a93e32ebe4bf971141af57563b3615794c1c), since git pull
fails with:
Mise à jour f35a8d455..c101a93e3
error: Vos modifications locales aux fichiers suivants seraient écrasées par la fusion :
src/TpMMPD/SimuBBA/simurolshut.h
src/uti_files/cpp_xifgps2xml.h
Veuillez valider ou remiser vos modifications avant la fusion.
Abandon
=> a hard reset to master
branch did the trick. Now git status
is clean, and building micmac with GIMMI succeeds with a runnable GIMMI executable.
Thanks @rjanvier !
make install -j4 on an iMac 27 gives me this:
/Users/villavillacolle/micmac/src/uti_files/CPP_XifGps2Xml.cpp:42:1: error: use of undeclared identifier 'cAppli_VByDate' cAppli_VByDate::cAppli_VByDate(const std::string & aFullName, std::string & aOri): ^ /Users/villavillacolle/micmac/src/uti_files/CPP_XifGps2Xml.cpp:52:6: error: use of undeclared identifier 'cAppli_VByDate' void cAppli_VByDate::CalcV(const std::string & aOut) ^ /Users/villavillacolle/micmac/src/uti_files/CPP_XifGps2Xml.cpp:133:1: error: use of undeclared identifier 'cAppli_XifGps2Xml' cAppli_XifGps2Xml::cAppli_XifGps2Xml(const std::string & aFullName,double aDefZ) : ^ /Users/villavillacolle/micmac/src/uti_files/CPP_XifGps2Xml.cpp:161:6: error: use of undeclared identifier 'cAppli_XifGps2Xml' void cAppli_XifGps2Xml::ExportSys(cSysCoord * aSC,const std::string & anOri) ^ /Users/villavillacolle/micmac/src/uti_files/CPP_XifGps2Xml.cpp:178:6: error: use of undeclared identifier 'cAppli_XifGps2Xml' void cAppli_XifGps2Xml::ExportCoordTxtFile(std::string aOut, std::string aOutFormat) ^ /Users/villavillacolle/micmac/src/uti_files/CPP_XifGps2Xml.cpp:218:1: error: use of undeclared identifier 'cAppli_XifDate' cAppli_XifDate::cAppli_XifDate(const std::string & aFullName): ^ /Users/villavillacolle/micmac/src/uti_files/CPP_XifGps2Xml.cpp:228:6: error: use of undeclared identifier 'cAppli_XifDate' void cAppli_XifDate::Export(const std::string & aOut) ^ /Users/villavillacolle/micmac/src/uti_files/CPP_XifGps2Xml.cpp:239:21: error: use of undeclared identifier 'cAppli_XifDate' std::vector cAppli_XifDate::GetVDiffSecond()
^
/Users/villavillacolle/micmac/src/uti_files/CPP_XifGps2Xml.cpp:256:1: error: use of undeclared identifier 'cIm_XifGp'
cIm_XifGp::cIm_XifGp(const std::string & aName,cAppli_XifGps2Xml & anAppli) :
^
/Users/villavillacolle/micmac/src/uti_files/CPP_XifGps2Xml.cpp:256:48: error: unknown type name 'cAppli_XifGps2Xml'
cIm_XifGp::cIm_XifGp(const std::string & aName,cAppli_XifGps2Xml & anAppli) :
^
/Users/villavillacolle/micmac/src/uti_files/CPP_XifGps2Xml.cpp:280:1: error: use of undeclared identifier 'cIm_XifDate'
cIm_XifDate::cIm_XifDate(const std::string & aName):
^
/Users/villavillacolle/micmac/src/uti_files/CPP_XifGps2Xml.cpp:287:1: error: use of undeclared identifier 'cIm_XifDate'
cIm_XifDate::cIm_XifDate(const std::string & aName, cElHour & aBeginTime):
^
/Users/villavillacolle/micmac/src/uti_files/CPP_XifGps2Xml.cpp:323:9: error: unknown type name 'cAppli_XifDate'
cAppli_XifDate anAppli(aFullName);
^
/Users/villavillacolle/micmac/src/uti_files/CPP_XifGps2Xml.cpp:328:9: error: unknown type name 'cAppli_VByDate'
cAppli_VByDate anAppli(aFullName,aCalVOri);
^
/Users/villavillacolle/micmac/src/uti_files/CPP_XifGps2Xml.cpp:359:5: error: unknown type name 'cAppli_XifGps2Xml'
cAppli_XifGps2Xml anAppli(aFullName,aDefZ);
^
/Users/villavillacolle/micmac/src/uti_files/CPP_XifGps2Xml.cpp:405:5: error: unknown type name 'cAppli_XifGps2Xml'
cAppli_XifGps2Xml anAppli(aFullName,aDefZ);
I previously built micmac successfully on another machine with Sierra. Any help is greatly appreciated, thank you!