I compiled CDE 2.5.1 from pkgsrc on NetBSD9.3/sparc64.
After startup, the desktop appears, but there is an error with tooltalk:
*** ERROR(4): Dtwm: PID 1187: Thu Feb 16 22:55:15 2023
"Could not connect to ToolTalk:
TT_ERR_NOMP No ttsession process is running, probably because tt_open() has not been called yet. If this code is returned from tt_open() it means ttsession could not be started, which generally means ToolTalk is not installed on this system.
"[330 bytes]
After that, CDE forces to shutdown and i find a ttession.core has been produced.
Please tell me what info is needed to debug this.
Do you have
/etc/rc.confwith "rpcbind=YES" and isrpcbindrunning?Do you have your hostname in
/etc/hosts?/etc/rc.conf has:
/etc/hosts has:
rpcbind is running and ttsession seems to coredump.
Try with:
So that the loop address is associated with your official hostname and aliased to the localhost, rather than the opposite.
I changed /etc/hosts accordingly, but ttsession still keeps core dumping on CDE startup; see attached picture
Is this helpful for analysis?
IIRC a bus error on sparc means an unaligned access... I don't know if anyone has tried CDE on a sparc64, maybe on linux. Sorry - this will require someone with the machine (or one like it) to figure out.
Is there something i can do - like a debug build with symbols? Can't find information on it...also configure seems to have no option for a debug build?
I built from the master branch and ttesssion started normally.
The SPARC64 machine is emulated by QEMU.
I can not reproduce it unfortunately. How did you build and run it - afaik there is no framebuffer for QEMU SPARC64?
I built it from pkgsrc/wm/cde by replacing the source with git master checkout.
Then in a running lxde desktop i started "./ttsession" without options.
This gives the text output and a core dump leading to the above gdb analysis:
./ttsession[16309]: Can't contact alleged session (host=127.0.0.1, pid=17368); assuming it crashed...
I also tried to build the git master checkout outside of pkgsrc, but this fails in a lot of ways - the guide posted here under NetBSD is somehow not applicable fully to a NetBSD9.3 system using pkgsrc. It is incorrect or outdated in many places. If you went that route i would appreciate if you could guide me through the build process.
Yes, I actually used a VNC to test it in QEMU.
Just use the real machine if you have a workstation.
I largely followed this link for building. However I didn't patch any source code. I guess the errors that you met are mainly caused by lacking libraries. Please refer to the above link to install all requirements. Another key is the gmake -- always type "gmake" instead of "make" on the command line.
I have a set of scripts I maintain to build CDE as formal packages on multiple platforms. It has a section which validates the dependencies for each platform and adds custom configuration. I don't use pkgsrc, I always use precompiled binary packages.
Main documentation: https://sourceforge.net/p/rhubarb-pi/wiki/pkg-cdesktopenv/
The NetBSD specific section validates the dependencies and also sets up a configuration parameter for tcl
https://sourceforge.net/p/rhubarb-pi/code/HEAD/tree/trunk/pkg/cdesktopenv/os/NetBSD.cf
Eg
and
This common script builds 2.5.1 on NetBSD 9.3 on x86_64, i386, aarch64 and earmv7hf
The main processor specific portability problems I have had are often with the KSH implementation, typically the handling of va_args. If 2.5.1 does not work then you could try going back to the IMAKE based 2.4.0 release.
This appears to be a problem specifically with tooltalk/RPC...
I have used QEMU to build a riscv64 version, for that I used an Xserver on the actual host system. That took over three days to compile 2.4.0.