Better Linux Install Experience?

Problems installing on other platforms
rmeeh
New member
Posts: 1
Joined: Mon Aug 14, 2023 9:09 pm

Re: Better Linux Install Experience?

Post by rmeeh »

Hello all, so I can in no way confirm that the installation is easy to perform under Linux. The day before yesterday, the installation under Windows was done within 10 minutes. Under Linux I have not yet run it after a day. I have tested with 3 systems: Debian11, Zorin16 pro and Raspian Buster on a RevPi Connect. This was where I stopped on the RevPi

src/c/scan_rules.c:89:1: error: expected identifier or ‘(’ before ‘%’ token
%%{
^
src/c/scan_rules.c:125:8: error: stray ‘\’ in program
';' [^\n]* ;
^
src/c/scan_rules.c:128:8: error: too many decimal points in number
any - 0x21..0x7e - '\n' ;
^~~~~~~~~~
src/c/scan_rules.c:173:2: warning: multi-character character constant [-Wmultichar]
'0x'i xdigit+
^~~~
What the hack ist wrong there? :D
Has someone an idea?
Thanks very much
Ralf
derekfountain
Member
Posts: 119
Joined: Mon Mar 26, 2018 1:49 pm

Re: Better Linux Install Experience?

Post by derekfountain »

What are you trying to install from? What did you download and what command did you use to run the install?
Timmy
Well known member
Posts: 356
Joined: Sat Mar 10, 2012 4:18 pm

Re: Better Linux Install Experience?

Post by Timmy »

Which reminds me I should say that due to a recently broken Windows computer, I am now using z88dk on a Linux machine for about a month.

It was a bit of work to get it compiled and installed (the version without SDCC), but in the end I still got it working.

Perhaps you can explain what and how you were installing?

Which reminds me that somehow I don't have a scan_rules.c file in any of my z88dk directories.
cborn
Well known member
Posts: 264
Joined: Tue Oct 06, 2020 7:45 pm

Re: Better Linux Install Experience?

Post by cborn »

https://github.com/z88dk/z88dk/wiki/ins ... inux--unix

do you have all DEV's ?

if you took the nightly build, did u download with github and
git clone --recursive https://github.com/z88dk/z88dk.git

i used to forget that 1 little remark --recursive

for the tests you need an aditional dowload in Perl aswell
The build detailed above skips running many of the tests, to run them add the -t option to the build.sh invocation. In order to run the z80asm unit tests the following perl packages are required:
cborn
Well known member
Posts: 264
Joined: Tue Oct 06, 2020 7:45 pm

Re: Better Linux Install Experience?

Post by cborn »

Hi, following '''my own''' intrusctions i now have an big list off failing tests myself.
It might be a CPAN difference or some.
i was installing the perl list and actualy forgot the sudo part
there was a message with "interupted", not an error message...
i read that cpan was an 'older version' and upgraded it
before the tests were 100% ok, now 100% failure

last fulll remark and first test remarks, they are all equal?:

Code: Select all

t/issue_0662.t ........... Can't locate Text/Diff.pm in @INC (you may need to install the Text::Diff module) (@INC contains: t /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.34.0 /usr/local/share/perl/5.34.0 /usr/lib/x86_64-linux-gnu/perl5/5.34 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl-base /usr/lib/x86_64-linux-gnu/perl/5.34 /usr/share/perl/5.34 /usr/local/lib/site_perl) at t/testlib.pl line 9.
BEGIN failed--compilation aborted at t/testlib.pl line 9.
Compilation failed in require at t/issue_0662.t line 3.
BEGIN failed--compilation aborted at t/issue_0662.t line 3.
t/issue_0662.t ........... Dubious, test returned 2 (wstat 512, 0x200)
No subtests run 

Test Summary Report
-------------------
t/ASMSIZE-ASMTAIL.t    (Wstat: 512 (exited 2) Tests: 0 Failed: 0)
  Non-zero exit status: 2
  Parse errors: No plan found in TAP output
ojee
i forgot
Text::Diff

now it works!
cborn
Well known member
Posts: 264
Joined: Tue Oct 06, 2020 7:45 pm

Re: Better Linux Install Experience?

Post by cborn »

hmm
cborn
Well known member
Posts: 264
Joined: Tue Oct 06, 2020 7:45 pm

Re: Better Linux Install Experience?

Post by cborn »

Hi
despite the install says it all is working the '-a' option off z88dk-dis is NOT working on MY install. something is apperently different or used different

i tried to copy all messages, guess its complete, ending with the 48k.rom test

Code: Select all


sudo apt install build-essential bison flex libxml2-dev subversion zlib1g-dev m4 ragel re2c dos2unix texinfo texi2html gdb curl perl cpanminus ccache libboost-all-dev libmodern-perl-perl libyaml-perl liblocal-lib-perl libcapture-tiny-perl libpath-tiny-perl libtext-table-perl libdata-hexdump-perl libregexp-common-perl libclone-perl libfile-slurp-perl

sudo cpanm App::Prove File::Path CPU::Z80::Assembler Object::Tiny::RW List::Uniq
sudo cpanm --local-lib=~/perl5 App::Prove CPU::Z80::Assembler Data::Dump Data::HexDump File::Path List::Uniq Modern::Perl Object::Tiny::RW Regexp::Common Test::Harness Text::Diff Text::Table YAML::Tiny
eval $(perl -I ~/perl5/lib/perl5/ -Mlocal::lib)





:~$ cd z88dk
:~/z88dk$ git submodule update --init --recursive
:~/z88dk$ echo $PATH
/home/cb/perl5/bin:/home/cb/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/cb/z88dk/bin
:~/z88dk$ echo $ZCCCFG
/home/cb/z88dk/lib/config
sudo apt install build-essential bison flex libxml2-dev subversion zlib1g-dev m4 ragel re2c dos2unix texinfo texi2html gdb curl perl cpanminus ccache libboost-all-dev libmodern-perl-perl libyaml-perl liblocal-lib-perl libcapture-tiny-perl libpath-tiny-perl libtext-table-perl libdata-hexdump-perl libregexp-common-perl libclone-perl libfile-slurp-perl
Reading package lists... Done                                                                                 
Building dependency tree... Done
Reading state information... Done
bison is already the newest version (2:3.8.2+dfsg-1build1).
build-essential is already the newest version (12.9ubuntu3).
flex is already the newest version (2.6.4-8build2).
libcapture-tiny-perl is already the newest version (0.48-1).
libclone-perl is already the newest version (0.45-1build3).
libpath-tiny-perl is already the newest version (0.122-1).
libyaml-perl is already the newest version (1.30-1).
m4 is already the newest version (1.4.18-5ubuntu2).
re2c is already the newest version (3.0-1).
ccache is already the newest version (4.5.1-1).
cpanminus is already the newest version (1.7045-1).
dos2unix is already the newest version (7.4.2-2).
libboost-all-dev is already the newest version (1.74.0.3ubuntu7).
libdata-hexdump-perl is already the newest version (0.04-1).
libfile-slurp-perl is already the newest version (9999.32-1).
liblocal-lib-perl is already the newest version (2.000028-1).
libmodern-perl-perl is already the newest version (1.20200211-1).
libregexp-common-perl is already the newest version (2017060201-1).
libtext-table-perl is already the newest version (1.132-1).
ragel is already the newest version (6.10-1build1).
texi2html is already the newest version (1.82+dfsg1-6).
texinfo is already the newest version (6.8-4build1).
curl is already the newest version (7.81.0-1ubuntu1.13).
gdb is already the newest version (12.1-0ubuntu1~22.04).
libxml2-dev is already the newest version (2.9.13+dfsg-1ubuntu0.3).
perl is already the newest version (5.34.0-3ubuntu1.2).
zlib1g-dev is already the newest version (1:1.2.11.dfsg-2ubuntu9.2).
subversion is already the newest version (1.14.1-3ubuntu0.22.04.1).
The following packages were automatically installed and are no longer required:
  linux-headers-5.15.0-78 linux-headers-5.15.0-78-generic linux-headers-5.15.0-79 linux-headers-5.15.0-79-generic linux-headers-5.15.0-82 linux-headers-5.15.0-82-generic
  linux-headers-5.15.0-83 linux-headers-5.15.0-83-generic linux-image-5.15.0-78-generic linux-image-5.15.0-79-generic linux-image-5.15.0-82-generic linux-image-5.15.0-83-generic
  linux-modules-5.15.0-78-generic linux-modules-5.15.0-79-generic linux-modules-5.15.0-82-generic linux-modules-5.15.0-83-generic linux-modules-extra-5.15.0-78-generic
  linux-modules-extra-5.15.0-79-generic linux-modules-extra-5.15.0-82-generic linux-modules-extra-5.15.0-83-generic
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.
:~/z88dk$ sudo apt upgrade
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Calculating upgrade... Done
The following packages were automatically installed and are no longer required:
  linux-headers-5.15.0-78 linux-headers-5.15.0-78-generic linux-headers-5.15.0-79 linux-headers-5.15.0-79-generic linux-headers-5.15.0-82 linux-headers-5.15.0-82-generic
  linux-headers-5.15.0-83 linux-headers-5.15.0-83-generic linux-image-5.15.0-78-generic linux-image-5.15.0-79-generic linux-image-5.15.0-82-generic linux-image-5.15.0-83-generic
  linux-modules-5.15.0-78-generic linux-modules-5.15.0-79-generic linux-modules-5.15.0-82-generic linux-modules-5.15.0-83-generic linux-modules-extra-5.15.0-78-generic
  linux-modules-extra-5.15.0-79-generic linux-modules-extra-5.15.0-82-generic linux-modules-extra-5.15.0-83-generic
Use 'sudo apt autoremove' to remove them.
The following packages have been kept back:
  libsane-common libsane1
0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.

sudo cpanm App::Prove File::Path CPU::Z80::Assembler Object::Tiny::RW List::Uniq
App::Prove is up to date. (3.47)
File::Path is up to date. (2.18)
CPU::Z80::Assembler is up to date. (2.25)
Object::Tiny::RW is up to date. (1.07)
List::Uniq is up to date. (0.23)

sudo cpanm --local-lib=~/perl5 App::Prove CPU::Z80::Assembler Data::Dump Data::HexDump File::Path List::Uniq Modern::Perl Object::Tiny::RW Regexp::Common Test::Harness Text::Diff Text::Table YAML::Tiny
App::Prove is up to date. (3.47)
CPU::Z80::Assembler is up to date. (2.25)
Data::Dump is up to date. (1.25)
Data::HexDump is up to date. (0.04)
File::Path is up to date. (2.18)
List::Uniq is up to date. (0.23)
Modern::Perl is up to date. (1.20230106)
Object::Tiny::RW is up to date. (1.07)
Regexp::Common is up to date. (2017060201)
Text::Diff is up to date. (1.45)
Text::Table is up to date. (1.135)
YAML::Tiny is up to date. (1.74)

eval $(perl -I ~/perl5/lib/perl5/ -Mlocal::lib)
:~/z88dk$ sudo eval $(perl -I ~/perl5/lib/perl5/ -Mlocal::lib)
sudo: eval: command not found

export BUILD_SDCC=1
export BUILD_SDCC_HTTP=1
chmod 777 build.sh
:~/z88dk$ ./build.sh


./build.sh
Checking if submodule dependencies are met...
Module dependencies are present
make -C testsuite
make[1]: Entering directory '/home/cb/z88dk/testsuite'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/cb/z88dk/testsuite'
make: Entering directory '/home/cb/z88dk/libsrc'

--- SP1 Software Sprite Engine ---
# newlib and sccz80 + classic libraries
z88dk-z80asm -I/home/cb/z88dk/lib/config//../ -x/home/cb/z88dk/libsrc//sp1-ts2068 @ts2068hr.lst
z88dk-z80asm -I/home/cb/z88dk/lib/config//../ -x/home/cb/z88dk/libsrc//sp1-zx81hr -IXIY @zx81hr.lst
# sdcc + classic library
cp zx/sp1-zx.lib /home/cb/z88dk/libsrc/
make[2]: Nothing to be done for 'all'.
make[2]: Nothing to be done for 'all'.
make[2]: Nothing to be done for 'all'.
make: Leaving directory '/home/cb/z88dk/libsrc'
make: Entering directory '/home/cb/z88dk/libsrc'
cp /home/cb/z88dk/libsrc//*.lib ../lib/clibs
make: Leaving directory '/home/cb/z88dk/libsrc'
make: Entering directory '/home/cb/z88dk/libsrc/_DEVELOPMENT'
make: Nothing to be done for 'all'.
make: Leaving directory '/home/cb/z88dk/libsrc/_DEVELOPMENT'
make: Entering directory '/home/cb/z88dk/include/_DEVELOPMENT'
cp -r sccz80/adt ../
cp -r sccz80/alloc ../
rm -f -f ../alloc/malloc.h
cp -r sccz80/arch/zx/esxdos.h ../arch/zx/esxdos.h
cp -r sccz80/arch/zxn/esxdos.h ../arch/zxn/esxdos.h
make: Leaving directory '/home/cb/z88dk/include/_DEVELOPMENT'


./build.sh -t
Checking if submodule dependencies are met...
Module dependencies are present
make -C testsuite
make[1]: Entering directory '/home/cb/z88dk/testsuite'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/cb/z88dk/testsuite'
make: Entering directory '/home/cb/z88dk/libsrc'

--- SP1 Software Sprite Engine ---
# newlib and sccz80 + classic libraries
z88dk-z80asm -I/home/cb/z88dk/lib/config//../ -x/home/cb/z88dk/libsrc//sp1-ts2068 @ts2068hr.lst
z88dk-z80asm -I/home/cb/z88dk/lib/config//../ -x/home/cb/z88dk/libsrc//sp1-zx81hr -IXIY @zx81hr.lst
# sdcc + classic library
cp zx/sp1-zx.lib /home/cb/z88dk/libsrc/
make[2]: Nothing to be done for 'all'.
make[2]: Nothing to be done for 'all'.
make[2]: Nothing to be done for 'all'.
make: Leaving directory '/home/cb/z88dk/libsrc'
make: Entering directory '/home/cb/z88dk/libsrc'
cp /home/cb/z88dk/libsrc//*.lib ../lib/clibs
make: Leaving directory '/home/cb/z88dk/libsrc'
make: Entering directory '/home/cb/z88dk/libsrc/_DEVELOPMENT'
make: Nothing to be done for 'all'.
make: Leaving directory '/home/cb/z88dk/libsrc/_DEVELOPMENT'
make: Entering directory '/home/cb/z88dk/include/_DEVELOPMENT'
cp -r sccz80/adt ../
cp -r sccz80/alloc ../
rm -f -f ../alloc/malloc.h
cp -r sccz80/arch/zx/esxdos.h ../arch/zx/esxdos.h
cp -r sccz80/arch/zxn/esxdos.h ../arch/zxn/esxdos.h
make: Leaving directory '/home/cb/z88dk/include/_DEVELOPMENT'
make: Entering directory '/home/cb/z88dk/testsuite'
make: Nothing to be done for 'all'.
make: Leaving directory '/home/cb/z88dk/testsuite'
make: Entering directory '/home/cb/z88dk/test'
make -C suites all
make[1]: Entering directory '/home/cb/z88dk/test/suites'
make -C string all
make[2]: Entering directory '/home/cb/z88dk/test/suites/string'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/cb/z88dk/test/suites/string'
make -C ctype all
make[2]: Entering directory '/home/cb/z88dk/test/suites/ctype'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/cb/z88dk/test/suites/ctype'
make -C stdio all
make[2]: Entering directory '/home/cb/z88dk/test/suites/stdio'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/cb/z88dk/test/suites/stdio'
make -C stdlib all
make[2]: Entering directory '/home/cb/z88dk/test/suites/stdlib'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/cb/z88dk/test/suites/stdlib'
make -C math all
make[2]: Entering directory '/home/cb/z88dk/test/suites/math'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/cb/z88dk/test/suites/math'
make -C md5 all
make[2]: Entering directory '/home/cb/z88dk/test/suites/md5'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/cb/z88dk/test/suites/md5'
make -C regex all
make[2]: Entering directory '/home/cb/z88dk/test/suites/regex'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/cb/z88dk/test/suites/regex'
make -C sccz80 all
make[2]: Entering directory '/home/cb/z88dk/test/suites/sccz80'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/cb/z88dk/test/suites/sccz80'
make -C zx all
make[2]: Entering directory '/home/cb/z88dk/test/suites/zx'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/cb/z88dk/test/suites/zx'
make[1]: Leaving directory '/home/cb/z88dk/test/suites'
make -C feature all
make[1]: Entering directory '/home/cb/z88dk/test/feature'
make[1]: Leaving directory '/home/cb/z88dk/test/feature'
make -C ../src/common test
make[1]: Entering directory '/home/cb/z88dk/src/common'
t/test
t/test.c:1:t_die_xmalloc:PASS
t/test.c:2:t_die_xcalloc:PASS
t/test.c:3:t_die_xstrdup:PASS
t/test.c:4:t_die_xnew:PASS
t/test.c:5:t_fileutil_path_canon:PASS
t/test.c:6:t_fileutil_path_os:PASS
t/test.c:7:t_fileutil_path_combine:PASS
t/test.c:8:t_fileutil_path_dir:PASS
t/test.c:9:t_fileutil_path_file:PASS
t/test.c:10:t_fileutil_path_ext:PASS
t/test.c:11:t_fileutil_remove_extension:PASS
t/test.c:12:t_fileutil_replace_extension:PASS
t/test.c:13:t_fileutil_xfopen:PASS
t/test.c:14:t_fileutil_xfclose_remove_empty:PASS
t/test.c:15:t_fileutil_xfwrite_bytes:PASS
t/test.c:16:t_fileutil_xfwrite_cstr:PASS
t/test.c:17:t_fileutil_xfwrite_str:PASS
t/test.c:18:t_fileutil_xfwrite_bcount_str_1:PASS
t/test.c:19:t_fileutil_xfwrite_bcount_str_2:PASS
t/test.c:20:t_fileutil_xfwrite_wcount_str_1:PASS
t/test.c:21:t_fileutil_xfwrite_wcount_str_2:PASS
t/test.c:22:t_fileutile_xfwrite_byte:PASS
t/test.c:23:t_fileutile_xfwrite_word:PASS
t/test.c:24:t_fileutile_xfwrite_dword:PASS
t/test.c:25:t_fileutil_file_spew_slurp:PASS
t/test.c:26:t_fileutil_path_mkdir:PASS
t/test.c:27:t_fileutil_path_search:PASS
t/test.c:28:t_fileutil_path_find_all:PASS
t/test.c:29:t_fileutil_path_find_glob:PASS
t/test.c:30:t_strutil_cstr_toupper:PASS
t/test.c:31:t_strutil_cstr_tolower:PASS
t/test.c:32:t_strutil_cstr_chomp:PASS
t/test.c:33:t_strutil_cstr_strip:PASS
t/test.c:34:t_strutil_cstr_strip_compress_escapes:PASS
t/test.c:35:t_strutil_cstr_case_cmp:PASS
t/test.c:36:t_strutil_cstr_case_ncmp:PASS
t/test.c:37:t_strutil_argv_new:PASS
t/test.c:38:t_strutil_argv_sort:PASS
t/test.c:39:t_strutil_spool_add:PASS
t/test.c:40:t_types_bool:PASS
t/test.c:41:t_types_byte:PASS
t/test.c:42:t_types_word:PASS
t/test.c:43:t_types_uint:PASS
t/test.c:44:t_types_min:PASS
t/test.c:45:t_types_max:PASS
t/test.c:46:t_types_abs:PASS
t/test.c:47:t_types_clamp:PASS
t/test.c:48:t_types_num_elems:PASS

-----------------------
48 Tests 0 Failures 0 Ignored 
OK
t/run_tests.sh
ok 1, die_die
ok 2, die_xassert
ok 3, die_check_alloc
ok 4, fileutil_xfopen
ok 5, fileutil_xfwrite_str
ok 6, fileutil_xfwrite_bcount_str
ok 7, fileutil_xfwrite_wcount_str
ok 8, fileutil_xfread
ok 9, fileutil_xfread_str
ok 10, fileutil_xfread_bcount_str
ok 11, fileutil_xfread_wcount_str
ok 12, fileutil_xfseek
1..12
OK
make[1]: Leaving directory '/home/cb/z88dk/src/common'
make -C ../src/z80asm test
make[1]: Entering directory '/home/cb/z88dk/src/z80asm'
make -C dev/z80asm_lib
make[2]: Entering directory '/home/cb/z88dk/src/z80asm/dev/z80asm_lib'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/cb/z88dk/src/z80asm/dev/z80asm_lib'
cp dev/z80asm_lib/z88dk-z80asm.lib .
cp dev/z80asm_lib/z88dk-z80asm.lib /home/cb/z88dk/lib/config//../
perl -S prove --state=slow,save -j9 t/*.t
t/BINARY.t ............... ok                                           
t/cpu.t .................. ok                                           
t/asmpp.t ................ ok                                           
t/issue_1865.t ........... ok                                           
t/issue_2052.t ........... ok                                           
t/preproc.t .............. ok                                           
t/issue_2309.t ........... ok                                           
t/REPTx.t ................ ok                                           
t/ORG.t .................. ok                                           
t/issue_2320_27.t ........ ok                                           
t/DEFB.t ................. ok                                           
t/ALIGN.t ................ ok                                           
t/issue_0312.t ........... ok                                           
t/DEFINE.t ............... ok                                           
t/option_define.t ........ ok                                           
t/DEFC.t ................. ok                                           
t/issue_2320_03.t ........ ok                                           
t/DEFDB.t ................ ok                                           
t/INVOKE.t ............... ok                                           
t/option_date.t .......... ok                                           
t/DEFGROUP.t ............. ok                                           
t/errors.t ............... ok                                           
t/ASMSIZE-ASMTAIL.t ...... ok                                           
t/issue_2317.t ........... ok                                           
t/issue_2308.t ........... ok                                           
t/FLOAT.t ................ ok                                           
t/issue_2279.t ........... ok                                           
t/issue_2320_01.t ........ ok                                           
===(    7770;17  976/?  1136/?  110/?  112/?  50/?  35/?  33/?  ... )===test_t_issue_1874.dir/test.c:5: warning 283: function declarator with no prototype
t/issue_1077.t ........... ok                                           
t/issue_2320_04.t ........ ok                                           
t/issue_1325.t ........... ok                                           
t/z80asm_lib.t ........... ok                                           
t/DEFS.t ................. ok                                           
t/objfile.t .............. ok                                           
t/issue_1874.t ........... ok                                           
t/issue_1856.t ........... ok                                           
t/ifs.t .................. ok                                           
t/LINE.t ................. ok                                           
t/bug_0010.t ............. ok                                           
t/pr_2103.t .............. ok                                           
t/option_library.t ....... ok                                           
t/issue_0222_2045.t ...... ok                                           
t/bug_0049.t ............. ok                                           
t/PUBLIC.t ............... ok                                           
t/issue_0885.t ........... ok                                           
t/INCLUDE.t .............. ok                                           
t/DEFQ.t ................. ok                                           
t/defines.t .............. ok                                           
t/DEFVARS.t .............. ok                                           
t/DEFP.t ................. ok                                           
t/MACRO.t ................ ok                                           
t/issue_2146.t ........... ok                                           
t/ch_0002.t .............. ok                                           
t/issue_2320_23.t ........ ok                                           
t/option_reloc.t ......... ok                                           
t/EXTERN.t ............... ok                                           
t/EXITM.t ................ ok                                           
t/PHASE.t ................ ok                                           
t/issue_0343.t ........... ok                                           
t/modlink_defc.t ......... ok                                           
t/EQU.t .................. ok                                           
t/issue_2320_06.t ........ ok                                           
t/ASSERT.t ............... ok                                           
t/modlink_expressions.t .. ok                                           
t/test_enigma.t .......... ok                                           
t/issue_2320_26.t ........ ok                                           
t/z88dk.t ................ ok                                           
t/DEFW.t ................. ok                                           
t/issue_2320_07.t ........ ok                                           
t/bug_0016.t ............. ok                                           
t/LOCAL.t ................ ok                                           
t/issue_2320_18.t ........ ok                                           
t/modlink_sections.t ..... ok                                           
t/issue_0270.t ........... ok                                           
t/issue_2320_09.t ........ ok                                           
t/zx82.t ................. ok                                           
t/issue_2320_10.t ........ ok                                           
t/jumps.t ................ ok                                           
t/DEFL.t ................. ok                                           
t/bug_20161016T183000.t .. ok                                           
t/issue_0577.t ........... ok                                           
t/option_debug.t ......... ok                                           
t/bug_0014.t ............. ok                                           
t/MODULE.t ............... ok                                           
t/issue_1883.t ........... ok                                           
t/modlink_link_order.t ... ok                                           
t/option_list_sym.t ...... ok                                           
t/issue_0999.t ........... ok                                           
t/issue_2320_11.t ........ ok                                           
t/issue_1928.t ........... ok                                           
t/issue_2320_05.t ........ ok                                           
t/symtab.t ............... ok                                           
t/issue_1869.t ........... ok                                           
t/issue_1276.t ........... ok                                           
t/ch_0012.t .............. ok                                           
t/issue_1574.t ........... ok                                           
t/issue_2320_13.t ........ ok                                           
t/issue_0016.t ........... ok                                           
t/bug_0013.t ............. ok                                           
t/modlink_consolobj.t .... ok                                           
t/bug_0002.t ............. ok                                           
t/issue_2320_12.t ........ ok                                           
t/issue_2068.t ........... ok                                           
t/issue_2320_15.t ........ ok                                           
t/issue_2320_19.t ........ ok                                           
t/issue_2320_22.t ........ ok                                           
t/issue_0341.t ........... ok                                           
t/issue_0850.t ........... ok                                           
t/source_lists.t ......... ok                                           
t/issue_0233.t ........... ok                                           
t/issue_0861.t ........... ok                                           
t/issue_0563.t ........... ok                                           
t/issue_0662.t ........... ok                                           
t/option_ucase.t ......... ok                                           
t/issue_2132.t ........... ok                                           
t/bug_20161017T081100.t .. ok                                           
t/issue_0795.t ........... ok                                           
t/issue_2320_21.t ........ ok                                           
t/issue_0655.t ........... ok                                           
t/issue_2320_28.t ........ ok                                           
t/option_files.t ......... ok                                           
t/bug_0008.t ............. ok                                           
t/issue_1821.t ........... ok                                           
t/option_verbose.t ....... ok                                           
t/sections.t ............. ok                                           
t/issue_0525.t ........... ok                                           
t/empty_source.t ......... ok                                           
t/issue_0717.t ........... ok                                           
t/issue_2320_17.t ........ ok                                           
t/issue_0017.t ........... ok                                           
t/issue_0610.t ........... ok                                           
t/issue_0603.t ........... ok                                           
t/option_binary.t ........ ok                                           
t/bug_0006.t ............. ok                                           
t/option_globaldef.t ..... ok                                           
t/expressions.t .......... ok                                           
t/bug_0005.t ............. ok                                           
t/issue_1221.t ........... ok                                           
t/bug_0011.t ............. ok                                           
t/issue_1572.t ........... ok                                           
t/issue_0441.t ........... ok                                           
t/issue_0326.t ........... ok                                           
t/GLOBAL.t ............... ok                                           
t/issue_2333.t ........... ok                                           
t/issue_2049.t ........... ok                                           
t/bug_0038.t ............. ok                                           
t/LSTON.t ................ ok                                           
t/issue_2040.t ........... ok                                           
t/issue_0578.t ........... ok                                           
t/issue_2320_02.t ........ ok                                           
t/option_env.t ........... ok                                           
t/issue_0252.t ........... ok                                           
t/issue_2043.t ........... ok                                           
t/bug_0018.t ............. ok                                           
t/bug_0044.t ............. ok                                           
t/bug_0047.t ............. ok                                           
t/bug_0020.t ............. ok                                           
t/option_map.t ........... ok                                           
t/bug_0043.t ............. ok                                           
t/option_help.t .......... ok                                           
t/issue_1177.t ........... ok                                           
t/bug_0050.t ............. ok                                           
t/bug_0003.t ............. ok                                           
t/issue_0889.t ........... ok                                           
t/bug_0039.t ............. ok                                           
t/issue_2320_16.t ........ ok                                           
t/issue_0065.t ........... ok                                           
t/ch_0003.t .............. ok                                           
t/bug_0004.t ............. ok                                           
t/bug_20151204T031100.t .. ok                                           
t/modlink_banked.t ....... ok                                           
t/issue_2320_08.t ........ ok                                           
t/option_illegal.t ....... ok                                           
t/issue_1852.t ........... ok                                           
t/issue_0053.t ........... ok                                           
t/issue_2260.t ........... ok                                           
t/issue_2320_20.t ........ ok                                           
t/issue_1573.t ........... ok                                           
t/topic-id-8561.t ........ ok                                           
t/issue_2320_24.t ........ ok                                           
t/option_output.t ........ ok                                           
t/bug_0001.t ............. ok                                           
t/issue_0864.t ........... ok                                           
t/bug_0051.t ............. ok                                           
t/issue_1292.t ........... ok                                           
t/issue_0761.t ........... ok                                           
t/bug_0037.t ............. ok                                           
t/issue_0673.t ........... ok                                           
t/issue_2338.t ........... ok                                           
t/issue_0194.t ........... ok                                           
t/issue_0054.t ........... ok                                           
t/bug_0032.t ............. ok                                           
t/issue_2320_14.t ........ ok                                           
t/option_version.t ....... ok                                           
t/bug_0015.t ............. ok                                           
t/bug_0035.t ............. ok                                           
t/issue_0738.t ........... ok                                           
t/bug_0033.t ............. ok                                           
t/bug_0040.t ............. ok                                           
t/issue_1920.t ........... ok                                           
t/bug_0041.t ............. ok                                           
t/issue_2298.t ........... ok                                           
t/issue_2070.t ........... ok                                           
t/bug_0024.t ............. ok                                           
t/issue_1451.t ........... ok                                           
t/bug_0012.t ............. ok                                           
t/issue_2320_25.t ........ ok       
All tests successful.
Files=207, Tests=28485, 54 wallclock secs ( 1.90 usr  0.26 sys + 30.49 cusr  8.31 csys = 40.96 CPU)
Result: PASS
make[1]: Leaving directory '/home/cb/z88dk/src/z80asm'
make -C ../src/zobjcopy test
make[1]: Entering directory '/home/cb/z88dk/src/zobjcopy'
perl -S prove t/*.t
t/test.t .. ok     
All tests successful.
Files=1, Tests=770,  0 wallclock secs ( 0.04 usr  0.00 sys +  0.34 cusr  0.10 csys =  0.48 CPU)
Result: PASS
make[1]: Leaving directory '/home/cb/z88dk/src/zobjcopy'
make: Leaving directory '/home/cb/z88dk/test'



~/Desktop/zx/try-C/z88dk/test-dis$ z88dk-dis -a  -o 0 48.rom
                    di                                      ;[0000] f3
                    xor     a                               ;[0001] af
                    ld      de,$ffff                        ;[0002] 11 ff ff
                    jp      $11cb                           ;[0005] c3 cb 11
                    ld      hl,($5c5d)                      ;[0008] 2a 5d 5c
                    ld      ($5c5f),hl                      ;[000b] 22 5f 5c
                    jr      $0053                           ;[000e] 18 43

User avatar
dom
Well known member
Posts: 2014
Joined: Sun Jul 15, 2007 10:01 pm

Re: Better Linux Install Experience?

Post by dom »

Looks like you're running on already built tree - try rm bin/* before building.
cborn
Well known member
Posts: 264
Joined: Tue Oct 06, 2020 7:45 pm

Re: Better Linux Install Experience?

Post by cborn »

do you mean z88dk/bin/
its 100% fresh and it does not change any thing

although
now i have TWO skipped tests???

Code: Select all

t/bug_0024.t ............. ok                                           
===(   18634;26  1744/?  10/?  1/?  0/?  0/?  0/?  0/?  0/?  0/? )======# z88dk-zsdcc not found, test skipped
t/issue_1451.t ........... ok                                           
t/issue_0016.t ........... ok                                           
===(   18647;26  1750/?  1/?  0/?  0/?  0/?  0/?  0/?  0/? )============# z88dk-zsdcc not found, test skipped
t/issue_1874.t ........... ok           
Timmy
Well known member
Posts: 356
Joined: Sat Mar 10, 2012 4:18 pm

Re: Better Linux Install Experience?

Post by Timmy »

So I have another computer now and I am trying to install again. I'm using OpenSUSE for this one.

Even after all this time it's hard.

I'm just writing this down in case I need to do this again. Note: I skipped the sdcc part, therefore this is the installation manual for the non-sdcc version.

1) Download the nightly (tgz version), link can be found on the main forum page.
2) unzip in home directory
3) try ./build.sh in z88dk directory
4) obviously it doesn't work the first time. intended. :)
5) read link earlier in this thread: https://github.com/z88dk/z88dk/wiki/ins ... inux--unix
6) sudo zypper install perl libxml2-devel perl-App-cpanminus gcc-c++ m4 (zypper is the apt-get of opensuse, so change this according to your dist)
(you could also try the longer command found in document in 5) i was just too lazy. )
7) use the long "cpanm" command found in the document in 5)
8) eval $(perl -I ~/perl5/lib/perl5/ -Mlocal::lib)
9) export PATH=${PATH}:${HOME}/z88dk/bin
10) export ZCCCFG=${HOME}/z88dk/lib/config
11) again ./build.sh (this can take a while, there's like a 10 seconds time to build each of the computer model, i wonder why)

12) finished. testing this with a test c file
13) install emulators to test output (still need to do this)
Timmy
Well known member
Posts: 356
Joined: Sat Mar 10, 2012 4:18 pm

Re: Better Linux Install Experience?

Post by Timmy »

Perhaps a stupid question, but what is the recommended way to cleanup the installation before upgrading to a newer (nightly) version?

Is "./build.sh -C" before removing the directory and then reinstall the best way to do it?

Or is there an easier way? (I don't really want to build all the targets every time I need to upgrade.)
User avatar
dom
Well known member
Posts: 2014
Joined: Sun Jul 15, 2007 10:01 pm

Re: Better Linux Install Experience?

Post by dom »

No it's a good question! The libraries do take a substantial time to build

The tgz and the zip files for Windows + macOS contain the already built libraries. So if you download that then ./build.sh -l -z should just build the binaries and skip over all the tests (which means the need for the perl gunk goes away).
Timmy
Well known member
Posts: 356
Joined: Sat Mar 10, 2012 4:18 pm

Re: Better Linux Install Experience?

Post by Timmy »

Thanks. Let me see if I understand you. You want me to download the macOS version instead and then do "./build.sh -l -z" (I assume that most of the files are the same in all 3 versions except that this one has the libraries already pre-built.)

In that case I don't have to download the Linux version? That sounds a lot easier already.
User avatar
dom
Well known member
Posts: 2014
Joined: Sun Jul 15, 2007 10:01 pm

Re: Better Linux Install Experience?

Post by dom »

Timmy wrote: Tue Oct 03, 2023 11:52 pm Thanks. Let me see if I understand you. You want me to download the macOS version
No,I was trying to say that the z88dk-latest.tgz version on the nightly site had the libraries in it already though reading back it's not particularly clear.
and then do "./build.sh -l -z"
That's still the case.
stefano
Well known member
Posts: 2084
Joined: Mon Jul 16, 2007 7:39 pm

Re: Better Linux Install Experience?

Post by stefano »

Back to the original "incipit" of this thread, I think it's quite common for most of the C / C++ environment to give a generous headache to whom is willing to set it up for the first time, no matter on which platform you are. A simpler compiler makes life easier but it won't be powerful, in example Microsoft in the nineties launched Quick C, it was a full alternative, extremely simplified to their standards dev environment just to make life easier to beginners. Visual Studio looked easy but it was full of traps and obscure corners in its interface where relevant options had to be configured to achieve the desired result.. you had to trading first, no way.
GCC is complex too, most of the UNIX systems have it mostly installed and configured already but I wouldn't bet on having it ready off the shelf for my needs (think at library and include for dependencies, for example). If you need to get it on Windows or Solaris it will be even trickier.
If you're a BASIC or assembly programmer you are probably not expecting this mess. :D

In example, a friend called me because he was trying to build a z88dk program requiring a pre-built library. The library was built with an old z88dk version and couldn't be linked in.
We got the library source and rebuilt it. But then we discovered that also the library evolved an the program required adjustments to fit with the new API.

It was his first z88dk installation experience, he decided that the overall effort was too much for his goal. :/

The point is that he tried to get it running because of its power.
A simpler kit would have never produced such a mess, even simply because we'd have never had big projects evolving locally.
cborn
Well known member
Posts: 264
Joined: Tue Oct 06, 2020 7:45 pm

Re: Better Linux Install Experience?

Post by cborn »

>> 1 gigabyte is not a big project ? versus ACE or MSX ??

Sorry English is not my first language.

What I mean is that z88dk is full of "options", most of them made z88dk valid for big projects.
Those options are making z88dk slightly less immediate and sligltly more difficult to set up.
I was simply considering that this is quite common in advanced C programming environments.
cborn
Well known member
Posts: 264
Joined: Tue Oct 06, 2020 7:45 pm

Re: Better Linux Install Experience?

Post by cborn »

i think 2 post got mixed up here ???
i wrote 1 line only
cborn wrote: Sat Oct 07, 2023 11:54 pm >> 1 gigabyte is not a big project ? versus ACE or MSX ??

Sorry English is not my first language.

What I mean is that z88dk is full of "options", most of them made z88dk valid for big projects.
Those options are making z88dk slightly less immediate and sligltly more difficult to set up.
I was simply considering that this is quite common in advanced C programming environments.
Timmy
Well known member
Posts: 356
Joined: Sat Mar 10, 2012 4:18 pm

Re: Better Linux Install Experience?

Post by Timmy »

Look, I agree that a development environment can be hard to install.

It's just that the Linux version is a bit harder than the other 2 versions. (Which, now that I think about it, is probably logical. After I found the link of the perl stuff I had to install.)

But it's also the thing that upgrading from an existing version seems to be hard; there were lots of questions raised, and none of them were actually answered. (I can probably guess the answers now so I don't need them. But others might.)

Then again, upgrading isn't a real problem if we have a numbered version again. I understand you are working on it so I'm not worried.

EDIT: But this thread was mostly made by me because I realised one day I will switch my OS to Linux and I will need the help.

EDIT2: I am now typing this on a computer with Linux as OS. Thanks for all the help to get it working.
cborn
Well known member
Posts: 264
Joined: Tue Oct 06, 2020 7:45 pm

Re: Better Linux Install Experience?

Post by cborn »

HI,
well, i am one step back at this moment
i just installed todays nigthly , it upgraded one perl script and then i installed using -t.
with z88dk-dis i still have the same result that -x works but -a seems ignored. but that was sted before.
then tried the -C option as Timmy described and the build did a lot off work again. result after the 'world' test:
cb@cb:~$ zcc +zx -vn testfile.c -o testfile.bin -lndos
error: invalid library file version: file=/home/cb/z88dk/lib/config/../../lib/clibs/ndos.lib, found=18, expected=16

i did not complie with zcc for a while since i worked on other sources. i dont know when this came in or what i should do.

BTW the sdcc link leads to an "Create new page" ??
" you must also have sdcc installed."
https://github.com/z88dk/z88dk/wiki/temp#sdcc1
cborn
Well known member
Posts: 264
Joined: Tue Oct 06, 2020 7:45 pm

Re: Better Linux Install Experience?

Post by cborn »

zcc +zx -vn -lm -startup=31 -zorg0x7000 testMe.c -otestMe -lndos -create-app -Cz --noloader --list --c-code-in-asm
error: invalid library file version: file=/home/cb/z88dk/lib/config/../../lib/clibs/genmath.lib, found=18, expected=16

different file, same error

this is a file that did compile before.
where does the 18 and 16 refeer to ?

do i need Clang?
stefano
Well known member
Posts: 2084
Joined: Mon Jul 16, 2007 7:39 pm

Re: Better Linux Install Experience?

Post by stefano »

The library version depends on the z80asm version, which in turn is being massively improved.
It shouldn't be a problem at all with the z88dk libraries, the way I'm rebuilding them on Windows with mingw:

- move into the libsrc folder
- run make
- mv *.lib ../lib/clibs

If you're willing to keep the older libraries (normally you do not need them), back up z88dk/lib/clibs first

The reason for a version check is that improving z80asm implies extra information to be stored on the libraries (e.g. making more objects exportable or relocatable but local, not globally visible, etc..), which breaks the compatibility.
cborn
Well known member
Posts: 264
Joined: Tue Oct 06, 2020 7:45 pm

Re: Better Linux Install Experience?

Post by cborn »

ok, my momentary z80asm is ahead of my 'old' files
its probably nonsense to create an clibs16 and a clibs18 directory, its not for me anyway.
i still have old install around, i can step back or go to the last official from 2022 if needed
Post Reply