coin-or / coin-or/CoinMP

static compilation problem under Windows 32 bits

Open
#12 0 comments 0 reactions 0 assignees View on GitHub
blocker bug component1 highest
Dominant language
Shell
Stars
21
Forks
12
PR merge metrics
No merged PRs in 30d

Description

Issue created by migration from Trac.

Original creator: @ycollet

Original creation time: 2017-05-09 11:57:58

Assignee: somebody

Version:

When I try to compile CoinMP on Windows in 32 bits, I am not able to link my example with the library. The linker complains about missing sympbols.
I tracked down the problem. It comes from CoinMP.h:
```
#if defined(_MSC_VER) && !defined(HAVE_CONFIG_H)

# define SOLVCALL __stdcall
# if defined(SOLVER_EXPORT) && !defined(_WIN64)
# define SOLVAPI __declspec(dllexport)
# endif
# if defined(SOLVER_IMPORT)
# define SOLVAPI __declspec(dllimport)
# endif
```

If I remove "# define SOLVCALL __stdcall" and " && !defined(_WIN64)" everything is working fine.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by inspecting CoinMP.h, especially the SOLVCALL and SOLVAPI definitions used for 32-bit Windows builds. Reproduce the reported linker failure with the Windows 32-bit example, then verify that the library links successfully while the appropriate symbol export and calling-convention behavior remains intact.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
build-system
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.