Re: [OpenIndiana-discuss] OpenIndiana-discuss] Building Filezilla 3.12.02 and later, ...:
In regard to: Re: [OpenIndiana-discuss] OpenIndiana-discuss] Building...: mv -f .deps/filezilla-asksavepassworddialog.Tpo .deps/filezilla-asksavepassworddialog.Po g++ -DHAVE_CONFIG_H -I. -I../../src/include -I./../include -I/usr/lib/wx/include/motif-unicode-3.0 -I/usr/include/wx-3.0 -D_FILE_OFFSET_BITS=64 -DWXUSINGDLL -D__WXMOTIF__ -I/usr/include/idn -I/usr/include/wx-3.0 -I/usr/include/gnutls-3/gnutls -fpch-preprocess -g -O2 -Wall -MT filezilla-asyncrequestqueue.o -MD -MP -MF .deps/filezilla-asyncrequestqueue.Tpo -c -o filezilla-asyncrequestqueue.o `test -f 'asyncrequestqueue.cpp' || echo './'`asyncrequestqueue.cpp In file included from statusbar.h:6:0, from Mainfrm.h:4, from asyncrequestqueue.cpp:7: state.h:166:32: error: 'wxFileDataObject' does not name a type void UploadDroppedFiles(const wxFileDataObject* pFileDataObject, const wxString& subdir, bool queueOnly); ^~~~ state.h:167:32: error: 'wxFileDataObject' does not name a type void UploadDroppedFiles(const wxFileDataObject* pFileDataObject, const CServerPath& path, bool queueOnly); ^~~~ state.h:168:32: error: 'wxFileDataObject' does not name a type void HandleDroppedFiles(const wxFileDataObject* pFileDataObject, const CLocalPath& path, bool copy); ^~~~ It can't find a data type it's expecting. Did you remove the system package for library/graphics/wxwidgets before you installed your copy of wxwidgets 3.0.x? It seems like the compilation process might be finding an older (2.8.x) version of one or more header files. I personally wouldn't "gmake install" to locations under /usr/include or /usr/lib, as it may be very difficult to separate OS packages and your stuff in the future. If you're not going to package each component into an IPS package, then using a separate prefix (/usr/local, /opt/, or something else) is often useful. Tim -- Tim Mooney tim.moo...@ndsu.edu Enterprise Computing & Infrastructure 701-231-1076 (Voice) Room 242-J6, Quentin Burdick Building 701-231-8541 (Fax) North Dakota State University, Fargo, ND 58105-5164 ___ openindiana-discuss mailing list openindiana-discuss@openindiana.org https://openindiana.org/mailman/listinfo/openindiana-discuss
Re: [OpenIndiana-discuss] OpenIndiana-discuss] Building Filezilla 3.12.02 and later, ...:
Hi, The compilation of Filezilla 3.31.0 is almost complete it is failing on building the GUI (see extract below) Any advice gratefully received. Making all in . gmake[4]: Entering directory '/tmp/filezilla-3.31.0/src/interface' g++ -DHAVE_CONFIG_H -I. -I../../src/include -I./../include -I/usr/lib/wx/include/motif-unicode-3.0 -I/usr/include/wx-3.0 -D_FILE_OFFSET_BITS=64 -DWXUSINGDLL -D__WXMOTIF__ -I/usr/include/idn -I/usr/include/wx-3.0 -I/usr/include/gnutls-3/gnutls -fpch-preprocess -g -O2 -Wall -MT filezilla-aboutdialog.o -MD -MP -MF .deps/filezilla-aboutdialog.Tpo -c -o filezilla-aboutdialog.o `test -f 'aboutdialog.cpp' || echo './'`aboutdialog.cpp mv -f .deps/filezilla-aboutdialog.Tpo .deps/filezilla-aboutdialog.Po g++ -DHAVE_CONFIG_H -I. -I../../src/include -I./../include -I/usr/lib/wx/include/motif-unicode-3.0 -I/usr/include/wx-3.0 -D_FILE_OFFSET_BITS=64 -DWXUSINGDLL -D__WXMOTIF__ -I/usr/include/idn -I/usr/include/wx-3.0 -I/usr/include/gnutls-3/gnutls -fpch-preprocess -g -O2 -Wall -MT filezilla-asksavepassworddialog.o -MD -MP -MF .deps/filezilla-asksavepassworddialog.Tpo -c -o filezilla-asksavepassworddialog.o `test -f 'asksavepassworddialog.cpp' || echo './'`asksavepassworddialog.cpp mv -f .deps/filezilla-asksavepassworddialog.Tpo .deps/filezilla-asksavepassworddialog.Po g++ -DHAVE_CONFIG_H -I. -I../../src/include -I./../include -I/usr/lib/wx/include/motif-unicode-3.0 -I/usr/include/wx-3.0 -D_FILE_OFFSET_BITS=64 -DWXUSINGDLL -D__WXMOTIF__ -I/usr/include/idn -I/usr/include/wx-3.0 -I/usr/include/gnutls-3/gnutls -fpch-preprocess -g -O2 -Wall -MT filezilla-asyncrequestqueue.o -MD -MP -MF .deps/filezilla-asyncrequestqueue.Tpo -c -o filezilla-asyncrequestqueue.o `test -f 'asyncrequestqueue.cpp' || echo './'`asyncrequestqueue.cpp In file included from statusbar.h:6:0, from Mainfrm.h:4, from asyncrequestqueue.cpp:7: state.h:166:32: error: 'wxFileDataObject' does not name a type void UploadDroppedFiles(const wxFileDataObject* pFileDataObject, const wxString& subdir, bool queueOnly); ^~~~ state.h:167:32: error: 'wxFileDataObject' does not name a type void UploadDroppedFiles(const wxFileDataObject* pFileDataObject, const CServerPath& path, bool queueOnly); ^~~~ state.h:168:32: error: 'wxFileDataObject' does not name a type void HandleDroppedFiles(const wxFileDataObject* pFileDataObject, const CLocalPath& path, bool copy); ^~~~ gmake[4]: *** [Makefile:1144: filezilla-asyncrequestqueue.o] Error 1 gmake[4]: Leaving directory '/tmp/filezilla-3.31.0/src/interface' gmake[3]: *** [Makefile:2902: all-recursive] Error 1 gmake[3]: Leaving directory '/tmp/filezilla-3.31.0/src/interface' gmake[2]: *** [Makefile:819: all] Error 2 gmake[2]: Leaving directory '/tmp/filezilla-3.31.0/src/interface' gmake[1]: *** [Makefile:436: all-recursive] Error 1 gmake[1]: Leaving directory '/tmp/filezilla-3.31.0/src' gmake: *** [Makefile:619: all-recursive] Error 1 TIA Russell ___ openindiana-discuss mailing list openindiana-discuss@openindiana.org https://openindiana.org/mailman/listinfo/openindiana-discuss
[OpenIndiana-discuss] OpenIndiana-discuss] Building Filezilla 3.12.02 and later, ...:
Hi Thanks Tim for your assistance, I have finally built Guile though it did take longer to build than watching the fifth Pirates of the Carribbean. So far I built the following prequisites for Filezilla 3.31.0 and earlier can use libfilezilla-0.12.1 For Filezilla 3.7.4.1 1. Build libfilezilla-0.12.1 $ CC=gcc CXX=g++ ./configure --prefix=/usr --enable-shared=yes --disable-static $ gmake # gmake install 2. Build Filezilla 3.7.4.1 $ CC=gcc CXX=g++ CPPFLAGS="-I/usr/include/idn -I/usr/include/wx-2.8" ./configure --prefix=/usr --enable-shared=yes --disable-locales --disable-static --disable-autoupdatecheck --with-tinyxml=builtin $ gmake # gmake install For Filezilla 3.9 - 3.31 1. Build wx-3.0.4 - the 3.1.X release is flagged as development and will not be used $ CC=gcc CXX=g++ ./configure --prefix=/usr --enable-printfposparam $ gmake # gmake install 2. Build libnettle 3.4.1 $ CC=gcc CXX=g++ CFLAGS="-I/usr/include/gmp" ./configure --prefix=/usr -disable-static -enable-shared=yes --enable-public-key --enable-openssl $ gmake # gmake install Build libunbound 1.9.1 $ CC=gcc PKG_CONFIG_PATH=/opt/lib/pkgconfig ./configure --prefix=/usr $ gmake # gmake install GNU MP 6.1.2 - already installed via OpenIndiana repository Build GNU Guile 2.2 or later $ CC=gcc CFLAGS="-I/usr/include/gmp" LIBS='-lsocket -lnsl' PKG_CONFIG_PATH=/usr/lib/pkgconfig ./configure --prefix=/usr -disable-static -enable-shared=yes $ gmake # gmake install 3. Build GnuTLS 3.6.6 CC=gcc CXX=g++ CFLAGS="-I/usr/include/idn -I/usr/include/idn2 -I/usr/include/gmp" LDFLAGS="-L/usr/lib" PKG_CONFIG_PATH=/opt/lib/pkgconfig ./configure --prefix=/usr --enable-openssl-compatibility --disable-ssl2-support --disable-dependency-tracking I have attempted to build Filezilla 3.41.2 (latest release) and discovered that Filezilla 3.41.2 requires libfilezilla-0.15.1. I will work on getting Filezilla 3.31.0 built. ___ openindiana-discuss mailing list openindiana-discuss@openindiana.org https://openindiana.org/mailman/listinfo/openindiana-discuss
Re: [OpenIndiana-discuss] Building Filezilla 3.12.02 and later
In regard to: [OpenIndiana-discuss] Building Filezilla 3.12.02 and later,...: 4. Build GNU Guile 2.2 or later $ CC=gcc CFLAGS="-I/usr/include/gmp" PKG_CONFIG_PATH=/opt/lib/pkgconfig ./configure --prefix=/usr -disable-static -enable-shared=yes You're not showing the part where configure says checking whether accept4 is declared without a macro... yes checking for accept4... no If you look in the config.log that configure generates and search for 'accept4', you'll see something like: configure:8678: checking for accept4 configure:8678: gcc -std=gnu11 -o conftest -g -O2 conftest.c >&5 Undefined first referenced symbol in file accept4 /var/tmp//ccw.ayQX.o ld: fatal: symbol referencing errors. No output written to conftest collect2: error: ld returned 1 exit status configure:8678: $? = 1 When configure doesn't find certain networking-related symbols, the first problem to look for is whether it's including "-lsocket -lnsl" in the libraries it's trying to link with. $ gmake gmake all-recursive gmake[1]: Entering directory '/tmp/guile-2.2.4' Making all in lib gmake[2]: Entering directory '/tmp/guile-2.2.4/lib' gmake all-recursive gmake[3]: Entering directory '/tmp/guile-2.2.4/lib' gmake[4]: Entering directory '/tmp/guile-2.2.4/lib' CC accept4.lo In file included from /usr/include/sys/time.h:462:0, from ./sys/time.h:39, from /usr/include/sys/select.h:53, from ./sys/select.h:36, from /usr/include/sys/types.h:640, from ./sys/types.h:28, from ./sys/socket.h:51, from accept4.c:20: So, guile is trying to build its own accept4 (probably from gnulib, but I haven't checked to verify) because it thinks that OI doesn't have it, but OI has declarations in header files that are getting included and that's causing the conflict. The right fix is to clue configure in that it should also be checking for networking-related code in '-lsocket -lnsl'. That involves adding logic to configure.ac to see if '-lsocket -lnsl' are present, and if they are useful. In your case, as a hackish work-around, you could try adding LIBS='-lsocket -lnsl' on the configure line, near CC=gcc. That's not a great solution, because it causes configure to try linking every component against those two libraries, even when they're not needed, but it will probably help you make some progress. You may later hit additional networking-related incompatibilities, based on compilation environment, but the LIBS trick should get you farther. It's probably worth a bug report to the guile maintainers that accept4 and probably other network code requires -lsocket -lnsl on systems descended from Solaris (and some others that basically no longer exist). Tim -- Tim Mooney tim.moo...@ndsu.edu Enterprise Computing & Infrastructure 701-231-1076 (Voice) Room 242-J6, Quentin Burdick Building 701-231-8541 (Fax) North Dakota State University, Fargo, ND 58105-5164 ___ openindiana-discuss mailing list openindiana-discuss@openindiana.org https://openindiana.org/mailman/listinfo/openindiana-discuss
[OpenIndiana-discuss] Building Filezilla 3.12.02 and later
Hi I was attempting to build Filezilla 3.12.0.2 and later versions which requires a number of dependencies, unforunately Guile 2.2 and later versions fail to build because it redfines accept4 in ./lib/accept4.c. I have tried various things to get round this without success. In order to use the latest version of GnuTLS it requires Guile 2.2.0 or later. 1. Build wx-3.1.2 $ CC=gcc CXX=g++ ./configure --prefix=/usr $ gmake # gmake install 2. Build libnettle 3.4.1 $ CC=gcc CXX=g++ CFLAGS="-I/usr/include/gmp" ./configure --prefix=/usr -disable-static -enable-shared=yes --enable-public-key --enable-openssl $ gmake # gmake install 3. Build libunbound 1.9.1 $ CC=gcc PKG_CONFIG_PATH=/opt/lib/pkgconfig ./configure --prefix=/usr $ gmake # gmake install 4. Build GNU Guile 2.2 or later $ CC=gcc CFLAGS="-I/usr/include/gmp" PKG_CONFIG_PATH=/opt/lib/pkgconfig ./configure --prefix=/usr -disable-static -enable-shared=yes $ gmake gmake all-recursive gmake[1]: Entering directory '/tmp/guile-2.2.4' Making all in lib gmake[2]: Entering directory '/tmp/guile-2.2.4/lib' gmake all-recursive gmake[3]: Entering directory '/tmp/guile-2.2.4/lib' gmake[4]: Entering directory '/tmp/guile-2.2.4/lib' CC accept4.lo In file included from /usr/include/sys/time.h:462:0, from ./sys/time.h:39, from /usr/include/sys/select.h:53, from ./sys/select.h:36, from /usr/include/sys/types.h:640, from ./sys/types.h:28, from ./sys/socket.h:51, from accept4.c:20: ./sys/socket.h:1034:1: error: conflicting types for 'accept4' _GL_FUNCDECL_SYS (accept4, int, ^ In file included from ./sys/socket.h:58:0, from accept4.c:20: /usr/include/sys/socket.h:540:12: note: previous declaration of 'accept4' was here extern int accept4(int, struct sockaddr *_RESTRICT_KYWD, Psocklen_t, int); ^~~ accept4.c:32:1: error: conflicting types for 'accept4' accept4 (int sockfd, struct sockaddr *addr, socklen_t *addrlen, int flags) ^~~ In file included from ./sys/socket.h:58:0, from accept4.c:20: /usr/include/sys/socket.h:540:12: note: previous declaration of 'accept4' was here extern int accept4(int, struct sockaddr *_RESTRICT_KYWD, Psocklen_t, int); ^~~ gmake[4]: *** [Makefile:2136: accept4.lo] Error 1 gmake[4]: Leaving directory '/tmp/guile-2.2.4/lib' gmake[3]: *** [Makefile:2155: all-recursive] Error 1 gmake[3]: Leaving directory '/tmp/guile-2.2.4/lib' gmake[2]: *** [Makefile:1932: all] Error 2 gmake[2]: Leaving directory '/tmp/guile-2.2.4/lib' gmake[1]: *** [Makefile:1857: all-recursive] Error 1 gmake[1]: Leaving directory '/tmp/guile-2.2.4' gmake: *** [Makefile:1743: all] Error 2 3. Build GnuTLS 3.6.6 (requires Guile 2.2.0 or later) CC=gcc CXX=g++ CFLAGS="-I/usr/include/idn -I/usr/include/idn2" LDFLAGS="-L/usr/lib" PKG_CONFIG_PATH=/usr/lib/pkgconfig ./configure --prefix=/usr --enable-openssl-compatibility --disable-ssl2-support 4. Building filezilla-3.12.0.2 or later $ CC=gcc CXX=g++ CPPFLAGS="-I/usr/include/idn -I/usr/include/wx-3.1" ./configure --prefix=/usr --enable-shared=yes --disable-locales --disable-static --disable-autoupdatecheck --with-tinyxml=builtin Any suggestions on how to get Guile 2.2.4 built by working round the accept4 redefinition. Regards Russell ___ openindiana-discuss mailing list openindiana-discuss@openindiana.org https://openindiana.org/mailman/listinfo/openindiana-discuss