For a variety of reasons I have been using the following environment:
Linux Mint 18.3 (with Ubuntu 14.04)
Codelite 9.1.0
WxWidgets 3.1.1 from git
The program is unremarkable and I have been sticking to well-known controls, the fanciest probably being wxAUINotebook. This has gone well.
The wxWidgets I have been using was built using:
Code: Select all
../configure --enable-monolithic --with-opengl --enable-webview
I used:
Code: Select all
../configure --enable-unicode --with-opengl --disable-shared --enable-webview --enable-monolithic
I tried linking with expat without success, and searched the Web for similar situations. Most of these I found implied linking order errors building with wx2.7, 2.8, or 3.0 as in this solution:...
/usr/bin/ld: /usr/local/lib/libwx_gtk2u-3.1.a(monolib_xml.o): undefined reference to symbol 'XML_SetUserData'
...
I did not want to edit the Makefile at this stage, so I thought that I would try building static, but not monolithic:Adding -v -Wl,-v to the flags allowed me to see the command lines for collect2 and ld.
For some reason, the original Makefile was putting the libraries (-L and -l options) before most of the object files. I put the libraries at the end of the command line and now it compiles.
I used:
Code: Select all
../configure --enable-unicode --with-opengl --disable-shared --enable-webview
Is combining --disable-shared and --enable-monolithic known not to work? Or are there other non-wx libraries that I should have added?
Thanks,
Dave