Building trunk

Hi all

Using latest trunk sources in Mac Snow Leopard, I get the following error:

“[ 37%] Building CXX object libavogadro/src/engines/CMakeFiles/labelengine.dir/labelengine.cpp.o
/Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.cpp:30:46: error: qperiodictable/elementtranslator.h: No such file or directory
/Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.h: In constructor ‘Avogadro::LabelEngine::LabelEngine(QObject*)’:
/Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.h:99: warning: ‘Avogadro::LabelEngine::m_settingsWidget’ will be initialized after
/Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.h:92: warning: ‘int Avogadro::LabelEngine::m_lengthPrecision’
/Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.cpp:75: warning: when initialized here
/Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.cpp:88: error: ‘QPeriodicTable’ has not been declared
/Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.cpp: In member function ‘QString Avogadro::LabelEngine::createAtomLabel(const Avogadro::Atom*)’:
/Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.cpp:187: error: ‘ElementTranslator’ has not been declared
/Users/ricard/git64/avogadro/build/libavogadro/include/avogadro/primitive.h: At global scope:
/Users/ricard/git64/avogadro/build/libavogadro/include/avogadro/primitive.h:40: warning: ‘Avogadro::FALSE_ID’ defined but not used
make[2]: *** [libavogadro/src/engines/CMakeFiles/labelengine.dir/labelengine.cpp.o] Error 1
make[1]: *** [libavogadro/src/engines/CMakeFiles/labelengine.dir/all] Error 2
make: *** [all] Error 2”

The same sources build successfully on a Linux box (CentOS5.4).

As an aside, the french translation is now complete and opened to criticisims.

Cheers,

Louis

On Tue, 11 May 2010 20:36:19 +0200
Louis Ricard Louis.RICARD@polytechnique.edu wrote:

Hi all

Using latest trunk sources in Mac Snow Leopard, I get the following
error:

“[ 37%] Building CXX object
libavogadro/src/engines/CMakeFiles/labelengine.dir/labelengine.cpp.o /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.cpp:30:46:
error: qperiodictable/elementtranslator.h: No such file or
directory /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.h:
In constructor
‘Avogadro::LabelEngine::LabelEngine(QObject*)’: /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.h:99:
warning: ‘Avogadro::LabelEngine::m_settingsWidget’ will be
initialized
after /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.h:92:
warning: ‘int
Avogadro::LabelEngine::m_lengthPrecision’ /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.cpp:75:
warning: when initialized
here /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.cpp:88:
error: ‘QPeriodicTable’ has not been
declared /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.cpp:
In member function ‘QString
Avogadro::LabelEngine::createAtomLabel(const
Avogadro::Atom*)’: /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.cpp:187:
error: ‘ElementTranslator’ has not been
declared /Users/ricard/git64/avogadro/build/libavogadro/include/avogadro/primitive.h:
At global
scope: /Users/ricard/git64/avogadro/build/libavogadro/include/avogadro/primitive.h:40:
warning: ‘Avogadro::FALSE_ID’ defined but not used make[2]: ***
[libavogadro/src/engines/CMakeFiles/labelengine.dir/labelengine.cpp.o]
Error 1 make[1]: ***
[libavogadro/src/engines/CMakeFiles/labelengine.dir/all] Error 2
make: *** [all] Error 2”

The same sources build successfully on a Linux box (CentOS5.4).

Try to rebuild from scratch (remove build directory)


Regards,
Konstantin

Konstantin Tokarev a écrit :

On Tue, 11 May 2010 20:36:19 +0200
Louis Ricard Louis.RICARD@polytechnique.edu wrote:

Hi all

Using latest trunk sources in Mac Snow Leopard, I get the following
error:

“[ 37%] Building CXX object
libavogadro/src/engines/CMakeFiles/labelengine.dir/labelengine.cpp.o /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.cpp:30:46:
error: qperiodictable/elementtranslator.h: No such file or
directory /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.h:
In constructor
‘Avogadro::LabelEngine::LabelEngine(QObject*)’: /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.h:99:
warning: ‘Avogadro::LabelEngine::m_settingsWidget’ will be
initialized
after /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.h:92:
warning: ‘int
Avogadro::LabelEngine::m_lengthPrecision’ /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.cpp:75:
warning: when initialized
here /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.cpp:88:
error: ‘QPeriodicTable’ has not been
declared /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.cpp:
In member function ‘QString
Avogadro::LabelEngine::createAtomLabel(const
Avogadro::Atom*)’: /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.cpp:187:
error: ‘ElementTranslator’ has not been
declared /Users/ricard/git64/avogadro/build/libavogadro/include/avogadro/primitive.h:
At global
scope: /Users/ricard/git64/avogadro/build/libavogadro/include/avogadro/primitive.h:40:
warning: ‘Avogadro::FALSE_ID’ defined but not used make[2]: ***
[libavogadro/src/engines/CMakeFiles/labelengine.dir/labelengine.cpp.o]
Error 1 make[1]: ***
[libavogadro/src/engines/CMakeFiles/labelengine.dir/all] Error 2
make: *** [all] Error 2”

