pombreda / pgreloaded

Automatically exported from code.google.com/p/pgreloaded
Other
0 stars 0 forks source link

Needs .so files for Linux #15

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1.There is no compiled SDL2 for Linux yet

What is the expected output? What do you see instead?
RuntimeError: could not find any libary for SDL 2

What version of the product are you using? On what operating system?
Ubuntu 12.04, pgreloaded trunk

Original issue reported on code.google.com by techtonik@gmail.com on 17 Jul 2012 at 3:57

GoogleCodeExporter commented 9 years ago
Please ask your vendor for delivering SD2 packages or build and install it 
yourself.
pgreloaded will not provide prebuilt SDL2 libraries for Linux.

Original comment by marcusvonappen@googlemail.com on 17 Jul 2012 at 5:36

GoogleCodeExporter commented 9 years ago
But it provides .dll for Windows. Why?

Original comment by techtonik@gmail.com on 17 Jul 2012 at 4:51

GoogleCodeExporter commented 9 years ago
Building the necessary DLLs on Windows

* is much harder to accomplish for people "wanting things to get done"
* has less possible sources of breakage, such as
  - different glibc, x11, 3rd party dependency installations
  - different Linux distributions, kernels, system drivers, ...
  if done

Most Linux and BSD distributions feature an excellent package management system 
that helps users getting the bits and pieces together in no time. Such a system 
does not exist for Windows. Also, the build toolchains for Linux are easy to 
use (most of the time it's a ./configure && make install), whereas building 
DLLs for Windows involves more complexity (Compiler choice, linkage to the core 
libraries such as MSVCRT, etc.).

The SDL2 libraries as of today not yet officially released for any platform, 
which currently is likely to create some difficulties for less advanced users 
on any platform. Once they are released however and the different package 
management systems integrate them, this issue will be resolved for probably 90% 
of the Linux- and BSD distributions. Not so for Windows systems, for which even 
the choice of a differently build DLL downloaded from whatever location might 
create incompatibilities and problems of unknown dimensions, raising invalid 
issue tickets all over the place.

Original comment by marcusvonappen@googlemail.com on 17 Jul 2012 at 5:12

GoogleCodeExporter commented 9 years ago
Why `./configure && make install` can not be the source of incompatibilities 
and problems of unknown dimensions if not built correctly? IIUC it requires the 
same hassle with getting build dependencies, installing toolchains - it is no 
different from Windows for the ordinary Python user.

I see that google-chrome is just a big download with everything included. Would 
be nice if pgreloaded can be downloaded and installed with pip too. It is 
unsuitable for the testing right now, unfortunately.

Original comment by techtonik@gmail.com on 17 Jul 2012 at 5:26

GoogleCodeExporter commented 9 years ago
`./configure && make install` is just easier to use, incompatibilities might 
arise with it, too, though. Installing the necessary toolchains on Windows is 
more complex (compared to a reasonable other system featuring a package 
management), since you have to grab the different toolchain pieces and other 
3rd part dependencies from numerous locations.

Shipping the source code of all dependencies with pgreloaded and creating a 
build toolchain within it is not an option, since this might create the 
following problems:

* library incompatibilities and conflicts (3rd party deps not shipped (e.g. 
X11))
* toolchain issues (compiler and linker and their settings on different systems)
* environment problems (LD_PRELOADs, library injection (dlopen in SDL libraries)
* upstream code sync maintenance.

Plus, for package maintainers this might create problems with false-positive 
reports on problems as well as the general issue of using not the shipped 
dependencies, but use the ones provided by the system or package management.

pgreloaded draws the line by shipping DLLs that work on Win32 platforms (maybe 
there will be DLLs for MacOSX in the future) since those cause less problems on 
99% of all Windows installations, whereas a set of Linux-based .so files is 
likely to cause more maintenance efforts and compatibility issues for 
developers, package maintainers and users.

Original comment by marcusvonappen@googlemail.com on 17 Jul 2012 at 6:47

GoogleCodeExporter commented 9 years ago
Isn't there such a thing as portable Linux libraries? How about CDE package for 
the time being?

http://www.pgbovine.net/cde.html

Original comment by techtonik@gmail.com on 22 Jul 2012 at 5:55