AlphaTester gesucht: Chattet hier jemand per Matrix?

dettus

Bicycle User
Derzeit habe ich wieder ein Programmier Projekt.
Dieses Mal versuche ich gerade einen Matrix-Client unter ncurses zu schreiben.

Die ersten Schritte habe ich schon gemacht, aber bisher habe ich es natuerlich nur mit einem einzigen Server und nur unter OpenBSD getestet.

Hat jemand von Euch Lust und den Mut es mal zu versuchen?

Auf
https://dettus.net/nmatrixc

habe ich gerade die Version 0.01 hochgeladen.
 
habs mal probiert, unter Debian 12
autotools sind 1.16.5, daran scheitert auch das 'make', der export der Versionsnummer hilft leider nicht;
 
Alles klar! Danke!
Ist tatsaechlich das erste Mal, dass ich die Autotools benutze.

Ich werde das bei der naechsten Release besser machen.

Bis dahin...
Kannst du nochmal die Webseite angucken? Ich habe da eine Anleitung geschrieben, wie es bei dir klappen koennte.
 
Alles klar.
Der matrix.org ist tatsaechlich ein moeglicher home-server.

Auf seine REST-API kann ich zugreifen:



Denen gegenueber muss man sich authentifizieren.
Er sagt mir auch schon, dass er Password, SSO und token akzeptiert.
LEIDER habe ich seine gewuenschte Geschmacksrichtung von SSO noch nicht implementiert. :(

Schade!


Beim Zediria muss ich mich mit username+Passwort einloggen, da habe ich aber keinen account.
 
Beim Zediria muss ich mich mit username+Passwort einloggen, da habe ich aber keinen account.


Äh ne! Du und alle anderen Menschen auf der Welt außer mir, da hatten wir uns wohl falsch verstanden, der ist für mich ganz exklusiv da, keine registrierung möglich.
(Da läuft ein ganz normaler synapse matrix-server ohne große sonder-config)

Dachte du hättest einen funktionierenden Account und suchst jemanden zum Testschreiben oä, sorry.

Ich könnte dir aber einen erstellen ODER selbst mal den Dettus nmatrixc ausprobieren, das könnte ich mal am Wochenende machen.
 
Super!
teste doch bitte erstmal meinen client.
wenn es dann klemmt, koennen wir immer noch ueber einen account fuer mich reden.
 
Kannst du nochmal die Webseite angucken? Ich habe da eine Anleitung geschrieben, wie es bei dir klappen koennte.
Habs jetzt mal auf meiner build-vm (FreeBSD 14.3, latest) nochmal getestet, mit deiner 0.03 Version, scheinbar hab ich noch Probleme mit den Abhängigkeiten (curl ist in meiner Std-Install mit installiert, ein separates libcurl Paket scheint es nicht zu geben (alles mit pkg, nix ports))
:
Code:
test0r@lab03:~ $ doas pkg install autoconf automake json-c sqlite3 ncurses

Das System meckert dann im folgenden ./configure Lauf trotzdem fehlende libcurl, json-c und sqlite3 an:

Code:
configure: error: Missing libraries. Please install libcurl, json-c and sqlite3.

Welche Pakete müsste man da noch installieren? :confused:
(oder seh ich den Wald wg der ganzen Bäume grad mal wieder nicht (kann bei mir leicht mal vorkommen)??)

Wenn ich die beiden exports durchführe, dann meckert das System an, dass ich anstatt dem autoreconf ein autoupdate durchführen soll:

Code:
test0r@lab03:~/nmatrixc_0.03 $ export AUTOCONF_VERSION=2.65                                                                                     
test0r@lab03:~/nmatrixc_0.03 $ export AUTOMAKE_VERSION=1.17                                                                                     
test0r@lab03:~/nmatrixc_0.03 $ autoreconf                                                                                                       
configure.ac:60: warning: AC_OUTPUT should be used without arguments.                                                                           
configure.ac:60: You should run autoupdate.                                                                                                     
configure.ac:41: error: possibly undefined macro: AC_MSG_RESULT                                                                                 
      If this token and others are legitimate, please use m4_pattern_allow.                                                                     
      See the Autoconf documentation.                                                                                                           
autoreconf2.72: error: /usr/local/bin/autoconf2.72 failed with exit status: 1                                                                   
test0r@lab03:~/nmatrixc_0.03 $ autoupdate

Es fällt dann aber hernach beim ./configure trotzdem (oder grade deswegen?) auf die Nase:

Code:
test0r@lab03:~/nmatrixc_0.03 $ ./configure                                                                                                      
checking for a BSD-compatible install... /usr/bin/install -c                                                                                    
checking whether sleep supports fractional seconds... yes                                                                                       
checking filesystem timestamp resolution... 2                                                                                                   
checking whether build environment is sane... yes                                                                                               
checking for a race-free mkdir -p... mkdir -p                                                                                                   
checking for gawk... no                                                                                                                         
checking for mawk... no                                                                                                                         
checking for nawk... nawk                                                                                                                       
checking whether make sets $(MAKE)... yes                                                                                                       
checking whether make supports nested variables... yes                                                                                          
checking xargs -n works... yes                                                                                                                  
checking for gcc... no                                                                                                                          
checking for cc... cc                                                                                                                           
checking whether the C compiler works... yes                                                                                                    
checking for C compiler default output file name... a.out                                                                                       
checking for suffix of executables...                                                                                                           
checking whether we are cross compiling... no                                                                                                   
checking for suffix of object files... o                                                                                                        
checking whether the compiler supports GNU C... yes                                                                                             
checking whether cc accepts -g... yes                                                                                                           
checking for cc option to enable C11 features... none needed                                                                                    
checking whether cc understands -c and -o together... yes                                                                                       
checking whether make supports the include directive... yes (GNU style)                                                                         
checking dependency style of cc... gcc3                                                                                                         
checking for ranlib... ranlib                                                                                                                   
./configure: PKG_PROG_PKG_CONFIG: not found                                                                                                     
./configure: 4422: Syntax error: word unexpected (expecting ")")
 
ICH VERMUTE MAL, dass pkg-config bei dir auch noch nicht installiert ist.

Das benutze ich dann im configure-Skript um nach den Libraries zu suchen.


Wegen der Pakete, die diese Libraries enthalten:
Konkret fehlen im an der Stelle folgende Files:

libcurl.pc, json-c.pc, sqlite3.pc (Und wahrscheinlich auch ncurses.pc)

Ich weiss nicht, welches Tool es unter FreeBSD gibt, um die Pakete zu suchen, die diese Files enthalten.

Unter Linux ist es

apt-file search libcurl.pc

Unter OpenBSD

pkglocate libcurl.pc


Kannst du das nochmal probieren?
Ansonsten setze ich mir am Wochenende nochmal eine VM mit FreeBSD auf.
 
ICH VERMUTE MAL, dass pkg-config bei dir auch noch nicht installiert ist.

da steh ich grad wieder etwas aufm Schlauch: es scheint dafür kein Paket zu geben, auch in den Ports nicht - nur eins von fpc (freepascal) welches aber in lang/fpc gemerged wurde, aber das wirds dann doch nicht sein?

auch keine Spur von den *.pc Dateien...
Ich weiss nicht, welches Tool es unter FreeBSD gibt, um die Pakete zu suchen, die diese Files enthalten.

Unter Linux ist es

apt-file search libcurl.pc

Unter OpenBSD

pkglocate libcurl.pc

das was dem in FreeBSD am nächsten käme müsste pkg which sein:

Code:
test0r@lab03:~ $ doas pkg which -g -m libcurl.pc
libcurl.pc was not found in the database
test0r@lab03:~ $ doas pkg which -g -m json-c.pc
json-c.pc was not found in the database
test0r@lab03:~ $ doas pkg which -g -m sqlite3.pc
sqlite3.pc was not found in the database
 
Okay!
Wir kommen der Sache schon naeher! :)