The same sources build successfully on a Linux box (CentOS5.4).

Try to rebuild from scratch (remove build directory)

I always delete the build directory before rebuilding.
This time, I even rebuilt OB after an initial failiure with Avo
before crying for help.

Louis

On Wed, 12 May 2010 08:52:03 +0200
Louis Ricard louis.ricard@polytechnique.edu wrote:

Konstantin Tokarev a écrit :

On Tue, 11 May 2010 20:36:19 +0200
Louis Ricard Louis.RICARD@polytechnique.edu wrote:

Hi all

Using latest trunk sources in Mac Snow Leopard, I get the following
error:

“[ 37%] Building CXX object
libavogadro/src/engines/CMakeFiles/labelengine.dir/labelengine.cpp.o /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.cpp:30:46:
error: qperiodictable/elementtranslator.h: No such file or
directory /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.h:
In constructor
‘Avogadro::LabelEngine::LabelEngine(QObject*)’: /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.h:99:
warning: ‘Avogadro::LabelEngine::m_settingsWidget’ will be
initialized
after /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.h:92:
warning: ‘int
Avogadro::LabelEngine::m_lengthPrecision’ /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.cpp:75:
warning: when initialized
here /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.cpp:88:
error: ‘QPeriodicTable’ has not been
declared /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.cpp:
In member function ‘QString
Avogadro::LabelEngine::createAtomLabel(const
Avogadro::Atom*)’: /Users/ricard/git64/avogadro/libavogadro/src/engines/labelengine.cpp:187:
error: ‘ElementTranslator’ has not been
declared /Users/ricard/git64/avogadro/build/libavogadro/include/avogadro/primitive.h:
At global
scope: /Users/ricard/git64/avogadro/build/libavogadro/include/avogadro/primitive.h:40:
warning: ‘Avogadro::FALSE_ID’ defined but not used make[2]: ***
[libavogadro/src/engines/CMakeFiles/labelengine.dir/labelengine.cpp.o]
Error 1 make[1]: ***
[libavogadro/src/engines/CMakeFiles/labelengine.dir/all] Error 2
make: *** [all] Error 2”

The same sources build successfully on a Linux box (CentOS5.4).

Try to rebuild from scratch (remove build directory)

I always delete the build directory before rebuilding.
This time, I even rebuilt OB after an initial failiure with Avo
before crying for help.

  1. look into build/libavogadro/include . Do you see there directories
    qplotwidget and qperiodictable? Do they contain valid symlinks to
    headers?
    if yes,
  2. enable verbose makefile in build configuration and send full compiler
    command line for labelengine.cpp.o (latest before build fails). I’m
    especially interested in -I keys

Geoff: have you seen such problem?


Regards,
Konstantin

On May 12, 2010, at 4:08 AM, Konstantin Tokarev wrote:

  1. enable verbose makefile in build configuration and send full compiler
    command line for labelengine.cpp.o (latest before build fails). I’m
    especially interested in -I keys

Geoff: have you seen such problem?

Nope. You can see the latest “unstable” Mac builds here:
http://avogadro.openmolecules.net/nightly/mac/unstable/

Cheers,
-Geoff

Hi

