Index: uspace/lib/posix/Makefile
===================================================================
--- uspace/lib/posix/Makefile	(revision 66262a1bc2d53e61780c5f98a184a3b48b3de53f)
+++ uspace/lib/posix/Makefile	(revision ae7d03c05f24b857bbbdbcf3dafbf8ecc6c286ab)
@@ -36,5 +36,7 @@
 
 SPECS = gcc.specs
-LIBC_STARTUP_FILE = $(STARTUP_OBJECT)
+LIBC_LINKER_SCRIPT = $(LIBC_PREFIX)/arch/$(UARCH)/_link.ld
+LIBC_STARTUP_FILE = $(shell sed -n -e 's/^.*STARTUP(\(.*\)).*$$/\1/p' $(LIBC_LINKER_SCRIPT))
+EXPORT_LINKER_SCRIPT = link.ld
 EXPORT_STARTUP_FILE = crt0.o
 
@@ -47,4 +49,5 @@
 	$(LIBRARY).a \
 	$(EXPORT_STARTUP_FILE) \
+	$(EXPORT_LINKER_SCRIPT) \
 	$(SPECS)
 
@@ -52,5 +55,5 @@
 EXTRA_CLEAN = $(INCLUDE_LIBC)
 
-EXTRA_OUTPUT = $(SPECS) $(EXPORT_STARTUP_FILE)
+EXTRA_OUTPUT = $(SPECS) $(EXPORT_LINKER_SCRIPT) $(EXPORT_STARTUP_FILE)
 
 SOURCES = \
@@ -87,5 +90,6 @@
 
 EXPORT_LDFLAGS = \
-	-L$$(HELENOS_EXPORT_ROOT)/lib
+	-L$$(HELENOS_EXPORT_ROOT)/lib \
+	-T link.ld
 
 EXPORT_LDLIBS = \
@@ -107,4 +111,7 @@
 	echo '$(EXPORT_LDLIBS)' >> $@.new
 	mv $@.new $@
+
+$(EXPORT_LINKER_SCRIPT): $(LIBC_LINKER_SCRIPT)
+	sed 's/STARTUP(.*)/STARTUP(crt0.o)/' $< > $@
 
 $(EXPORT_STARTUP_FILE): $(LIBC_STARTUP_FILE)
