D.gnu - D support for XCode 2.1 broken?
- Fredrik Olsson (19/19) Aug 06 2005 The environment variables seems not to work after updating from XCode
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= (5/7) Aug 07 2005 They probably changed the names... Changed the project format as well.
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= (4/6) Aug 07 2005 There seems to be some updated Tiger files at http://www.alanz.com/ ?
- Fredrik Olsson (23/32) Aug 07 2005 I have downloaded and tried it out for XCode 2.0, I downgraded from 2.1
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= (7/27) Aug 10 2005 I think I will package it this way in the future (except reversed)
- Alan West (19/36) Aug 10 2005 I based the version on the GCC you compiled GDC with, would be better if...
The environment variables seems not to work after updating from XCode 2.0 to 2.1. HelloDWorld worked for example flawless in 2.0, in 2.1 this error message is generated when building (I include some more than the errors and indent for clarity): /bin/sh -c "MACOSX_DEPLOYMENT_TARGET=10.3 export PATH=\"/opt/gdc/bin:$PATH\" mkdir -p $(BUILD_DIR)/$(EXECUTABLE_FOLDER_PATH) gdc $(INPUT_FILE_NAME) -g -o $(BUILD_DIR)/$(EXECUTABLE_PATH) -Wl,-framework,Carbon" /bin/sh: line 1: BUILD_DIR: command not found /bin/sh: line 1: EXECUTABLE_FOLDER_PATH: command not found /bin/sh: line 1: INPUT_FILE_NAME: command not found /bin/sh: line 1: BUILD_DIR: command not found /bin/sh: line 1: EXECUTABLE_PATH: command not found ld: Undefined symbols: _main regards Fredrik Olsson
Aug 06 2005
Fredrik Olsson wrote:The environment variables seems not to work after updating from XCode 2.0 to 2.1.They probably changed the names... Changed the project format as well. Most likely it needs to be updated for Tiger, and changed to "gdc" (as it is installing as /usr/bin/gdc now, and not in /opt/gdc anymore) --anders
Aug 07 2005
Fredrik Olsson wrote:The environment variables seems not to work after updating from XCode 2.0 to 2.1.There seems to be some updated Tiger files at http://www.alanz.com/ ? (took from http://www.prowiki.org/wiki4d/wiki.cgi?GdcHacking, untested) --anders
Aug 07 2005
Anders F Björklund wrote:Fredrik Olsson wrote:I have downloaded and tried it out for XCode 2.0, I downgraded from 2.1 today when the environment flags failed (Making FreePascal unusable in its current state) so I will not try in 2.1 for a while. But the page states that it is for 2.1 and 2.0 is untested, I can confirm that it works with a few tweaks. 1. Make a symbolik link to gdc using Terminal: cd /usr/bin sudo ln -s gdc gdc-3.3 2. Open the Style tab on the Project inspector in XCode: a. Disable ZeroLink under General->Linking b. Disable Recognize Pascal Strings under GNU C/C++ Compiler->Language. c. Repeat a and b for all styles. 3. Create a new rule for each of your targets: a. Process; D Source Files. b. Using GDC 3.3 Why it is GDC 3.3 when gdc is only version 0.15 can be confusing, but acording to the authoir it necesary to go around the internals of how XCode chooses the compiler process internaly. Oh, well. Happy hacking, I know I will :). regards Fredrik OlssonThe environment variables seems not to work after updating from XCode 2.0 to 2.1.There seems to be some updated Tiger files at http://www.alanz.com/ ? (took from http://www.prowiki.org/wiki4d/wiki.cgi?GdcHacking, untested)
Aug 07 2005
Fredrik Olsson wrote:I have downloaded and tried it out for XCode 2.0, I downgraded from 2.1 today when the environment flags failed (Making FreePascal unusable in its current state) so I will not try in 2.1 for a while. But the page states that it is for 2.1 and 2.0 is untested, I can confirm that it works with a few tweaks.Sounds good, as I have delayed upgrading to Tiger as my main OS myself.1. Make a symbolik link to gdc using Terminal: cd /usr/bin sudo ln -s gdc gdc-3.3I think I will package it this way in the future (except reversed) At least it could be useful when GDC works with GCC 4.0 ? ("soon")2. Open the Style tab on the Project inspector in XCode: a. Disable ZeroLink under General->Linking b. Disable Recognize Pascal Strings under GNU C/C++ Compiler->Language. c. Repeat a and b for all styles.Ah, the weirdness that is Xcode. Project Builder was old, but sane...3. Create a new rule for each of your targets: a. Process; D Source Files. b. Using GDC 3.3 Why it is GDC 3.3 when gdc is only version 0.15 can be confusing, but acording to the authoir it necesary to go around the internals of how XCode chooses the compiler process internaly.GDC 0.15 (for Mac) was built with GCC 3.3, so it (almost) makes sense. --anders
Aug 10 2005
Anders F Björklund wrote:I based the version on the GCC you compiled GDC with, would be better if those spec files where installed with gdcmac, but then you'd need to check which version of Xcode was in use. I intend to fix those minor issues with disabling particular options like ZeroLink and Pascal Strings, I had just got it working after spending a few hours and I'd had enough. Will give the D options proper names too, with their descriptions (currently they are just GCC_D_RELEASE etc). The difference between Xcode 2.0 and 2.1 as far as script based rules, is that you don't use parenthesis anymore in the environment variables but you do in the output files section: mkdir -p $(BUILD_DIR)/$(EXECUTABLE_FOLDER_PATH) gdc $(INPUT_FILE_NAME) -g -o $(BUILD_DIR)/$(EXECUTABLE_PATH) -Wl,-framework,Carbon" becomes: mkdir -p $BUILD_DIR/$EXECUTABLE_FOLDER_PATH gdc $INPUT_FILE_NAME -g -o $BUILD_DIR/$EXECUTABLE_PATH -Wl,-framework,Carbon"cd /usr/bin sudo ln -s gdc gdc-3.3I think I will package it this way in the future (except reversed) At least it could be useful when GDC works with GCC 4.0 ? ("soon")2. Open the Style tab on the Project inspector in XCode: a. Disable ZeroLink under General->Linking b. Disable Recognize Pascal Strings under GNU C/C++ Compiler->Language. c. Repeat a and b for all styles. Why it is GDC 3.3 when gdc is only version 0.15 can be confusing, but acording to the authoir it necesary to go around the internals of how XCode chooses the compiler process internaly.GDC 0.15 (for Mac) was built with GCC 3.3, so it (almost) makes sense.
Aug 10 2005