Closed lronaldo closed 9 years ago
The command for moving away precompiled binaries has no effect, and reports same problem on the 3 platforms:
rm -f 2cdt/2cdt/src/*.o
mv -vf 2cdt/2cdt/2cdt 2cdt/2cdt/2cdt.x86-elf-linux || echo "Could not move away Linux-x86-only precompiled binaries. Hope that's ok."
mv: cannot stat '2cdt/2cdt/2cdt': No such file or directory
Could not move away Linux-x86-only precompiled binaries. Hope that's ok.
touch 2cdt/.unpacked
Here is my directory structure:
@ ~/cpc-dev-tool-chain/tool/2cdt
$ tree
.
├── 2cdt
│ ├── 2cdt.cbp
│ ├── 2cdt.depend
│ ├── 2cdt.layout
│ ├── COPYING
│ ├── file_id.diz
│ ├── Makefile
│ ├── Makefile.win
│ ├── readme.txt
│ └── src
│ ├── 2cdt.c
│ ├── defs.h
│ ├── tzxfile.c
│ └── tzxfile.h
├── 2cdt.zip
└── Makefile
2 directories, 14 files
Seems that these commands should be launched after compiling 2cdt, and not after unpacking it. They try to move away executable files that are not build yet. Any ideas?
I got it. It's a breaking change because of the way 2cdt was updated by upstream author arnoldemu. The previous archive had another directory level.
Old archive content:
unzip -lv 2cdt.zip Archive: 2cdt.zip Length Method Size Cmpr Date Time CRC-32 Name -------- ------ ------- ---- ---------- ----- -------- ---- 0 Stored 0 0% 2010-07-06 21:47 00000000 2cdt/ 0 Stored 0 0% 2011-08-17 21:34 00000000 2cdt/2cdt/ 4711 Defl:N 2077 56% 2010-07-27 09:59 28e4ccbe 2cdt/2cdt/readme.txt 416 Defl:N 187 55% 2010-07-27 10:27 b3cdd29d 2cdt/2cdt/2cdt.depend 55690 Defl:N 19475 65% 2010-07-27 10:27 91caf6c3 2cdt/2cdt/2cdt.exe 21912 Defl:N 8105 63% 2011-08-17 21:33 433c5283 2cdt/2cdt/2cdt 245 Defl:N 176 28% 2010-07-27 10:28 2f4cd791 2cdt/2cdt/2cdt.layout 1167 Defl:N 402 66% 2006-05-29 12:39 d97ebcaa 2cdt/2cdt/2cdt.cbp 371 Defl:N 229 38% 2011-08-17 21:32 c909764b 2cdt/2cdt/Makefile 340 Defl:N 231 32% 2002-02-23 13:12 1be17194 2cdt/2cdt/file_id.diz 0 Stored 0 0% 2011-08-17 21:32 00000000 2cdt/2cdt/src/ 36432 Defl:N 8217 77% 2010-07-27 10:26 fa4f0265 2cdt/2cdt/src/2cdt.c 2781 Defl:N 1091 61% 2001-05-28 13:22 e3cd3e80 2cdt/2cdt/src/tzxfile.h 10693 Defl:N 2671 75% 2006-01-22 15:38 5d3a51b0 2cdt/2cdt/src/tzxfile.c 987 Defl:N 541 45% 2002-02-23 12:49 ce7b3271 2cdt/2cdt/src/defs.h 19640 Defl:N 7591 61% 2011-08-17 21:32 955e74bf 2cdt/2cdt/src/2cdt.o 3828 Defl:N 1621 58% 2011-08-17 21:32 4895aebe 2cdt/2cdt/src/tzxfile.o 899 Defl:N 392 56% 2005-10-16 18:04 6213edbe 2cdt/2cdt/Makefile.win 18329 Defl:N 6928 62% 1998-09-21 01:54 d17f6987 2cdt/2cdt/COPYING -------- ------- --- ------- 178441 59934 66% 19 files
New archive content.
unzip -lv 2cdt.zip Archive: 2cdt.zip Length Method Size Cmpr Date Time CRC-32 Name -------- ------ ------- ---- ---------- ----- -------- ---- 0 Stored 0 0% 2014-01-03 16:31 00000000 2cdt/ 18329 Defl:N 6928 62% 1998-09-21 01:54 d17f6987 2cdt/COPYING 899 Defl:N 392 56% 2005-10-16 18:04 6213edbe 2cdt/Makefile.win 436 Defl:N 262 40% 2014-01-03 16:30 d60985b8 2cdt/Makefile 340 Defl:N 231 32% 2002-02-23 13:12 1be17194 2cdt/file_id.diz 416 Defl:N 187 55% 2010-07-27 10:27 b3cdd29d 2cdt/2cdt.depend 1167 Defl:N 402 66% 2006-05-29 12:39 d97ebcaa 2cdt/2cdt.cbp 4711 Defl:N 2077 56% 2010-07-27 09:59 28e4ccbe 2cdt/readme.txt 0 Stored 0 0% 2014-01-03 16:31 00000000 2cdt/src/ 987 Defl:N 541 45% 2002-02-23 12:49 ce7b3271 2cdt/src/defs.h 36484 Defl:N 8230 77% 2014-01-03 16:31 214f5365 2cdt/src/2cdt.c 2781 Defl:N 1091 61% 2001-05-28 13:22 e3cd3e80 2cdt/src/tzxfile.h 10693 Defl:N 2671 75% 2006-01-22 15:38 5d3a51b0 2cdt/src/tzxfile.c 245 Defl:N 176 28% 2010-07-27 10:28 2f4cd791 2cdt/2cdt.layout -------- ------- --- ------- 77488 23188 70% 14 files
Doing things manually introduces unpredictable changes.
I quite understand. May be this should warn us about the way code is got by makefiles/scripts. Should we try to get always a concrete commit/revision of the third party software? That would more or less ensure that everything is stable at a given revision (And that revision would continue to be stable in the future, if it were needed for kind-of retro developing or similar).
I think I understand your approach. We can anticipate problems, but is it worth the time at the moment ? Maybe we can just be lazypotent at this time.
Well, right now it seems that almost everything is fixed and working on different platforms. It is difficult to quantify the worthiness of the change (there is no way to estimate the frequency of changes that will be required). Being lazypotent, as you suggest, saves time and resources. (Your mini-article is nice :+1:)
I thought of it as a great feature, being able to tag releases/versions that will become static in time, and usable at any given point in the future. However, it is difficult if we take into account that not every source comes from repositories. It may continue living in the realm of ideas till next time :).
It seems that most of the platforms (I haven't tried ubuntu yet) have problems installing
2cdt
because Makefile guides them to enter the pathtools/2cdt/2cdt/2cdt
, which does not exist. Here I left the error, and the platforms tested, with similar results.The error:
Tested platforms (with same result)