I have just checked building trunk on a Mac and in a CentOS virtual machine.
The Mac nightly build points to 67ca39f revision (Geoff’s link); the official
cryos link (http://github.com/cryos/avogadro) points to revision 9a89fd0.
This is compiling in CentOS,but fails in Snow Leopard as previously
reported.

May it be a cmake issue?

Louis

Le 12 mai 2010 à 16:34, Geoffrey Hutchison a écrit :

On May 12, 2010, at 4:08 AM, Konstantin Tokarev wrote:

  1. enable verbose makefile in build configuration and send full compiler
    command line for labelengine.cpp.o (latest before build fails). I’m
    especially interested in -I keys

Geoff: have you seen such problem?

Nope. You can see the latest “unstable” Mac builds here:
http://avogadro.openmolecules.net/nightly/mac/unstable/

Cheers,
-Geoff



Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel

On Wed, 12 May 2010 21:08:35 +0200
Louis Ricard louis.ricard@polytechnique.edu wrote:

Hi

I have just checked building trunk on a Mac and in a CentOS virtual
machine. The Mac nightly build points to 67ca39f revision (Geoff’s
link); the official cryos link (http://github.com/cryos/avogadro)
points to revision 9a89fd0. This is compiling in CentOS,but fails in
Snow Leopard as previously reported.

May it be a cmake issue?

Have you checked headers’ presence in build/libavogadro/include/ ?

Louis

Le 12 mai 2010 à 16:34, Geoffrey Hutchison a écrit :

On May 12, 2010, at 4:08 AM, Konstantin Tokarev wrote:

  1. enable verbose makefile in build configuration and send full
    compiler command line for labelengine.cpp.o (latest before build
    fails). I’m especially interested in -I keys

Geoff: have you seen such problem?

Nope. You can see the latest “unstable” Mac builds here:
http://avogadro.openmolecules.net/nightly/mac/unstable/

Cheers,
-Geoff



Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Regards,
Konstantin

Is this what you mean?

“ls libavogadro/include/avogadro/
animation.h color3f.h extension.h idlist.h navigate.h pluginmanager.h tool.h
atom.h colorbutton.h fragment.h mesh.h neighborlist.h primitive.h toolgroup.h
bond.h cube.h glhit.h meshgenerator.h painter.h primitivelist.h undosequence.h
camera.h dockextension.h global.h molecule.h painterdevice.h protein.h zmatrix.h
color.h engine.h glwidget.h moleculefile.h plugin.h residue.h”

Louis

Le 12 mai 2010 à 21:51, Konstantin Tokarev a écrit :

On Wed, 12 May 2010 21:08:35 +0200
Louis Ricard louis.ricard@polytechnique.edu wrote:

Hi

I have just checked building trunk on a Mac and in a CentOS virtual
machine. The Mac nightly build points to 67ca39f revision (Geoff’s
link); the official cryos link (http://github.com/cryos/avogadro)
points to revision 9a89fd0. This is compiling in CentOS,but fails in
Snow Leopard as previously reported.

May it be a cmake issue?

Have you checked headers’ presence in build/libavogadro/include/ ?

Louis

Le 12 mai 2010 à 16:34, Geoffrey Hutchison a écrit :

On May 12, 2010, at 4:08 AM, Konstantin Tokarev wrote:

  1. enable verbose makefile in build configuration and send full
    compiler command line for labelengine.cpp.o (latest before build
    fails). I’m especially interested in -I keys

Geoff: have you seen such problem?

Nope. You can see the latest “unstable” Mac builds here:
http://avogadro.openmolecules.net/nightly/mac/unstable/

Cheers,
-Geoff



Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Regards,
Konstantin



Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel

No, I’ve meant
ls libavogadro/include
ls libavogadro/include/qperiodictable

Regards,
Konstantin

In the build directory:
“macbook-de-louis-ricard:build ricard$ ls libavogadro/CMakeFiles cmake_install.cmake src
Makefile include
macbook-de-louis-ricard:build ricard$ ls libavogadro/include/
avogadro”.

Nothing else. qperidoictable.h lives in “…/periodictable/src/”.

Found this strange include doing " fgrep -r elementtranslator.h ." in build
directory:
"./periodictable/src/CMakeFiles/qperiodictable.dir/CXX.includecache:qperiodictable/elementtranslator.h
./periodictable/src/CMakeFiles/qperiodictable.dir/CXX.includecache:/include/qperiodictable/elementtranslator.h
./periodictable/src/CMakeFiles/qperiodictable.dir/depend.internal: /include/qperiodictable/elementtranslator.h
./periodictable/src/CMakeFiles/qperiodictable.dir/depend.make:periodictable/src/CMakeFiles/qperiodictable.dir/qperiodictable.cpp.o: /include/qperiodictable/elementtranslator.h".

I do not understand what is “/include”.

Regards,

Louis

Le 13 mai 2010 à 10:09, Konstantin Tokarev a écrit :

No, I’ve meant
ls libavogadro/include
ls libavogadro/include/qperiodictable

Regards,
Konstantin



Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel

13.05.10, 13:00, “Louis Ricard” louis.ricard@polytechnique.edu:

In the build directory:
“macbook-de-louis-ricard:build ricard$ ls libavogadro/CMakeFiles cmake_install.cmake src
Makefile include
macbook-de-louis-ricard:build ricard$ ls libavogadro/include/
avogadro”.

Nothing else. qperidoictable.h lives in “…/periodictable/src/”.

Weird. Are you sure you’ve tried to delete libavogadro/include and re-run cmake?

I do not understand what is “/include”.

Temporary directory where headers are symlinked. It’s needed, because config.h is generated in cmake time from config.h.in


Regards,
Konstantin

Яндекс.Почта. Письма есть. Спама - нет. http://mail.yandex.ru/nospam/sign

Yes, I did.

Just in case my Avo directory was somehow spoiled, I have just cloned
again in a different location. Same cause same effect.

I also checked the CentOS build. The libavogadro/include dir content is the same
as the Mac one. But Avo builds successefuly in CentOS…

This is all using the master trunk. Could it be that your branch differs?

Louis

Le 13 mai 2010 à 12:34, Konstantin Tokarev a écrit :

13.05.10, 13:00, “Louis Ricard” louis.ricard@polytechnique.edu:

In the build directory:
“macbook-de-louis-ricard:build ricard$ ls libavogadro/CMakeFiles cmake_install.cmake src
Makefile include
macbook-de-louis-ricard:build ricard$ ls libavogadro/include/
avogadro”.

Nothing else. qperidoictable.h lives in “…/periodictable/src/”.

Weird. Are you sure you’ve tried to delete libavogadro/include and re-run cmake?

I do not understand what is “/include”.

Temporary directory where headers are symlinked. It’s needed, because config.h is generated in cmake time from config.h.in


Regards,
Konstantin

Яндекс.Почта. Письма есть. Спама - нет. http://mail.yandex.ru/nospam/sign

Yes, I did.

Just in case my Avo directory was somehow spoiled, I have just cloned
again in a different location. Same cause same effect.

I also checked the CentOS build. The libavogadro/include dir content is the same
as the Mac one. But Avo builds successefuly in CentOS…

This is all using the master trunk. Could it be that your branch differs?

No, not so seriously. That change was merged, piece of cmake source which creates symlinks is in the place in cryos/master. I’ve switched to cryos/master qperiodictable and qplotwidget directories are generated when cmake runs as in my branch

Does your filesystem support symbolic links? (don’t expect something exotic on CentOS, though :slight_smile:


Regards,
Konstantin

Yes it does. As a bonafide BSD system should. But this link seem broken.

Louis

Le 13 mai 2010 à 13:04, Konstantin Tokarev a écrit :

Does your filesystem support symbolic links? (don’t expect something exotic on CentOS, though :slight_smile:


Regards,
Konstantin



Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel

Think I found it.

A root directory /include is created by cmake and it should not be possible.

I have deleted it and rerun cmake: it is recreated. And make fails at the same point.

“macbook-de-louis-ricard:build ricard$ ls /include/
qperiodictable qplotwidget
macbook-de-louis-ricard:build ricard$ ls /include/qperiodictable/
elementtranslator.h global.h periodictableview.h
macbook-de-louis-ricard:build ricard$ ls /include/qplotwidget/
global.h plotaxis.h plotobject.h plotpoint.h plotwidget.h”

Louis

Le 13 mai 2010 à 13:04, Konstantin Tokarev a écrit :

Yes, I did.

Just in case my Avo directory was somehow spoiled, I have just cloned
again in a different location. Same cause same effect.

I also checked the CentOS build. The libavogadro/include dir content is the same
as the Mac one. But Avo builds successefuly in CentOS…

This is all using the master trunk. Could it be that your branch differs?

No, not so seriously. That change was merged, piece of cmake source which creates symlinks is in the place in cryos/master. I’ve switched to cryos/master qperiodictable and qplotwidget directories are generated when cmake runs as in my branch

Does your filesystem support symbolic links? (don’t expect something exotic on CentOS, though :slight_smile:


Regards,
Konstantin



Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel

A few more observations.

On the Mac, the qperiodictable and qplotwidget include directories are created at the system
root (maybe because the superuser has admin wrights). It looks like the corresponding
CMakeLists.txt(?) thinks that “libavogadro_BINARY_DIR” is not defined resulting in "mkdir /include/…"
Moving /include/* to build/libavogadro/include and re-running cmake WHITOUT deleting the
build directory allow successful compilation (?).

So I revisited my CentOS build. As I told previously, the two includes are NOT created in libavogadro/include.
But qperiodictable and qplotwidget includes were present in /usr/local/include from previous build.
So, I deleted these and also avogadro include directories in /usr/local/include and ran a fresh
cmake in my build directory. Now, build fails.

So, there clearly is a CMake… files problem that I was unable to trace.

Regards,

Louis

Le 13 mai 2010 à 13:04, Konstantin Tokarev a écrit :

Yes, I did.

Just in case my Avo directory was somehow spoiled, I have just cloned
again in a different location. Same cause same effect.

I also checked the CentOS build. The libavogadro/include dir content is the same
as the Mac one. But Avo builds successefuly in CentOS…

This is all using the master trunk. Could it be that your branch differs?

No, not so seriously. That change was merged, piece of cmake source which creates symlinks is in the place in cryos/master. I’ve switched to cryos/master qperiodictable and qplotwidget directories are generated when cmake runs as in my branch

Does your filesystem support symbolic links? (don’t expect something exotic on CentOS, though :slight_smile:


Regards,
Konstantin



Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel

13.05.10, 20:46, “Louis Ricard” louis.ricard@polytechnique.edu:

A few more observations.

On the Mac, the qperiodictable and qplotwidget include directories are created at the system
root (maybe because the superuser has admin wrights). It looks like the corresponding
CMakeLists.txt(?) thinks that “libavogadro_BINARY_DIR” is not defined resulting in "mkdir /include/…"
Moving /include/* to build/libavogadro/include and re-running cmake WHITOUT deleting the
build directory allow successful compilation (?).

Seems to be empty prefix for creating symlinks… will investigate it


Regards,
Konstantin

On May 13, 2010, at 12:46 PM, Louis Ricard wrote:

A few more observations.

On the Mac, the qperiodictable and qplotwidget include directories are created at the system
root (maybe because the superuser has admin wrights).

Let me check here… You’re building trunk, but not using the “superpackage” build, right? This may be the problem – I don’t test those CMake paths on Mac much, because the auto-builds are superpackages.

Konstantin – that’s the place I’d look – the if(APPLE) paths which might expect a variable set in the superpackage. If I have a chance later, I’ll try to debug that myself.

Thanks,
-Geoff

This is exact. I never use the superpackage build. I tend to build on the Mac
in the Linux way, with OB living in /usr/local, because I use OB to maintain
an Intranet X-ray database. And developpement is mostly carried out on
my home Mac.

But I am puzzled. May be some security issues since a user can create
files in root (?). Will mention this to our security expert.

Louis

Le 13 mai 2010 à 19:46, Geoffrey Hutchison a écrit :

On May 13, 2010, at 12:46 PM, Louis Ricard wrote:

A few more observations.

On the Mac, the qperiodictable and qplotwidget include directories are created at the system
root (maybe because the superuser has admin wrights).

Let me check here… You’re building trunk, but not using the “superpackage” build, right? This may be the problem – I don’t test those CMake paths on Mac much, because the auto-builds are superpackages.

Konstantin – that’s the place I’d look – the if(APPLE) paths which might expect a variable set in the superpackage. If I have a chance later, I’ll try to debug that myself.

Thanks,
-Geoff

On Thu, 13 May 2010 18:46:14 +0200
Louis Ricard louis.ricard@polytechnique.edu wrote:

A few more observations.

On the Mac, the qperiodictable and qplotwidget include directories
are created at the system root (maybe because the superuser has admin
wrights). It looks like the corresponding CMakeLists.txt(?) thinks
that “libavogadro_BINARY_DIR” is not defined resulting in
"mkdir /include/…" Moving /include/* to build/libavogadro/include
and re-running cmake WHITOUT deleting the build directory allow
successful compilation (?).

So I revisited my CentOS build. As I told previously, the two
includes are NOT created in libavogadro/include. But qperiodictable
and qplotwidget includes were present in /usr/local/include from
previous build. So, I deleted these and also avogadro include
directories in /usr/local/include and ran a fresh cmake in my build
directory. Now, build fails.

Can’t reproduce. Works for me as it should.


Regards,
Konstantin