Where to Download From
The most recent and previous releases can be downloaded from
http://www.opendesign.com/members/memberfiles or
https://www.opendesign.com/odoutgoing/Releases/.
Only registered Open Design Alliance members can access the download pages.
For more information regarding Open Design Alliance Membership, please see
http://www.opendesign.com/join.
ODA Platform Naming Conventions
The following is a list of naming conventions used for ODA platform
downloadable archives (.zip and .tar.gz), by platform. In general, unless
"dll" appears in the archive name, the archive contains static
libraries.
Windows
Windows 32-bit and 64-bit
-
vc<N> — Microsoft Visual Studio version, where
<N> means:
- 8 — Microsoft Visual Studio 2005
- 9 — Microsoft Visual Studio 2008
- 10 — Microsoft Visual Studio 2010
- 11 — Microsoft Visual Studio 2012
-
11xp — Microsoft Visual Studio 2012 with
WinXP support
- 12 — Microsoft Visual Studio 2013
-
12xp — Microsoft Visual Studio 2013 with
WinXP support
- 14 — Microsoft Visual Studio 2015
- 14xp — Microsoft Visual Studio 2015 with
WinXP support
-
dll — Indicates dynamic link library version
-
md, mt, ml — /MD, /MT, etc. Visual Studio
compiler options (static library)
-
dbg — Indicates the presence of debug information
(/mtd, /mdd, /wrd, /wmd, etc.)
-
rwd — Release build containing debug information
(useful for reproducing certain types of runtime problems)
-
amd64 — Libraries built for the x86 AMD64 platform
Windows CE (VS2005)
-
armv4, armv4i— Platforms for which the libraries are
built
-
mt, mtdbg — /MT or /MTd (debug) compiler option,
respectively
Windows RT (VS2012)
-
winrt — Platforms for which the libraries are built
-
md, mddbg — /MD or /MDd (debug) compiler option,
respectively
Choosing a downloadable archive for Windows platforms
All ODA software executables are built with dependency on the C/C++ runtime
library (CRT), which implements basic functionality, such as input/output
operations, memory management, string manipulation, and so on.
There are two ways of linking the CRT library:
- Static linking
- Dynamic linking
And there are three types of CRT libraries:
- Static Single Threaded
- Static Multi Threaded
- Dynamic Link Multi Threaded
Each type can be represented with a Release or Debug configuration.
To get a successfully built custom application developed with the Civil SDK,
the CRT library used by the application must match the CRT library used by the
Civil libraries. In other words, custom applications should use the same
compiler switch that was used to build ODA libraries. Compiler switches used
for different library configurations are illustrated in the table below.
Library Type and Configuration |
Compiler Switch |
CRT Library File Name |
Macros Name |
Single Threaded |
/ML |
LIBC |
|
Single Threaded Debug |
/MLd |
LIBCD |
_DEBUG |
Static Multi Threaded |
/MT |
LIBCMT |
_MT |
Static Multi Threaded Debug |
/MTd |
LIBCMTD |
_MT, _DEBUG |
Dynamic Link (DLL) |
/MD |
MSVCRT |
_MT, _DLL |
Dynamic Link (DLL) Debug |
/MDd |
MSVCRTD |
_MT, _DLL, _DEBUG |
ODA library downloads support each of these reusable CRT library types:
-
Downloadable archives with Static CRT contains the mt
suffix in its name. For example, Civil_vc11mt.zip contains the Civil
archive with Static CRT, built with Microsoft Visual Studio 2012.
This configuration requires that you use an /MT switch to build a custom
application.
-
Downloadable archives with Dynamic Link Multi Threaded CRT contains the
dll suffix in its name. For example, Civil_vc11dll.zip
contains the Civil archive with the Dynamic Link Multi Threaded CRT, built
with Microsoft Visual Studio 2012.
This configuration requires that you use an /MD switch to build a custom
application.
-
Downloadable archives with Static/Dynamic CRT contains the
md suffix in its name. For example, Civil_vc11md.zip
contains the Civil archive with both Static Multi Threaded and Dynamic Link
Multi Threaded CRT, built with Microsoft Visual Studio 2012.
This configuration also requires that you use an /MD switch to build a
custom application, but it allows you to mix the static and DLL (dynamic)
reusable CRT library types.
Using compiler switches when building a custom application or DLL:
-
The /MD switch causes a custom application or DLL to use the Multi Threaded
and DLL versions of the CRT library. It defines _MT and _DLL macros within
an application and causes the compiler to place the library name MSVCRT.lib
into the .obj file.
Custom applications and DLLs compiled with this option are statically linked
to MSVCRT.lib, containing code which allows them to resolve external
references.
Actual working code is contained in MSVCR90.DLL. This file must be
availableat run time.
-
The /MT switch causes a custom application or DLL to use the Static Multi
Threaded version of the CRT library. It defines the _MT macro within an
application and causes the compiler to place the library name LIBCMT.lib
into the .obj file. In this case, the linker uses LIBCMT.lib to resolve
external symbols.
Note that the question of choosing a Civil downloadable archive is the same
question of choosing a CRT library linking method: dynamic or static. The
chosen method determines whether a custom application or DLL will have any
external DLL dependencies.
Linux
- lnx — Linux
- X86, X64 — Indicates X86 or X64 platform
- 3.3, 3.4, 4.1, 4.2, etc. — GCC versions
- dll — Indicates a shared library version
-
pic — Compiled with Position Independent Code option
Android
- android — Android OS
- armeabi, armeabi-v7a, x86, x86_64 — ARM specific
build
- linux, mingw — Build environment, under Linux or
Windows using MinGW, respectively
-
dbg — Indicates the presence of debug information
macOS
- macOsX — macOS
-
x86, x64— Libraries built for X86 and X64
respectively
-
10.4, 10.5, etc. — Version number of macOS that the
libraries are built for
- dll — Indicates a shared library version
-
pic — Compiled with Position Independent Code option
iOS
- iphone — iOS
-
5.1 etc. — iOS SDK version (note, this not an iOS
version!)
- sim — Simulator build (real device otherwise)
-
dbg — Indicates the presence of debug information
Archive Contents in the Civil Folder
Folder |
Description |
Include |
Client header files. |
Examples |
Sample code illustrating usage. |
AECCExtensions |
Code adding to the base-functionality of the Civil SDK. |
Android |
Android-only sample applications. |
ExLDTEnts |
Sample application that iterates Land Desktop
primitives: AECCDbPoint , AeccDbCogoPoint and
AECCDbContour , prints their properties to the console,
explodes and copies them to the output drawing. |
ExTcAecCleanup |
Sample application that removes all AEC data and
converts civil or architectural drawing to a plain .dwg file. Allows to
explode AEC entities before erasure to make the resulting drawing be
visually similar to the source one. |
ExTcCopy |
Sample application that saves a source .dwg file to
another .dwg file to update it to the latest version, or visualizes a
drawing to a .bmp image. |
ExTcCreateProfile |
Sample application that demonstrates creation of
profile and profile view, using existing alignment and surface (source
file must contain them). |
ExTcPoints |
Sample application that demonstrates creation of COGO
points. |
ExTcSurfaceGrid |
Sample application that demonstrates creation of a grid
surface. |
ExTcSurfaceTin |
Sample application that demonstrates creation of
a TIN surface. |
iOS |
iOS-only sample applications. |
iOdaApp |
A simple iOS application that can read, write, render and dump to console .dwg/.dxf files. |
TCCommonEx |
Simple examples of the common Civil SDK functionality. |
TCReadEx |
Analog of the OdReadEx sample with Civil modules
loading. |
WinRT |
Windows RT-only sample applications. |
OdaWinRTApp |
Windows RT application that loads and vectorizes .dwg files. |
Resource |
Resource files. |
Tests |
Tests. |
Copyright © 2002 – 2020. Open Design Alliance. All rights reserved.
|
|