All times are UTC+02:00




Post new topic  Reply to topic  [ 190 posts ]  Go to page 1 2 3 4 519 Next
Author Message
PostPosted: Tue Jun 04, 2013 5:34 pm 
Site Admin
User avatar

Joined: Mon Mar 17, 2008 1:40 am
Posts: 11425
Note: THESE VERSIONS ARE FOR TESTING ONLY, AND DEFINITELY NOT SUITABLE FOR PRODUCTION USE. (Except maybe the command line version).

As you may have noticed, there haven't been Linux versions since I released version 7.00. Also, the old Linux versions were somewhat problematic (on some systems people had to install over 60 MB of libraries to get the thing to work; multi-threading was not supported, the GUI looked ugly and some things in it didn't work etc.)

There were about 250 places in the code where I was checking the OS, and almost all of them are now moved to a separate "OS" library or at least implemented for both Windows and Linux. That also means that things like multi-threading should work now. Sound card support still needs to be added!

I've tried to make things work again, and here's a first version. There are still 2 versions:
1. Command line version. This version should be more or less ok (except that VERBOSE mode doesn't work).
2. GUI version. The GUI should load, but this version crashes when you resize the screen and mouse and keyboard events are not handled properly.

Why am I posting these unfinished versions? Because I would like to know if the issues that existed with earlier versions (mainly the library problem) are solved now. I *hope* that these versions will run immediately without requiring any external product installs.

Normal command line version: http://www.stereotool.com/download/ster ... ETA724-003
GUI version: http://www.stereotool.com/download/ster ... ETA724-003
HINT: Save them and then chmod to 755 or something similar!

So my question is: Do these versions at least start up without issues?


Top
   
PostPosted: Tue Jun 04, 2013 5:45 pm 

Joined: Sat Dec 15, 2012 1:47 am
Posts: 42
Location: Some campus radio station, Germany
Quote:
So my question is: Do these versions at least start up without issues?
I had to install these libraries:
Code:
# apt-get install libgtk2.0-0:i386 libcurl3-gnutls:i386
But then I can start the GUI version with 2 filenames as arguments. It will crash when I move the mouse pointer into its window. Will you add Pulseaudio support next? That would be kinda cool and should not be very hard at all :-)


Top
   
PostPosted: Tue Jun 04, 2013 7:11 pm 
Site Admin
User avatar

Joined: Mon Mar 17, 2008 1:40 am
Posts: 11425
I see that I can link libcurl statically, so that should be easy to fix.
Libgtk is more problematic, I have tried to build wxwidgets (which I use for the gui) for X11 instead of GTK+ but for some reason it didn't work (it builds fine but i don't get a gui) - I guess I should look into that again.


Top
   
PostPosted: Tue Jun 04, 2013 7:47 pm 

Joined: Sat Dec 15, 2012 1:47 am
Posts: 42
Location: Some campus radio station, Germany
Quote:
I see that I can link libcurl statically, so that should be easy to fix.
Libgtk is more problematic, I have tried to build wxwidgets (which I use for the gui) for X11 instead of GTK+ but for some reason it didn't work (it builds fine but i don't get a gui) - I guess I should look into that again.
You can use ldd to see which libraries were linked dynamically into the binary, those are a lot currently. But having dynamic requirements is fine, as long as the ABI is stable or at least upwards compatible. Then you can ship the same binary for multiple systems. You would need a rather old build environment to benefit from this approach. If you want to target multiple systems with different incompatible ABIs, you can use different chroot environments to build the code. Those can be generated quite easily for Debian/Ubuntu based systems using debootstrap.


Top
   
PostPosted: Tue Jun 04, 2013 9:02 pm 
Site Admin
User avatar

Joined: Mon Mar 17, 2008 1:40 am
Posts: 11425
I see that libcurl is causing a whole bunch of dependencies, I'm now trying to reduce those by doing a custom Curl build with --disable-almost-everything. For wxWidgets, I'll have to figure out how to get the thing to work with --with-x11 instead of --with-gtk. I need almost nothing (creating of a few windows, displaying images in them and getting mouse and keyboard input) so I had expected it to work immediately - it's probably a good idea to fix the crashes first, since they might also have something to do with it.


Top
   
PostPosted: Tue Jun 04, 2013 9:31 pm 
Site Admin
User avatar

Joined: Mon Mar 17, 2008 1:40 am
Posts: 11425
Finally got the debugger working properly (if you do a debug build and then run 'strip' on the file afterwards you don't see much lol). Cause of crashes is known now, hope that I'll be able to fix them soon.


Top
   
PostPosted: Tue Jun 04, 2013 10:05 pm 
Site Admin
User avatar

Joined: Mon Mar 17, 2008 1:40 am
Posts: 11425
Note: THESE VERSIONS ARE FOR TESTING ONLY, AND DEFINITELY NOT SUITABLE FOR PRODUCTION USE. (Except maybe the command line version). SEE FIRST POST.

- libcurl dependency is gone
- GUI should no longer crash (there was an alignment issue, if the window width was not a multiple of 4 some SSE2 code crashed).
Normal command line version: http://www.stereotool.com/download/ster ... ETA724-004
GUI version: http://www.stereotool.com/download/ster ... ETA724-004
HINT: Save them and then chmod to 755 or something similar!

I'll try to get rid of the gtk stuff as well, then I'll start fixing the GUI behavior (mouse/keyboard mainly).


Top
   
PostPosted: Tue Jun 04, 2013 10:16 pm 

Joined: Sat Dec 15, 2012 1:47 am
Posts: 42
Location: Some campus radio station, Germany
Quote:
I'll try to get rid of the gtk stuff as well, then I'll start fixing the GUI behavior (mouse/keyboard mainly).
Hehe, first got a segfault because I downloaded the file before your upload was finished.

It runs here and needs only 53 dynamic libs :-) I am not sure whether gtk can be made to compile statically because it depends also on non-binary resources that are loaded from the file system (like theming files).

Some sliders behave weirdly when I hover the mouse through the window: they seem to change their value even though I did not click them.


Top
   
PostPosted: Tue Jun 04, 2013 11:45 pm 
Site Admin
User avatar

Joined: Mon Mar 17, 2008 1:40 am
Posts: 11425
Yes the files are pretty big :) I started posting before the upload was finished. In the Windows versions I use UPX, I tried that for the Linux versions as well but ldd didn't work anymore...

I just discovered that after running a ./configure for WxWidgets I apparently need to do a make clean or make all, not just make. That might explain the issues I was having. Working on it...


Edit: About sliders and mouse: I know, that's exactly the thing that I still have to implement :)


Top
   
PostPosted: Thu Jun 06, 2013 2:05 am 
Site Admin
User avatar

Joined: Mon Mar 17, 2008 1:40 am
Posts: 11425
Note: THESE VERSIONS ARE FOR TESTING ONLY, AND DEFINITELY NOT SUITABLE FOR PRODUCTION USE. (Except maybe the command line version). SEE FIRST POST.

- Slider and mouse are better (not completely ok but usable)
- Keyboard works as well
- Some more code cleanups
Normal command line version: http://www.stereotool.com/download/ster ... ETA724-005
GUI version: http://www.stereotool.com/download/ster ... ETA724-005
HINT: Save them and then chmod to 755 or something similar!

The GTK stuff is difficult to get rid of (it seems that there's a bug in wxWidgets when using X11, the site warns about bugs in it and I think that must be the reason why it doesn't work.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 190 posts ]  Go to page 1 2 3 4 519 Next

All times are UTC+02:00


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Limited