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");
}