Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

wxWidgets compile fails with invalid options provided by VeraCrypt Makefile #1336

Open
dooferorg opened this issue May 1, 2024 · 2 comments
Labels

Comments

@dooferorg
Copy link

dooferorg commented May 1, 2024

I downloaded the VeraCrypt source release 1.26.7. I am compiling for Linux (Debian 12) on a headless non gui server system so I checked out the github for wxWidgets and ran

make NOGUI=1 WXSTATIC=1 WX_ROOT=/usr/src/wxWidgets wxbuild

I got an error:

Configuring wxWidgets library...
configure: error: unrecognized options: --enable-unicode, --enable-std_string

I edited the VeraCrypt Makefile on line 481 and removed the offending options, then it compiled ok.

Just wanted to pass it on.

Edit:

Further to this I wonder if there's just an incompatibility with the wxWidgets I pulled in and the VeraCrypt codebase at this time. When compiling VeraCrypt I am getting these errors now:

Precompiling SystemPrecompiled.h
Compiling Application.cpp
Application.cpp: In static member function ‘static VeraCrypt::FilePath VeraCrypt::Application::GetConfigFilePath(const wxString&, bool)’:
Application.cpp:92:24: error: ‘wxScopedPtr’ does not name a type
   92 |                 static wxScopedPtr<const wxString> configDirC;
      |                        ^~~~~~~~~~~
Application.cpp:97:30: error: ‘configDirC’ was not declared in this scope
   97 |                         if (!configDirC)
      |                              ^~~~~~~~~~
Application.cpp:117:51: error: ‘configDirC’ was not declared in this scope
  117 |                                 if (!wxDirExists(*configDirC))
      |                                                   ^~~~~~~~~~
Application.cpp:129:35: error: ‘configDirC’ was not declared in this scope
  129 |                 return FilePath((*configDirC + configFileName).ToStdWstring());
      |                                   ^~~~~~~~~~
make[1]: *** [/usr/src/VeraCrypt-VeraCrypt_1.26.7/src/Build/Include/Makefile.inc:37: Application.o] Error 1
make: *** [Makefile:520: all] Error 2
@dooferorg dooferorg added the bug label May 1, 2024
@dooferorg
Copy link
Author

Downloaded wxWidgets 3.2.4 from the releases on the github, removed the previous wxWidgets and VeraCrypt sources dirs.

Unpacked VeraCrypt 1.26.7 and wxWidgets 3.2.4.

Now compiling gets me this:

# make NOGUI=1 WXSTATIC=1 WX_ROOT=/usr/src/wxWidgets-3.2.4 wxbuild
Configuring wxWidgets library...
configure: WARNING: XML library not built, cannot build wxrc
configure: WARNING: libsecret not found, wxSecretStore won't be available
configure: WARNING: Disabling wxWebRequest because no backends are available
Building wxWidgets library...
In file included from /usr/src/wxWidgets-3.2.4/src/common/extended.c:14:
/usr/src/wxWidgets-3.2.4/include/wx/defs.h:509:9: warning: "__cplusplus" is not defined, evaluates to 0 [-Wundef]
 509 |     #if __cplusplus >= 201103L
     |         ^~~~~~~~~~~

@Jertzukka
Copy link
Contributor

In your first post you're attempting to build against master branch of wxWidgets which is not backwards compatible to 3.2 branch. The warning you get in your second post is only a warning and does not prevent the wxWidgets from building, just run the same command without wxbuild after it the build finishes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants