BSD Config

Tyro[17] ridimz at yahoo.com
Mon Nov 11 10:02:36 PST 2013


On 11/11/13, 11:05 AM, Joakim wrote:
> On Sunday, 10 November 2013 at 19:09:37 UTC, Tyro[17] wrote:
>> On 11/10/13, 12:16 PM, nazriel wrote:
>>> On Sunday, 10 November 2013 at 16:49:18 UTC, Tyro[17] wrote:
>>>> What is the proper way to configure DMD for use on BSD systems?
>> [Snip]
>>>
>>> Try running it with gmake
>>>
>>
>> Ok... Thanks for the pointer. I tried it and got much further than
>> before. Pays to use the right tool for the job. I still ran into
>> problems though:
>>
>> g++  -c -Wno-deprecated -Wstrict-ailiasing -D__pascal= -fno-exceptions
>> -O2  -Ibackend -Itk -Iroot -DMARS=1 -DTARGET_FREEBSD=1
>> -DDM_TARGET_CPU_X86=1 -DDMDV2=1 -I. backend/dwarf.c
>> backend/dwarf.c: In function 'void dwarf_initfile(const char*)':
>> backend/dwarf.c:658:9: error 'error' was not declared in this scope
>> backend/dwarf.c:662:35: error 'getcwd' was not declared in this scope
>> backend/dwarf.c:667:22: error 'ERANGE' was not declared in this scope
>> gmake: *** [dwarf.o] Error 1
>>
>>
>> Any pointers?
> There exist FreeBSD ports for dmd1 and dmd2, which you can use to
> compile either one in 32- or 64-bit.  Any reason you're not using them?
> They're a little stale, but they should work.  At the very least, you
> should be able to figure out build requirements like this by looking at
> the port's makefile, if you prefer to build dmd yourself.

Reason... I had every intention of volunteering to become the so called 
build master for DMD. I thought it a bit presumptuous to do such a thing 
without actually knowing how to build the compiler on the supported 
platforms. I'm using DragonFlyBSD but as far as I know it is 100% 
source/binary compatible with FreeBSD.

Either way, I've progressed well beyond this point. My current problem 
is there are a number of undefined references to Port::'et al' in the 
following files (list abbreviated to remove eliminate all duplicates):

     lexer.c: Port::strtold(char const*, char**)
     lexer.c: Port::strtod(char const*, char**)
     lexer.c: Port::strtof(char const*, char**)

     mars.c: browse(char const*)

     mtype.c: Port::snan
     mtype.c: Port::ldbl_infinity
     mtype.c: Port::ldbl_nan
     mtype.c: Port::ldbl_max

     blockopt.c: util_progress()

     cgelem.c: util_progress()

     constfold.c: Port::fmodl(long double, long double)
     constfold.c: Port::ldbl_nan
     constfold.c: Port::isNan(long double)

     e2ir.c: Port::isSignallingNan(long double)

     expression.c: Port::isNan(long double)
     expression.c: Port::fequal(long double, long double)
     expression.c: Port::strtold(char const*, char**)
     expression.c: Port::isInfinity(double)

     go.c: util_progress()

     inifile.c: Port::strupr(char*)
     inifile.c: Port::memicmp(char const*, char const* int)

     doc.c: Port::memicmp(char const*, char const* int)

     ctfeexpr.c: Port::isNan(long double)

I could start over with FreeBSD now that I know what the problem with 
that system was. But after installing, configuring and deleting three 
flavors of BSD for as many times as I did starting on Wednesday of last 
week, I have no desire to do it again. At least not right now.

-- 

Andrew Edwards
--------------------
http://www.akeron.co
auto getAddress() {
     string location = "@", period = ".";
     return ("info" ~ location ~ "afidem" ~ period ~ "org");
}


More information about the Digitalmars-d mailing list