pkg-config kenne ich von Linux, von OpenBSD und von NetBSD.
Bei Freebsd scheint es das hier zu sein: https://www.freshports.org/devel/pkgconf

Die libcurl scheint in diesem Paket zu stecken:

sqlite3 ist das hier:

json-c hier:

fehlt noch ncurses:
 
Danke - das war der Baum welcher vor meiner Nase stand und verhinderte, dass ich den ganzen Wald sah... pkgconf...

Habs installiert (aus den Packages) - die anderen Abhängigkeiten curl, json-c, ncurses und sqlite3 waren schon installiert (auch als pkg, siehe weiter oben in meinem Beitrag)

Trotzdem fällt er noch beim configure raus:

Code:
...
checking dependency style of cc... gcc3
checking for ranlib... ranlib
./configure: PKG_PROG_PKG_CONFIG: not found
./configure: 4422: Syntax error: word unexpected (expecting ")")
 
habs heute mit genau dieser 0.03 Version nochmal probiert, jetzt hats gebaut;
scheinbar waren da Artefakte von den vorigen Kompilierversuchen am verhindern - ich hab das alte Verzeichnis weggeworfen und den tarball neu entpackt;
Vorgehen wie im INSTALL File beschrieben, mitsamt bootstrap am Anfang -> success!
 
super!
die autotools sind leider doch fummliger als ich gehofft hatte! :)
sorry!

oehm... da du das mit 0.03 hingekriegt hast.. heute habe ich 0.05 veroeffentlich. mit der kannst du dich jetzt auch auf dem matrix.org server einloggen.

und bei den bsdforen mitchatten. ;)
 
Die Version 0.05 fällt erstmal beim make auf die Nase (bootstrap und configure haben noch funktioniert), weil diese Version scheinbar explizit schon Version 1.18 der Autotools erwartet:
Code:
┌─[test0r@lab03] - [~/nmatrixc_0.05] - [2025-11-23 04:23:45]
└─[0] make
Making all in libmatrixc
cd .. && make  am--refresh
CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh '/home/test0r/nmatrixc_0.05/build-aux/missing' aclocal-1.18 
/home/test0r/nmatrixc_0.05/build-aux/missing: aclocal-1.18: not found
WARNING: 'aclocal-1.18' is missing on your system.
         You should only need it if you modified 'acinclude.m4' or
         'configure.ac' or m4 files included by 'configure.ac'.
*** Error code 127

Stop.
make[2]: stopped in /home/test0r/nmatrixc_0.05
*** Error code 1

Stop.
make[1]: stopped in /home/test0r/nmatrixc_0.05/libmatrixc
*** Error code 1

Stop.
make: stopped in /home/test0r/nmatrixc_0.05

man muss dann explizit die auto*-Version setzen (hab nicht getestet, ob eins der beiden und wenn ja, welches gereicht hätte):

Code:
export AUTOCONF_VERSION=2.65
export AUTOMAKE_VERSION=1.17

dann kompilierts durch
 
Zurück
Oben