DSL Tips and Tricks :: easier way to compile stuff for DSL



That's because they both are the same file on the harddisk - they have the same inode. (whereas symlinks are additional files that point to some path which takes up space)
Staying with i686 for the moment - I compiled glibc, gcc, binutils, make and the 2.4.26 kernel headers into /opt/build. As a test, I rebooted and tried to compile binutils:
Code Sample
$ export PATH=/opt/build/bin:$PATH
$ export CFLAGS=-I/opt/build/include
$ export LDFLAGS=-L/opt/build/lib
$ cd /usr/src/binutils-2.13
$ ./configure --prefix=/opt/compile --enable-shared --enable-threads --disable-static
Configuring for a i686-pc-linux-gnu host.
Created "Makefile" in /usr/src/binutils-2.13 using "mt-frag"
/ramdisk/opt/build/bin/../lib/gcc-lib/i686-pc-linux-gnu/3.3.5/../../../../i686-pc-linux-gnu/bin/ld: unrecognized option '--as-needed'
/ramdisk/opt/build/bin/../lib/gcc-lib/i686-pc-linux-gnu/3.3.5/../../../../i686-pc-linux-gnu/bin/ld: use the --help option for usage information
collect2: ld returned 1 exit status
*** The command 'gcc -o conftest -I/opt/build/include  -L/opt/build/lib conftest.c' failed.
*** You must set the environment variable CC to a working compiler.

If I set cc -> gcc and/or "export CC=/opt/build/bin/gcc", I get the same error. There is also no sign of a file named conftest.c - any ideas? Does ld need to be compiled in gcc rather than binutils maybe?

Quote
Well, it would be a uci rather than dsl/unc and it would be compiled on dsl rather than (I think) made from debs.
This would be a beautiful thing in my opinion.  I have often thought about making a build system that could be mounted when needed and unmounted when not.
So far it has looked like just too much work than I'm willing to spend on the project, since I have a hard enough time just getting around to doing mydsl packages that nothing else depends on =o)

Quote
/ramdisk/opt/build/bin/../lib/gcc-lib/i686-pc-linux-gnu/3.3.5/../../../../i686-pc-linux-gnu/bin/ld: unrecognized option '--as-needed'
/ramdisk/opt/build/bin/../lib/gcc-lib/i686-pc-linux-gnu/3.3.5/../../../../i686-pc-linux-gnu/bin/ld: use the --help option for usage information
collect2: ld returned 1 exit status
*** The command 'gcc -o conftest -I/opt/build/include  -L/opt/build/lib conftest.c' failed.
*** You must set the environment variable CC to a working compiler.

- this error turned out to be a mismatch between binutils and gcc. To fix it either:
1. Use binutils-2.15 as opposed to binutils-2.13 with gcc-3.3.5 (like debian did in sarge...)
2. Delete "--as-needed and --noas-needed" from /opt/build/lib/gcc-lib/i686-pc-linux-gnu/3.3.5/specs

The "built on dsl" compile environment now seems to compile - at least in the i686 variant. Now to move onto the compiled with compile environment built on dsl in the i486 variant.

I was thinking to include the following, the idea being to use the version that already exists on dsl or, if it doesn't exist, to use the version from sarge rather than woody (as I seem to get a lot of errors that the woody versions are too old):

autoconf-2.59
automake-1.8.5
binutils-2.15
bison-1.875
expat-1.95.2
flex-2.5.31
gcc-core-3.3.5
gcc-g++-3.3.5
glibc-2.3.2 (only headers and libs not in dsl)
glibc-linuxthreads-2.3.2
libtool-1.5.6
linux-2.4.26 headers
m4-1.4.1
make-3.80
ncurses-5.4
patch-2.5.9
pkgconfig-0.17.2
texinfo-4.7

I'll also try to look at compiling the headers for the versions of jpeg, png, tiff, zlib (and maybe) X in dsl.

Any comments on what could be added or removed?

Why not use gcc 3.3.6? It's a bugfix release, so it should be better to use than 3.3.5.

I don't think Texinfo is needed.. Oh and use pkg-config 0.22, many packages want at least 0.20.

Next Page...
original here.