bugGNUstep - Bugs: bug #17226, Libraries and headers in...

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #17226: Libraries and headers in $GNUSTEP_USER_ROOT are ignored

Submitted by:  Nikolaus Waxweiler <madleser>
Submitted on:  Fri 28 Jul 2006 04:38:47 PM UTC  
 
Category: MakefilesSeverity: 3 - Normal
Item Group: NoneStatus: Works For Me
Privacy: PublicAssigned to: None
Open/Closed: Closed

Fri 28 Jul 2006 06:51:11 PM UTC, comment #3:

This is a duplicate of bug #16010, which was fixed by fedor here: http://svn.gna.org/viewcvs/gnustep?rev=22753&view=rev

Hubert Chathi <uhoreg>
Fri 28 Jul 2006 06:50:07 PM UTC, comment #2:

Mh! Thanks for the pointer to messages=yes, it revealed the cause of the bug I described in my GNUstep.conf: GNUSTEP_USER_DIR=GNUstep. For some reason, this doesn't work if it's not an absolute path. 'gmake messages=yes' says:

cc main.m <options> <some header paths> -IGNUstep/Library/Headers <other header paths>
cc <options> <files> -LGNUstep/Library/Libraries <other library paths>

A 'gmake messages=yes GNUSTEP_USER_DIR=$HOME/GNUstep' works as intended. I'll try the SVN version later.

> it's -lgnustep-gui, not -lgnustep-gui_d as the make package automatically adds the '_d' where necessary.

Interesting, this should be mentioned in the make package manual.

Nikolaus Waxweiler <madleser>
Fri 28 Jul 2006 05:48:03 PM UTC, comment #1:

Current SVN works fine when I try it, and afaik old releasaes are fine too.

In the bug report ...

2. Compile an app depending on above library (e.g. GNUMail or Ink with 'Ink_GUI_LIBS = -lgnustep-gui_d')

is incorrect ... If you want to link with the gui library, it's -lgnustep-gui, not -lgnustep-gui_d as the make package automatically adds the '_d' where necessary.

The make package already puts the appropriate -I and -L options in place for headers and libraries to be found in the user domain, so you don't need to explicitly specify them in your makefiles either. You can pass 'messages=yes' to make to see exactly what options are being used, but I think the suggested 'workaround' just does what the make package already does for you anyway.

I tried the GNUMail/Pantomime example in case the GNUMail makefiles were faulty, but it worked fine (current GNUMail from CVS).

Richard Frith-Macdonald <CaS>
Project Member
Fri 28 Jul 2006 04:38:47 PM UTC, original submission:

1. Install some library in $GNUSTEP_USER_ROOT (e.g. Pantomime or gnustep-gui with debug=yes)
2. Compile an app depending on above library (e.g. GNUMail or Ink with 'Ink_GUI_LIBS = -lgnustep-gui_d')

GNUMail won't find Pantomime's headers and in the case of Ink, the linker won't find libgnustep-gui_d. A Workaround would be to insert
ADDITIONAL_INCLUDE_DIRS=-I$(GNUSTEP_USER_ROOT)/Library/Headers
ADDITIONAL_LIB_DIRS=-L$(GNUSTEP_USER_ROOT)/Library/Libraries
into the makefiles, but this is bothersome.
A quick look at common.make revealed that $GNUSTEP_USER_ROOT is actually taken into consideration, but I'm not a gmake expert..

FreeBSD 6.1, gcc 3.4.4, gnustep-make-1.12.0, gmake-3.81_1

Nikolaus Waxweiler <madleser>

 

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

CC list is empty

 

Do you think this task is very important?
If so, you can click here to add your encouragement to it.
This task has 0 encouragements so far.

Only logged-in users can vote.

 

Please enter the title of George Orwell's famous dystopian book (it's a date):

 

 

Follow 2 latest changes.

Date Changed By Updated Field Previous Value => Replaced By
Fri 28 Jul 2006 05:48:03 PM UTCCaSOpen/ClosedOpen=>Closed
Fri 28 Jul 2006 05:48:02 PM UTCCaSStatusNone=>Works For Me

Back to the top


Powered by Savane 3.1-cleanup1