digitalmars.D.bugs - [Issue 1327] New: Long environment variable value causes link failure.
- d-bugmail puremagic.com (64/64) Jul 09 2007 http://d.puremagic.com/issues/show_bug.cgi?id=1327
- d-bugmail puremagic.com (8/8) Jul 09 2007 http://d.puremagic.com/issues/show_bug.cgi?id=1327
- d-bugmail puremagic.com (10/10) Jul 09 2007 http://d.puremagic.com/issues/show_bug.cgi?id=1327
- d-bugmail puremagic.com (8/8) Jul 10 2007 http://d.puremagic.com/issues/show_bug.cgi?id=1327
http://d.puremagic.com/issues/show_bug.cgi?id=1327 Summary: Long environment variable value causes link failure. Product: D Version: 1.015 Platform: PC OS/Version: Windows Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: bugzilla digitalmars.com ReportedBy: tortoise_74 yahoo.co.uk Hi I had some problems getting DMD to play nicely with cygwin. It turns out the problem was down to a long environment variable value. As a newcomer to D I was very confused. It was not at all obvious what was happening. Regards, Bruce. F:\projects\Agenda>c:\cygwin\bin\make dtest2 dmc hello.d -o hello c:\dmd\bin\..\..\dm\bin\link.exe hello,,,user32+kernel32/noi; c:\dmd\bin\..\..\dm\bin\link.exe hello,,,user32+kernel32/noi; hello.d: hello.d: link hello+hello,,,user32+kernel32/noi; F:\projects\Agenda>set GCCINCDIR="C:\cygwin\usr\include;C:\cygwin\usr\include\sy s;C:\cygwin\usr\include\w32api;C:\cygwin\usr\local\i686-pc-cygwin\include;C:\cyg win\usr\local\i686-pc-cygwin\include\sys;C:\cygwin\usr\include\c++\3.4.4;C:\cygw in\usr\include\c++\3.4.4\i686-pc-cygwin;C:\cygwin\usr\include\c++\3.4.4\i686-pc- cygwin\bits;C:\cygwin\lib\gcc-lib\i686-pc-cygwin\3.4.4\include;C:\cygwin\usr\inc lude;C:\cygwin\usr\include\sys;C:\cygwin\usr\include\w32api;C:\cygwin\usr\local\ i686-pc-cygwin\include;C:\cygwin\usr\local\i686-pc-cygwin\include\sys;C:\cygwin\ usr\include\c++\3.4.4;C:\cygwin\usr\include\c++\3.4.4\i686-pc-cygwin;C:\cygwin\u sr\include\c++\3.4.4\i686-pc-cygwin\bits;C:\cygwin\lib\gcc\i686-pc-cygwin\C:\cyg win\usr\include;C:\cygwin\usr\include\sys;C:\cygwin\usr\include\w32api;C:\cygwin \usr\local\i686-pc-cygwin\include;C:\cygwin\usr\local\i686-pc-cygwin\include\sys ;C:\cygwin\usr\include\c++\3.4.4;C:\cygwin\usr\include\c++\3.4.4\i686-pc-cygwin; C:\cygwin\usr\include\c++\3.4.4\i686-pc-cygwin\bits;C:\cygwin\lib\gcc-lib\i686-p c-cygwin\3.4.4\include;C:\cygwin\usr\include;C:\cygwin\usr\include\sys;C:\cygwin \usr\include\w32api;C:\cygwin\usr\local\i686-pc-cygwin\include;C:\cygwin\usr\loc al\i686-pc-cygwin\include\sys;C:\cygwin\usr\include\c++\3.4.4;C:\cygwin\usr\incl ude\c++\3.4.4\i686-pc-cygwin;C:\cygwin\usr\include\c++\3.4.4\i686-pc-cygwin\bits \include;C:\cygwin\lib\gcc\i686-pc-cygwin\3.4.4\include\c++;;C:\cygwin\lib\gcc\i 686-pc-cygwin\3.4.4\include\c++\i686-pc-cygwin;C:\cygwin\lib\gcc\i686-pc-cygwin\ 3.4.4\include" F:\projects\Agenda>c:\cygwin\bin\make dtest2 dmc hello.d -o hello c:\dmd\bin\..\..\dm\bin\link.exe hello,,,user32+kernel32/noi; OPTLINK (R) for Win32 Release 7.50B1 Copyright (C) Digital Mars 1989 - 2001 All Rights Reserved phobos.lib Warning 2: File Not Found phobos.lib OPTLINK : Warning 23: No Stack hello.obj(hello) Error 42: Symbol Undefined _main hello.obj(hello) Error 42: Symbol Undefined __acrtused_con OPTLINK : Warning 134: No Start Address --- errorlevel 2 hello.d: --- errorlevel 2 make: *** [dtest2] Error 2 --
Jul 09 2007
http://d.puremagic.com/issues/show_bug.cgi?id=1327 tortoise_74 yahoo.co.uk changed: What |Removed |Added ---------------------------------------------------------------------------- Version|1.015 |2.002 ------- Comment #1 from tortoise_74 yahoo.co.uk 2007-07-09 18:51 ------- I can confirm this also happens on the latest version (v2.002) --
Jul 09 2007
http://d.puremagic.com/issues/show_bug.cgi?id=1327 ------- Comment #2 from wbaxter gmail.com 2007-07-09 19:10 ------- Ouch. That must have taken ages to figure out. Actually it seems to be related to both the variable name and its value. For instance "XCCINCDIR" worked ok, and many values of GCCINCDIR are ok for me. But other variables caused the problem too, like "FOOINCDIR". I can't really determine a pattern. In any event you should probably use 'dmd' to compile D code and not 'dmc' (which is a C++ compiler) ;-) --
Jul 09 2007
http://d.puremagic.com/issues/show_bug.cgi?id=1327 deewiant gmail.com changed: What |Removed |Added ---------------------------------------------------------------------------- Version|2.002 |1.015 ------- Comment #3 from deewiant gmail.com 2007-07-10 03:49 ------- Keep the version at the oldest, not the newest, relevant value, please. --
Jul 10 2007